Workflow verification 13/13
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.
Verified within scope
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
EOL record opened, affected customers posted, owner task created; customer notices and marking the record wait for approval
baselineWhat we probed
EOL record opened, affected customers posted, owner task created; customer notices and marking the record wait for approval
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- EOL record opened, affected customers posted, owner task created; customer notices and marking the record wait for approval
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "baseline"
}
}Server returned
HTTP 200
{
"runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "baseline"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 35
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 580
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 783
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "4",
"appliedAt": "2026-10-17T15:49:37.933Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17IO2LDZSC.1OIVJW",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:38.078Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155",
"appliedAt": "2026-10-17T15:49:38.242Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:38.244Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:36.990Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:37.805Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:37.806Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:37.934Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:38.078Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:38.242Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:38.244Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:49:36.990Z",
"updatedAt": "2026-10-17T15:49:38.244Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "570",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"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_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "baseline"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 35
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 580
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 783
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "4",
"appliedAt": "2026-10-17T15:49:37.933Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17IO2LDZSC.1OIVJW",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:38.078Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155",
"appliedAt": "2026-10-17T15:49:38.242Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:38.244Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:36.990Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:37.805Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:37.806Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:37.934Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:38.078Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:38.242Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:38.244Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:49:36.990Z",
"updatedAt": "2026-10-17T15:49:38.244Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "baseline"
}
}Server returned
HTTP 200
{
"runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "baseline"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 35
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 580
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 783
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "4",
"appliedAt": "2026-10-17T15:49:37.933Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17IO2LDZSC.1OIVJW",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:38.078Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155",
"appliedAt": "2026-10-17T15:49:38.242Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:38.244Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:36.990Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:37.805Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:37.806Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:37.934Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:38.078Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:38.242Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:38.244Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:38.792Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:36.990Z",
"updatedAt": "2026-10-17T15:49:38.792Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "570",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"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_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "baseline"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 35
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 580
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 783
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "4",
"appliedAt": "2026-10-17T15:49:37.933Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17IO2LDZSC.1OIVJW",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:38.078Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155",
"appliedAt": "2026-10-17T15:49:38.242Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:38.244Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:36.990Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:37.805Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:37.806Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:37.934Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:38.078Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:38.242Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:38.244Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:38.792Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:36.990Z",
"updatedAt": "2026-10-17T15:49:38.792Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
baselineApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
EOL record opened, affected customers posted, owner task created; customer notices and marking the record wait for approval
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 (12)
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 52,
"current_period_end": 8,
"current_period_start": 13,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 9,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 68,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 91,
"current_period_end": 59,
"current_period_start": 19,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 60,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 61,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 3,
"current_period_end": 29,
"current_period_start": 52,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 33,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 49,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 47,
"current_period_end": 73,
"current_period_start": 68,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 75,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 0,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-57bc3f"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 25,
"number": 4,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:37.991724+00:00",
"updated_at": "2026-10-17T15:49:37.991748+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_965fd8b670a243998733cad7a3",
"client_msg_id": "cli_8cb5a83e53f0404f8a2f964535",
"name": "item-e1362f",
"old_name": "Sample Old",
"parent_user_id": "par_164ec0058915485c8c98e1902e",
"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": "17IO2LDZSC.1OIVJW"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
Approval prepares the notices and labels the record; read-back confirms the label
approve_and_reconcileWhat we probed
Approval prepares the notices and labels the record; read-back confirms the label
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocationsPOST /invocations
Expected vs actual
- Expected
- Approval prepares the notices and labels the record; read-back confirms the label
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
}
}Server returned
HTTP 200
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:40.638Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "596",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
}
}'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": "decide",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}Server returned
HTTP 200
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"appliedAt": "2026-10-17T15:49:40.944Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"appliedAt": "2026-10-17T15:49:41.093Z",
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "5",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:49:41.327Z",
"reconciled": null
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:40.816Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:40.816Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:40.944Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:49:41.093Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:49:41.327Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:49:41.328Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:41.328Z",
"result": "recorded"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "136",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}'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": "reconcile",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c"
}Server returned
HTTP 200
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"appliedAt": "2026-10-17T15:49:40.944Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"appliedAt": "2026-10-17T15:49:41.093Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "5",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:49:41.327Z",
"reconcile": {
"status": "match",
"checkedAt": "2026-10-17T15:49:41.635Z"
},
"reconciled": "match"
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:40.816Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:40.816Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:40.944Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:49:41.093Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:49:41.327Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:49:41.328Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:49:41.635Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:41.635Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "90",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "reconcile",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c"
}'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_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"appliedAt": "2026-10-17T15:49:40.944Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"appliedAt": "2026-10-17T15:49:41.093Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "5",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:49:41.327Z",
"reconcile": {
"status": "match",
"checkedAt": "2026-10-17T15:49:41.635Z"
},
"reconciled": "match"
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:40.816Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:40.816Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:40.944Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:49:41.093Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:49:41.327Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:49:41.328Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:49:41.635Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:41.635Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
06POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
}
}Server returned
HTTP 200
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"appliedAt": "2026-10-17T15:49:40.944Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"appliedAt": "2026-10-17T15:49:41.093Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "5",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:49:41.327Z",
"reconcile": {
"status": "match",
"checkedAt": "2026-10-17T15:49:41.635Z"
},
"reconciled": "match"
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:40.816Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:40.816Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:40.944Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:49:41.093Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:49:41.327Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:49:41.328Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:49:41.635Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
},
{
"at": "2026-10-17T15:49:42.172Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:42.172Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "596",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
}
}'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.
07POST /invocations200
We sent
POST /invocations
{
"action": "decide",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}Server returned
HTTP 200
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"appliedAt": "2026-10-17T15:49:40.944Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"appliedAt": "2026-10-17T15:49:41.093Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:41.519Z"
},
"reconciled": "unverifiable"
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "5",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:49:41.327Z",
"reconcile": {
"status": "match",
"checkedAt": "2026-10-17T15:49:41.635Z"
},
"reconciled": "match"
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:40.816Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:40.816Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:40.944Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:49:41.093Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:49:41.327Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:49:41.328Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:49:41.635Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
},
{
"at": "2026-10-17T15:49:42.172Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:42.400Z",
"result": "already_decided"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "136",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}'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.
08POST /invocations200
We sent
POST /invocations
{
"action": "reconcile",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c"
}Server returned
HTTP 200
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"appliedAt": "2026-10-17T15:49:40.944Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"appliedAt": "2026-10-17T15:49:41.093Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "5",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:49:41.327Z",
"reconcile": {
"status": "match",
"checkedAt": "2026-10-17T15:49:42.734Z"
},
"reconciled": "match"
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:40.816Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:40.816Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:40.944Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:49:41.093Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:49:41.327Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:49:41.328Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:49:41.635Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
},
{
"at": "2026-10-17T15:49:42.172Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:42.734Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:42.734Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "90",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "reconcile",
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c"
}'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.
09GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_and_reconcile"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 481
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 718
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "5",
"appliedAt": "2026-10-17T15:49:40.365Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17149M78FL.C6Y3UB",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:40.505Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "9c8ba20b-863f-494f-b9da-e09e83182dba",
"appliedAt": "2026-10-17T15:49:40.637Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"appliedAt": "2026-10-17T15:49:40.944Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"appliedAt": "2026-10-17T15:49:41.093Z",
"reconcile": {
"status": "unverifiable",
"detail": "no read-back for this action",
"checkedAt": "2026-10-17T15:49:42.604Z"
},
"reconciled": "unverifiable"
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "5",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:49:41.327Z",
"reconcile": {
"status": "match",
"checkedAt": "2026-10-17T15:49:42.734Z"
},
"reconciled": "match"
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:40.638Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:40.816Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:39.519Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:40.240Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:40.241Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:40.365Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:40.505Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:40.638Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:40.816Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:40.944Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:49:41.093Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:49:41.327Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:49:41.328Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:49:41.635Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
},
{
"at": "2026-10-17T15:49:42.172Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:42.734Z",
"msg": "reconciled: {\"unverifiable\":5,\"match\":1}"
}
],
"createdAt": "2026-10-17T15:49:39.519Z",
"updatedAt": "2026-10-17T15:49:42.734Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
approve_and_reconcileApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
Approval prepares the notices and labels the record; read-back confirms the label
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 (18)
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-fe4421"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 82,
"current_period_end": 57,
"current_period_start": 100,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 8,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 81,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 56,
"current_period_end": 70,
"current_period_start": 74,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 84,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 40,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 58,
"current_period_end": 70,
"current_period_start": 62,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 53,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 18,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 80,
"current_period_end": 25,
"current_period_start": 69,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 75,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 19,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 46,
"number": 5,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:40.422827+00:00",
"updated_at": "2026-10-17T15:49:40.422865+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_861597944bff4d288dcda20060",
"client_msg_id": "cli_a2796f28bc8e480f921f153baa",
"name": "item-6a7574",
"old_name": "Sample Old",
"parent_user_id": "par_ac2bd03d6dab4472819421498e",
"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": "17149M78FL.C6Y3UB"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "9c8ba20b-863f-494f-b9da-e09e83182dba"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
gmail · POST /gmail/v1/users/me/drafts · HTTP 200
We sent
POST /gmail/v1/users/me/drafts
{
"message": {
"raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDw0MTIyMzc3M2Q4ZGI5NmY4LnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n"
},
"user_id": "me"
}Server returned
HTTP 200
{
"id": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f",
"message": {
"raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDw0MTIyMzc3M2Q4ZGI5NmY4LnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n"
},
"user_id": "me"
}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/76b45b8bd0/gmail/v1/users/me/drafts
{
"host": "fetchsandbox.com",
"content-length": "762",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"message": {
"raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDw0MTIyMzc3M2Q4ZGI5NmY4LnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n"
},
"user_id": "me"
}'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.
gmail · POST /gmail/v1/users/me/drafts · HTTP 200
We sent
POST /gmail/v1/users/me/drafts
{
"message": {
"raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPGQ5OThlMGM0ODFiNGIwNTcucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw"
},
"user_id": "me"
}Server returned
HTTP 200
{
"id": "bcd93b24-e7b6-4609-82d0-6a9226d44f97",
"message": {
"raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPGQ5OThlMGM0ODFiNGIwNTcucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw"
},
"user_id": "me"
}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/76b45b8bd0/gmail/v1/users/me/drafts
{
"host": "fetchsandbox.com",
"content-length": "768",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"message": {
"raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPGQ5OThlMGM0ODFiNGIwNTcucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw"
},
"user_id": "me"
}'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.
github · GET /repos/acme/plm/issues/5 · HTTP 200
We sent
GET /repos/acme/plm/issues/5
No body shown for this read.
Server returned
HTTP 200
{
"id": 46,
"number": 5,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:40.422827+00:00",
"updated_at": "2026-10-17T15:49:40.422865+00:00",
"closed_at": null
}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/f58e5f23dc/repos/acme/plm/issues/5
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
github · PATCH /repos/acme/plm/issues/5 · HTTP 200
We sent
PATCH /repos/acme/plm/issues/5
{
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
}Server returned
HTTP 200
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life",
"customers-notified"
],
"state": "open",
"owner": "acme",
"repo": "plm",
"number": 5,
"id": 46,
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:40.422827+00:00",
"updated_at": "2026-10-17T15:49:40.422865+00:00",
"closed_at": null
}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/f58e5f23dc/repos/acme/plm/issues/5
{
"host": "fetchsandbox.com",
"content-length": "53",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request PATCH 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
}'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.
github · GET /repos/acme/plm/issues/5 · HTTP 200
We sent
GET /repos/acme/plm/issues/5
No body shown for this read.
Server returned
HTTP 200
{
"id": 46,
"number": 5,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life",
"customers-notified"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:40.422827+00:00",
"updated_at": "2026-10-17T15:49:40.422865+00:00",
"closed_at": null
}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/f58e5f23dc/repos/acme/plm/issues/5
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
github · GET /repos/acme/plm/issues/5 · HTTP 200
We sent
GET /repos/acme/plm/issues/5
No body shown for this read.
Server returned
HTTP 200
{
"id": 46,
"number": 5,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life",
"customers-notified"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:40.422827+00:00",
"updated_at": "2026-10-17T15:49:40.422865+00:00",
"closed_at": null
}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/f58e5f23dc/repos/acme/plm/issues/5
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
If the named change record can't be read, nothing is posted or prepared
unreadable_record_sends_nothingWhat we probed
If the named change record can't be read, nothing is posted or prepared
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- If the named change record can't be read, nothing is posted or prepared
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
],
"issueNumber": 987654
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
}
}Server returned
HTTP 200
{
"runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "failed",
"error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found",
"errorCode": "github:EGeneral:Not found",
"durationMs": 425
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 442
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 664
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": true
},
"events": [
{
"at": "2026-10-17T15:49:43.395Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:44.064Z",
"msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:44.066Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:44.067Z",
"msg": "done (partial)"
}
],
"createdAt": "2026-10-17T15:49:43.395Z",
"updatedAt": "2026-10-17T15:49:44.067Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "637",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
],
"issueNumber": 987654
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
}
}'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_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "failed",
"error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found",
"errorCode": "github:EGeneral:Not found",
"durationMs": 425
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 442
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 664
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": true
},
"events": [
{
"at": "2026-10-17T15:49:43.395Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:44.064Z",
"msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:44.066Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:44.067Z",
"msg": "done (partial)"
}
],
"createdAt": "2026-10-17T15:49:43.395Z",
"updatedAt": "2026-10-17T15:49:44.067Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
],
"issueNumber": 987654
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
}
}Server returned
HTTP 200
{
"runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "failed",
"error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found",
"errorCode": "github:EGeneral:Not found",
"durationMs": 425
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 442
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 664
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": true
},
"events": [
{
"at": "2026-10-17T15:49:43.395Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:44.064Z",
"msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:44.066Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:44.067Z",
"msg": "done (partial)"
},
{
"at": "2026-10-17T15:49:44.532Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:43.395Z",
"updatedAt": "2026-10-17T15:49:44.532Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "637",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
],
"issueNumber": 987654
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
}
}'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_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unreadable_record_sends_nothing"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "failed",
"error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found",
"errorCode": "github:EGeneral:Not found",
"durationMs": 425
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 442
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 664
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": true
},
"events": [
{
"at": "2026-10-17T15:49:43.395Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:44.064Z",
"msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:44.066Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:44.067Z",
"msg": "done (partial)"
},
{
"at": "2026-10-17T15:49:44.532Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:43.395Z",
"updatedAt": "2026-10-17T15:49:44.532Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
unreadable_record_sends_nothingApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
If the named change record can't be read, nothing is posted or prepared
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 (10)
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 23,
"current_period_end": 16,
"current_period_start": 11,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 70,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 5,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 76,
"current_period_end": 36,
"current_period_start": 96,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 88,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 65,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
github · GET /repos/acme/plm/issues/987654 · HTTP 404
We sent
GET /repos/acme/plm/issues/987654
No body shown for this read.
Server returned
HTTP 404
{
"errors": [
{
"status": "404",
"code": "EGeneral:Not found",
"detail": "Resource 987654 not found"
}
]
}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/f58e5f23dc/repos/acme/plm/issues/987654
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/987654' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-79119a"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 69,
"current_period_end": 86,
"current_period_start": 33,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 24,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 52,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 49,
"current_period_end": 18,
"current_period_start": 83,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 84,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 72,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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 unknown product finds no customers and prepares nothing
unknown_product_sends_nothingWhat we probed
An unknown product finds no customers and prepares nothing
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- An unknown product finds no customers and prepares nothing
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
}
}Server returned
HTTP 200
{
"runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing",
"errorCode": "stripe:resource_missing",
"durationMs": 436
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/0 owner(s) found",
"durationMs": 452
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:45.252Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:45.708Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok"
},
{
"at": "2026-10-17T15:49:45.709Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:45.710Z",
"msg": "done (partial)"
}
],
"createdAt": "2026-10-17T15:49:45.252Z",
"updatedAt": "2026-10-17T15:49:45.710Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "612",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
}
}'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_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing",
"errorCode": "stripe:resource_missing",
"durationMs": 436
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/0 owner(s) found",
"durationMs": 452
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:45.252Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:45.708Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok"
},
{
"at": "2026-10-17T15:49:45.709Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:45.710Z",
"msg": "done (partial)"
}
],
"createdAt": "2026-10-17T15:49:45.252Z",
"updatedAt": "2026-10-17T15:49:45.710Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
}
}Server returned
HTTP 200
{
"runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing",
"errorCode": "stripe:resource_missing",
"durationMs": 436
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/0 owner(s) found",
"durationMs": 452
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:45.252Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:45.708Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok"
},
{
"at": "2026-10-17T15:49:45.709Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:45.710Z",
"msg": "done (partial)"
},
{
"at": "2026-10-17T15:49:46.190Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:45.252Z",
"updatedAt": "2026-10-17T15:49:46.190Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "612",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
}
}'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_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "unknown_product_sends_nothing"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing",
"errorCode": "stripe:resource_missing",
"durationMs": 436
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/0 owner(s) found",
"durationMs": 452
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_DoesNotExist",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:45.252Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:45.708Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok"
},
{
"at": "2026-10-17T15:49:45.709Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:49:45.710Z",
"msg": "done (partial)"
},
{
"at": "2026-10-17T15:49:46.190Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:45.252Z",
"updatedAt": "2026-10-17T15:49:46.190Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
unknown_product_sends_nothingApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
An unknown product finds no customers and prepares nothing
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 (7)
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_DoesNotExist · HTTP 404
We sent
GET /v1/products/prod_DoesNotExist
No body shown for this read.
Server returned
HTTP 404
{
"error": {
"type": "invalid_request_error",
"code": "resource_missing",
"doc_url": "https://stripe.com/docs/error-codes/resource-missing",
"message": "Resource prod_DoesNotExist not found"
}
}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/91e96e7817/v1/products/prod_DoesNotExist
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_DoesNotExist' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 24,
"current_period_end": 5,
"current_period_start": 16,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 54,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 96,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 82,
"current_period_end": 9,
"current_period_start": 81,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 50,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 1,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 49,
"current_period_end": 12,
"current_period_start": 32,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 47,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 30,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 21,
"current_period_end": 12,
"current_period_start": 11,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 99,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 56,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 non-approver cannot release customer notices
approve_by_stranger_refusedWhat we probed
A non-approver cannot release customer notices
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocations
Expected vs actual
- Expected
- A non-approver cannot release customer notices
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
}
}Server returned
HTTP 200
{
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 5
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 1077
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 1324
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "6",
"appliedAt": "2026-10-17T15:49:48.417Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "179TC5GN44.JJ98C4",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:48.533Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d",
"appliedAt": "2026-10-17T15:49:48.666Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:48.668Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:46.974Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:48.303Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:48.304Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:48.418Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:48.533Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:48.667Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:48.668Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:49:46.974Z",
"updatedAt": "2026-10-17T15:49:48.668Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "608",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
}
}'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 /invocations403
We sent
POST /invocations
{
"action": "decide",
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_INTERN"
}Server returned
HTTP 403
{
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 5
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 1077
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 1324
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "6",
"appliedAt": "2026-10-17T15:49:48.417Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "179TC5GN44.JJ98C4",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:48.533Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d",
"appliedAt": "2026-10-17T15:49:48.666Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:48.668Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:46.974Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:48.303Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:48.304Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:48.418Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:48.533Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:48.667Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:48.668Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:48.857Z",
"msg": "decision by U_INTERN refused: not an approver"
}
],
"createdAt": "2026-10-17T15:49:46.974Z",
"updatedAt": "2026-10-17T15:49:48.857Z",
"result": "forbidden"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "134",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_INTERN"
}'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_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 5
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 1077
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 1324
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "6",
"appliedAt": "2026-10-17T15:49:48.417Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "179TC5GN44.JJ98C4",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:48.533Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d",
"appliedAt": "2026-10-17T15:49:48.666Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:48.668Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:46.974Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:48.303Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:48.304Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:48.418Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:48.533Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:48.667Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:48.668Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:48.857Z",
"msg": "decision by U_INTERN refused: not an approver"
}
],
"createdAt": "2026-10-17T15:49:46.974Z",
"updatedAt": "2026-10-17T15:49:48.857Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
}
}Server returned
HTTP 200
{
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 5
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 1077
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 1324
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "6",
"appliedAt": "2026-10-17T15:49:48.417Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "179TC5GN44.JJ98C4",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:48.533Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d",
"appliedAt": "2026-10-17T15:49:48.666Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:48.668Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:46.974Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:48.303Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:48.304Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:48.418Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:48.533Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:48.667Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:48.668Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:48.857Z",
"msg": "decision by U_INTERN refused: not an approver"
},
{
"at": "2026-10-17T15:49:49.365Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:46.974Z",
"updatedAt": "2026-10-17T15:49:49.365Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "608",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
}
}'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 /invocations403
We sent
POST /invocations
{
"action": "decide",
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_INTERN"
}Server returned
HTTP 403
{
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 5
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 1077
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 1324
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "6",
"appliedAt": "2026-10-17T15:49:48.417Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "179TC5GN44.JJ98C4",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:48.533Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d",
"appliedAt": "2026-10-17T15:49:48.666Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:48.668Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:46.974Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:48.303Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:48.304Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:48.418Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:48.533Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:48.667Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:48.668Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:48.857Z",
"msg": "decision by U_INTERN refused: not an approver"
},
{
"at": "2026-10-17T15:49:49.365Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:49.550Z",
"msg": "decision by U_INTERN refused: not an approver"
}
],
"createdAt": "2026-10-17T15:49:46.974Z",
"updatedAt": "2026-10-17T15:49:49.550Z",
"result": "forbidden"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "134",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_INTERN"
}'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_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "approve_by_stranger_refused"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 5
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 1077
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 1324
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "6",
"appliedAt": "2026-10-17T15:49:48.417Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "179TC5GN44.JJ98C4",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:48.533Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d",
"appliedAt": "2026-10-17T15:49:48.666Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:48.668Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:46.974Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:48.303Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:48.304Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:48.418Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:48.533Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:48.667Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:48.668Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:48.857Z",
"msg": "decision by U_INTERN refused: not an approver"
},
{
"at": "2026-10-17T15:49:49.365Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:49.550Z",
"msg": "decision by U_INTERN refused: not an approver"
}
],
"createdAt": "2026-10-17T15:49:46.974Z",
"updatedAt": "2026-10-17T15:49:49.550Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
approve_by_stranger_refusedApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
A non-approver cannot release customer notices
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 (12)
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-d0e1dd"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 58,
"current_period_end": 59,
"current_period_start": 83,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 69,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 80,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 86,
"current_period_end": 24,
"current_period_start": 5,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 85,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 24,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 51,
"current_period_end": 12,
"current_period_start": 17,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 8,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 58,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 98,
"current_period_end": 88,
"current_period_start": 5,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 44,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 67,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 44,
"number": 6,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:48.474835+00:00",
"updated_at": "2026-10-17T15:49:48.474874+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_343926311fe04f8d95b4cced31",
"client_msg_id": "cli_77c93b59d6224865957232ac05",
"name": "item-580a0e",
"old_name": "Sample Old",
"parent_user_id": "par_f784e40c5a6f420e82a2895947",
"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": "179TC5GN44.JJ98C4"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
Rejecting prepares no customer notices
rejectWhat we probed
Rejecting prepares no customer notices
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocations
Expected vs actual
- Expected
- Rejecting prepares no customer notices
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
}
}Server returned
HTTP 200
{
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 553
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 767
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "7",
"appliedAt": "2026-10-17T15:49:51.136Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "1733SJWUZ5.DQ6N4T",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:51.255Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "a560183a-e8fc-459a-8e92-c142c5e7849d",
"appliedAt": "2026-10-17T15:49:51.387Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:51.388Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:50.248Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:51.020Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:51.021Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:51.136Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:51.255Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:51.387Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:51.388Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:49:50.248Z",
"updatedAt": "2026-10-17T15:49:51.388Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "566",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
}
}'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": "decide",
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "reject",
"userId": "U_VP_ENGINEERING"
}Server returned
HTTP 200
{
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "REJECTED",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 553
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 767
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "7",
"appliedAt": "2026-10-17T15:49:51.136Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "1733SJWUZ5.DQ6N4T",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:51.255Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "a560183a-e8fc-459a-8e92-c142c5e7849d",
"appliedAt": "2026-10-17T15:49:51.387Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "rejected",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 3
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:51.388Z",
"decision": "reject",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:51.577Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:50.248Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:51.020Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:51.021Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:51.136Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:51.255Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:51.387Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:51.388Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:51.577Z",
"msg": "rejected by U_VP_ENGINEERING"
}
],
"createdAt": "2026-10-17T15:49:50.248Z",
"updatedAt": "2026-10-17T15:49:51.577Z",
"result": "recorded"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "120",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "reject",
"userId": "U_VP_ENGINEERING"
}'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_851466eb937c45e282a501a9e2697d6c/cases/reject/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "REJECTED",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 553
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 767
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "7",
"appliedAt": "2026-10-17T15:49:51.136Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "1733SJWUZ5.DQ6N4T",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:51.255Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "a560183a-e8fc-459a-8e92-c142c5e7849d",
"appliedAt": "2026-10-17T15:49:51.387Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "rejected",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 3
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:51.388Z",
"decision": "reject",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:51.577Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:50.248Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:51.020Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:51.021Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:51.136Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:51.255Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:51.387Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:51.388Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:51.577Z",
"msg": "rejected by U_VP_ENGINEERING"
}
],
"createdAt": "2026-10-17T15:49:50.248Z",
"updatedAt": "2026-10-17T15:49:51.577Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
}
}Server returned
HTTP 200
{
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "REJECTED",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 553
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 767
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "7",
"appliedAt": "2026-10-17T15:49:51.136Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "1733SJWUZ5.DQ6N4T",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:51.255Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "a560183a-e8fc-459a-8e92-c142c5e7849d",
"appliedAt": "2026-10-17T15:49:51.387Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "rejected",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 3
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:51.388Z",
"decision": "reject",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:51.577Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:50.248Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:51.020Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:51.021Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:51.136Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:51.255Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:51.387Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:51.388Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:51.577Z",
"msg": "rejected by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:52.081Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:50.248Z",
"updatedAt": "2026-10-17T15:49:52.081Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "566",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
}
}'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": "decide",
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "reject",
"userId": "U_VP_ENGINEERING"
}Server returned
HTTP 200
{
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "REJECTED",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 553
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 767
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "7",
"appliedAt": "2026-10-17T15:49:51.136Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "1733SJWUZ5.DQ6N4T",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:51.255Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "a560183a-e8fc-459a-8e92-c142c5e7849d",
"appliedAt": "2026-10-17T15:49:51.387Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "rejected",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 3
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:51.388Z",
"decision": "reject",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:51.577Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:50.248Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:51.020Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:51.021Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:51.136Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:51.255Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:51.387Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:51.388Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:51.577Z",
"msg": "rejected by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:52.081Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:50.248Z",
"updatedAt": "2026-10-17T15:49:52.292Z",
"result": "already_decided"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "120",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "reject",
"userId": "U_VP_ENGINEERING"
}'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_851466eb937c45e282a501a9e2697d6c/cases/reject/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "reject-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "REJECTED",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "reject"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 553
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 767
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "7",
"appliedAt": "2026-10-17T15:49:51.136Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "1733SJWUZ5.DQ6N4T",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:51.255Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "a560183a-e8fc-459a-8e92-c142c5e7849d",
"appliedAt": "2026-10-17T15:49:51.387Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "rejected",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "rejected",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 3
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:51.388Z",
"decision": "reject",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:49:51.577Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:50.248Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:51.020Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:51.021Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:51.136Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:51.255Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:51.387Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:51.388Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:51.577Z",
"msg": "rejected by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:49:52.081Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:50.248Z",
"updatedAt": "2026-10-17T15:49:52.292Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
rejectApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
Rejecting prepares no customer notices
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 (12)
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 62,
"current_period_end": 29,
"current_period_start": 13,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 18,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 20,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 32,
"current_period_end": 50,
"current_period_start": 39,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 17,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 34,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-441b21"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 59,
"current_period_end": 2,
"current_period_start": 78,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 0,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 100,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 45,
"current_period_end": 40,
"current_period_start": 49,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 30,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 28,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 98,
"number": 7,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:51.190940+00:00",
"updated_at": "2026-10-17T15:49:51.190963+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_040660b48f504333a73758f1b8",
"client_msg_id": "cli_111ce4a0cb8545f4b6d9b3e756",
"name": "item-10ffa1",
"old_name": "Sample Old",
"parent_user_id": "par_43a8674b8f9d4420b04fcbb6d3",
"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": "1733SJWUZ5.DQ6N4T"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "a560183a-e8fc-459a-8e92-c142c5e7849d"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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 malformed repository name is rejected
invalid_input_rejectedWhat we probed
A malformed repository name is rejected
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- A malformed repository name is rejected
- Actual
- expected exactly 0, found 0; stable under 2 repeats (0)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/invalid_input_rejected/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/invalid_input_rejected/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "not a repo",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "invalid_input_rejected"
}
}Server returned
HTTP 400
{
"error": "invalid input",
"issues": [
"repo: Invalid string: must match pattern /^[\\w.-]+\\/[\\w.-]+$/"
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "600",
"content-type": "application/json"
}{
"content-type": "application/json",
"content-length": "103"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "invalid-input-rejected-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "not a repo",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"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_851466eb937c45e282a501a9e2697d6c/cases/invalid_input_rejected/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/invalid_input_rejected/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "not a repo",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "invalid_input_rejected"
}
}Server returned
HTTP 400
{
"error": "invalid input",
"issues": [
"repo: Invalid string: must match pattern /^[\\w.-]+\\/[\\w.-]+$/"
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "600",
"content-type": "application/json"
}{
"content-type": "application/json",
"content-length": "103"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "invalid-input-rejected-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "not a repo",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"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_851466eb937c45e282a501a9e2697d6c/cases/invalid_input_rejected/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/invalid_input_rejected/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
invalid_input_rejectedApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
A malformed repository name is rejected
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.
A re-delivered change does not open a second record
duplicate_startWhat we probed
A re-delivered change does not open a second record
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocations
Expected vs actual
- Expected
- A re-delivered change does not open a second record
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}Server returned
HTTP 200
{
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 6
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 468
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 682
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "8",
"appliedAt": "2026-10-17T15:49:54.942Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17D6D7STPF.EQ1EA9",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:55.056Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "cefc6e69-42f9-489f-83df-024b9b08e38d",
"appliedAt": "2026-10-17T15:49:55.190Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:55.191Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:54.134Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:54.822Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:54.824Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:54.943Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:55.057Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:55.190Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:55.191Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:49:54.134Z",
"updatedAt": "2026-10-17T15:49:55.191Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "584",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}'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": "start",
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}Server returned
HTTP 200
{
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 6
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 468
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 682
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "8",
"appliedAt": "2026-10-17T15:49:54.942Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17D6D7STPF.EQ1EA9",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:55.056Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "cefc6e69-42f9-489f-83df-024b9b08e38d",
"appliedAt": "2026-10-17T15:49:55.190Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:55.191Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:54.134Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:54.822Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:54.824Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:54.943Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:55.057Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:55.190Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:55.191Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:55.378Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:54.134Z",
"updatedAt": "2026-10-17T15:49:55.378Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "584",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}'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_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 6
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 468
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 682
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "8",
"appliedAt": "2026-10-17T15:49:54.942Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17D6D7STPF.EQ1EA9",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:55.056Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "cefc6e69-42f9-489f-83df-024b9b08e38d",
"appliedAt": "2026-10-17T15:49:55.190Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:55.191Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:54.134Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:54.822Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:54.824Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:54.943Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:55.057Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:55.190Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:55.191Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:55.378Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:54.134Z",
"updatedAt": "2026-10-17T15:49:55.378Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}Server returned
HTTP 200
{
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
},
"duplicateStarts": 2,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 6
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 468
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 682
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "8",
"appliedAt": "2026-10-17T15:49:54.942Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17D6D7STPF.EQ1EA9",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:55.056Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "cefc6e69-42f9-489f-83df-024b9b08e38d",
"appliedAt": "2026-10-17T15:49:55.190Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:55.191Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:54.134Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:54.822Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:54.824Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:54.943Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:55.057Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:55.190Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:55.191Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:55.378Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:55.850Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:54.134Z",
"updatedAt": "2026-10-17T15:49:55.850Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "584",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}'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": "start",
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}Server returned
HTTP 200
{
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
},
"duplicateStarts": 3,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 6
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 468
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 682
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "8",
"appliedAt": "2026-10-17T15:49:54.942Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17D6D7STPF.EQ1EA9",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:55.056Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "cefc6e69-42f9-489f-83df-024b9b08e38d",
"appliedAt": "2026-10-17T15:49:55.190Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:55.191Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:54.134Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:54.822Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:54.824Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:54.943Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:55.057Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:55.190Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:55.191Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:55.378Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:55.850Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:56.058Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:54.134Z",
"updatedAt": "2026-10-17T15:49:56.058Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "584",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
}
}'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_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "duplicate_start"
},
"duplicateStarts": 3,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 6
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 468
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 682
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "8",
"appliedAt": "2026-10-17T15:49:54.942Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17D6D7STPF.EQ1EA9",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:55.056Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "cefc6e69-42f9-489f-83df-024b9b08e38d",
"appliedAt": "2026-10-17T15:49:55.190Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:55.191Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:54.134Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:54.822Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:54.824Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:54.943Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:55.057Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:55.190Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:55.191Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:55.378Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:55.850Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:56.058Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:54.134Z",
"updatedAt": "2026-10-17T15:49:56.058Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
duplicate_startApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
A re-delivered change does not open a second record
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 (12)
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-76b529"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 21,
"current_period_end": 69,
"current_period_start": 69,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 43,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 84,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 96,
"current_period_end": 70,
"current_period_start": 79,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 28,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 40,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 15,
"current_period_end": 84,
"current_period_start": 3,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 27,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 91,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 1,
"current_period_end": 3,
"current_period_start": 15,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 90,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 49,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 25,
"number": 8,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:54.993505+00:00",
"updated_at": "2026-10-17T15:49:54.993534+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_b1c8c340eab64d80b15a622f20",
"client_msg_id": "cli_7efe7d6e1ebb4c11b4078a4c01",
"name": "item-e87dae",
"old_name": "Sample Old",
"parent_user_id": "par_741ba0bae69f47d6bc420a8264",
"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": "17D6D7STPF.EQ1EA9"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "cefc6e69-42f9-489f-83df-024b9b08e38d"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
Four more simultaneous deliveries open one record
concurrent_startWhat we probed
Four more simultaneous deliveries open one record
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocations· 4 concurrent calls, not sequential retries.
Expected vs actual
- Expected
- Four more simultaneous deliveries open one record
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:57.725Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 2,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:58.091Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:57.977Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 4,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:58.304Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 3,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:58.187Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 4,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:58.304Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
08POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 5,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.848Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:58.848Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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.
09POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 9,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.848Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.087Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.184Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.298Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.393Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:59.393Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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.
10POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 8,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.848Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.087Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.184Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.298Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:59.298Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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.
11POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 7,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.848Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.087Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.184Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:59.184Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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.
12POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}Server returned
HTTP 200
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 6,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.848Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.087Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:59.087Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "586",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
}
}'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.
13GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "concurrent_start"
},
"duplicateStarts": 9,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 528
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 642
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "9",
"appliedAt": "2026-10-17T15:49:57.476Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17WDL8ESO7.WEWGM2",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:49:57.589Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc",
"appliedAt": "2026-10-17T15:49:57.724Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:49:57.725Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:49:56.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:49:57.363Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:49:57.364Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:49:57.476Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:49:57.589Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:49:57.724Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:49:57.725Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:49:57.977Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.091Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.187Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.304Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:58.848Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.087Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.184Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.298Z",
"msg": "duplicate start ignored"
},
{
"at": "2026-10-17T15:49:59.393Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:49:56.717Z",
"updatedAt": "2026-10-17T15:49:59.393Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
concurrent_startApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
Four more simultaneous deliveries open one record
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 (12)
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-dae6f9"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 46,
"current_period_end": 20,
"current_period_start": 86,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 2,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 59,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 91,
"current_period_end": 38,
"current_period_start": 7,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 11,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 37,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 33,
"current_period_end": 13,
"current_period_start": 38,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 60,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 32,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 21,
"current_period_end": 55,
"current_period_start": 4,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 11,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 28,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 94,
"number": 9,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:49:57.534049+00:00",
"updated_at": "2026-10-17T15:49:57.534073+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_82264b74064b448fb0c22b368b",
"client_msg_id": "cli_3df0fb695846463fbac55c4a7f",
"name": "item-1bfa52",
"old_name": "Sample Old",
"parent_user_id": "par_f0ac0196a95d45e0bace206f41",
"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": "17WDL8ESO7.WEWGM2"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
GitHub auth failure fails opening the record; internal follow-up continues
github_auth_failureWhat we probed
GitHub auth failure fails opening the record; internal follow-up continues
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
Declared github fault: auth_failure.
POST /invocations
Expected vs actual
- Expected
- GitHub auth failure fails opening the record; internal follow-up continues
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
}
}Server returned
HTTP 200
{
"runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 2661
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 2944
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "failed",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED",
"errorCode": "github:UNAUTHORIZED",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17DJRKRAH4.7WLT44",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:03.596Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7",
"appliedAt": "2026-10-17T15:50:03.901Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:03.902Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:00.343Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:03.291Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:03.292Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:03.429Z",
"msg": "github.open_change_record: failed (github:UNAUTHORIZED)"
},
{
"at": "2026-10-17T15:50:03.596Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:03.901Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:03.902Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:50:00.343Z",
"updatedAt": "2026-10-17T15:50:03.902Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "592",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
}
}'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.
03github · POST /repos/acme/plm/issues401
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
]
}Server returned
HTTP 401
{
"errors": [
{
"status": "401",
"code": "UNAUTHORIZED",
"detail": "Bad credentials. The token used is invalid or has been revoked."
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST '<GITHUB_TWIN_BASE_URL>/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
]
}'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_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 2661
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 2944
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "failed",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED",
"errorCode": "github:UNAUTHORIZED",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17DJRKRAH4.7WLT44",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:03.596Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7",
"appliedAt": "2026-10-17T15:50:03.901Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:03.902Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:00.343Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:03.291Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:03.292Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:03.429Z",
"msg": "github.open_change_record: failed (github:UNAUTHORIZED)"
},
{
"at": "2026-10-17T15:50:03.596Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:03.901Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:03.902Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:50:00.343Z",
"updatedAt": "2026-10-17T15:50:03.902Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
}
}Server returned
HTTP 200
{
"runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 2661
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 2944
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "failed",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED",
"errorCode": "github:UNAUTHORIZED",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17DJRKRAH4.7WLT44",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:03.596Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7",
"appliedAt": "2026-10-17T15:50:03.901Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:03.902Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:00.343Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:03.291Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:03.292Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:03.429Z",
"msg": "github.open_change_record: failed (github:UNAUTHORIZED)"
},
{
"at": "2026-10-17T15:50:03.596Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:03.901Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:03.902Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:04.498Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:00.343Z",
"updatedAt": "2026-10-17T15:50:04.498Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "592",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
}
}'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.
06GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "github_auth_failure"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 2661
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 2944
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "failed",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED",
"errorCode": "github:UNAUTHORIZED",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17DJRKRAH4.7WLT44",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:03.596Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7",
"appliedAt": "2026-10-17T15:50:03.901Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:03.902Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:00.343Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:03.291Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:03.292Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:03.429Z",
"msg": "github.open_change_record: failed (github:UNAUTHORIZED)"
},
{
"at": "2026-10-17T15:50:03.596Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:03.901Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:03.902Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:04.498Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:00.343Z",
"updatedAt": "2026-10-17T15:50:04.498Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
github_auth_failureApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
GitHub auth failure fails opening the record; internal follow-up continues
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 (12)
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-6e876e"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 9,
"current_period_end": 4,
"current_period_start": 59,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 35,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 70,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 80,
"current_period_end": 61,
"current_period_start": 56,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 70,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 60,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 82,
"current_period_end": 0,
"current_period_start": 97,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 12,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 29,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 14,
"current_period_end": 25,
"current_period_start": 94,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 11,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 70,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 401
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
]
}Server returned
HTTP 401
{
"errors": [
{
"status": "401",
"code": "UNAUTHORIZED",
"detail": "Bad credentials. The token used is invalid or has been revoked."
}
]
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
]
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_031575aef6c04cf1aac2c647d2",
"client_msg_id": "cli_689757e5293743459da0f56d6c",
"name": "item-a94c54",
"old_name": "Sample Old",
"parent_user_id": "par_602a8f8b792f4a6fb2bb746f45",
"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": "17DJRKRAH4.7WLT44"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
Asana rate limiting fails the owner task only
asana_rate_limitedWhat we probed
Asana rate limiting fails the owner task only
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
Declared asana fault: rate_limited.
POST /invocations
Expected vs actual
- Expected
- Asana rate limiting fails the owner task only
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
}
}Server returned
HTTP 200
{
"runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 485
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 708
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "10",
"appliedAt": "2026-10-17T15:50:06.099Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17I0OTNEPG.KGTLKS",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:06.222Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "failed",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded",
"errorCode": "asana:rate_limit_exceeded",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:07.117Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:05.260Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:05.985Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:05.987Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:06.099Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:06.222Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:07.116Z",
"msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)"
},
{
"at": "2026-10-17T15:50:07.117Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:50:05.260Z",
"updatedAt": "2026-10-17T15:50:07.117Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "590",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
}
}'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.
03asana · POST /tasks429
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 429
{
"errors": [
{
"status": "429",
"code": "rate_limit_exceeded",
"detail": "Too many requests. Please retry after 60 seconds."
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST '<ASANA_TWIN_BASE_URL>/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
04asana · POST /tasks429
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 429
{
"errors": [
{
"status": "429",
"code": "rate_limit_exceeded",
"detail": "Too many requests. Please retry after 60 seconds."
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST '<ASANA_TWIN_BASE_URL>/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
05asana · POST /tasks429
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 429
{
"errors": [
{
"status": "429",
"code": "rate_limit_exceeded",
"detail": "Too many requests. Please retry after 60 seconds."
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST '<ASANA_TWIN_BASE_URL>/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
06GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 485
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 708
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "10",
"appliedAt": "2026-10-17T15:50:06.099Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17I0OTNEPG.KGTLKS",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:06.222Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "failed",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded",
"errorCode": "asana:rate_limit_exceeded",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:07.117Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:05.260Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:05.985Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:05.987Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:06.099Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:06.222Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:07.116Z",
"msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)"
},
{
"at": "2026-10-17T15:50:07.117Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:50:05.260Z",
"updatedAt": "2026-10-17T15:50:07.117Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
07POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
}
}Server returned
HTTP 200
{
"runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 485
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 708
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "10",
"appliedAt": "2026-10-17T15:50:06.099Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17I0OTNEPG.KGTLKS",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:06.222Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "failed",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded",
"errorCode": "asana:rate_limit_exceeded",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:07.117Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:05.260Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:05.985Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:05.987Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:06.099Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:06.222Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:07.116Z",
"msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)"
},
{
"at": "2026-10-17T15:50:07.117Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:07.615Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:05.260Z",
"updatedAt": "2026-10-17T15:50:07.615Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "590",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
}
}'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.
08GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "asana_rate_limited"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 485
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 708
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "10",
"appliedAt": "2026-10-17T15:50:06.099Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17I0OTNEPG.KGTLKS",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:06.222Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "failed",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded",
"errorCode": "asana:rate_limit_exceeded",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 2,
"failed": 1,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:07.117Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:05.260Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:05.985Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:05.987Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:06.099Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:06.222Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:07.116Z",
"msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)"
},
{
"at": "2026-10-17T15:50:07.117Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:07.615Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:05.260Z",
"updatedAt": "2026-10-17T15:50:07.615Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
asana_rate_limitedApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
Asana rate limiting fails the owner task only
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 (14)
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 29,
"current_period_end": 38,
"current_period_start": 50,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 58,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 91,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 18,
"current_period_end": 40,
"current_period_start": 60,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 21,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 44,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-3f39cd"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 7,
"current_period_end": 5,
"current_period_start": 74,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 96,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 47,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 48,
"current_period_end": 90,
"current_period_start": 82,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 19,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 41,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 34,
"number": 10,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:50:06.157923+00:00",
"updated_at": "2026-10-17T15:50:06.157948+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_5d20bded5325422ab15133b60e",
"client_msg_id": "cli_7aab911ab8a24367aca1663899",
"name": "item-373ef0",
"old_name": "Sample Old",
"parent_user_id": "par_65398f75cde5497c9eb2db0ddb",
"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": "17I0OTNEPG.KGTLKS"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 429
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 429
{
"errors": [
{
"status": "429",
"code": "rate_limit_exceeded",
"detail": "Too many requests. Please retry after 60 seconds."
}
]
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
asana · POST /tasks · HTTP 429
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 429
{
"errors": [
{
"status": "429",
"code": "rate_limit_exceeded",
"detail": "Too many requests. Please retry after 60 seconds."
}
]
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
asana · POST /tasks · HTTP 429
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 429
{
"errors": [
{
"status": "429",
"code": "rate_limit_exceeded",
"detail": "Too many requests. Please retry after 60 seconds."
}
]
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
Without Stripe the affected customers are unknown, so nothing is prepared
stripe_auth_failureWhat we probed
Without Stripe the affected customers are unknown, so nothing is prepared
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
Declared stripe fault: auth_failure.
POST /invocations
Expected vs actual
- Expected
- Without Stripe the affected customers are unknown, so nothing is prepared
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
}
}Server returned
HTTP 200
{
"runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 210
},
{
"name": "account-owners",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 215
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:08.298Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:08.516Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed"
},
{
"at": "2026-10-17T15:50:08.518Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:50:08.519Z",
"msg": "done (partial)"
}
],
"createdAt": "2026-10-17T15:50:08.298Z",
"updatedAt": "2026-10-17T15:50:08.519Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "592",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
}
}'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.
03stripe · GET /v1/products/prod_SaaS_ProPlan401
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
04stripe · GET /v1/subscriptions401
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
05stripe · GET /v1/customers401
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
06stripe · GET /v1/subscriptions401
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
07stripe · GET /v1/prices401
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
08stripe · GET /v1/customers401
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
09stripe · GET /v1/prices401
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
10GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 210
},
{
"name": "account-owners",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 215
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:08.298Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:08.516Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed"
},
{
"at": "2026-10-17T15:50:08.518Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:50:08.519Z",
"msg": "done (partial)"
}
],
"createdAt": "2026-10-17T15:50:08.298Z",
"updatedAt": "2026-10-17T15:50:08.519Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
11POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
}
}Server returned
HTTP 200
{
"runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 210
},
{
"name": "account-owners",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 215
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:08.298Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:08.516Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed"
},
{
"at": "2026-10-17T15:50:08.518Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:50:08.519Z",
"msg": "done (partial)"
},
{
"at": "2026-10-17T15:50:09.033Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:08.298Z",
"updatedAt": "2026-10-17T15:50:09.034Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "592",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
}
}'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.
12GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "partial",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "stripe_auth_failure"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 3
},
{
"name": "affected-customers",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 210
},
{
"name": "account-owners",
"status": "failed",
"error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required",
"errorCode": "stripe:authentication_required",
"durationMs": 215
}
],
"actions": [],
"counts": {
"applied": 0,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": null,
"customers": [],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:08.298Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:08.516Z",
"msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed"
},
{
"at": "2026-10-17T15:50:08.518Z",
"msg": "planned 0 action(s): 0 need approval"
},
{
"at": "2026-10-17T15:50:08.519Z",
"msg": "done (partial)"
},
{
"at": "2026-10-17T15:50:09.033Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:08.298Z",
"updatedAt": "2026-10-17T15:50:09.034Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
stripe_auth_failureApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
Without Stripe the affected customers are unknown, so nothing is prepared
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 (7)
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 401
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 401
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 401
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 401
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 401
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 401
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 401
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 401
{
"error": {
"type": "invalid_request_error",
"code": "authentication_required",
"doc_url": "https://stripe.com/docs/error-codes/authentication-required",
"message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token."
}
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 pending notice run survives a real runtime restart and completes when approved afterwards
restart_while_parkedWhat we probed
A pending notice run survives a real runtime restart and completes when approved afterwards
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations- Declared adapter worker restart.
POST /invocations
Expected vs actual
- Expected
- A pending notice run survives a real runtime restart and completes when approved afterwards
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
}
}Server returned
HTTP 200
{
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "AWAITING_APPROVAL",
"closed": false,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 532
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 727
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "11",
"appliedAt": "2026-10-17T15:50:10.582Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17TGDMTHMN.RKG7EP",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:10.710Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "96ba0458-959a-48e8-90a0-4adfe490407a",
"appliedAt": "2026-10-17T15:50:10.829Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "pending_approval",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 0,
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "pending_approval",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 0,
"reconciled": null
}
],
"counts": {
"applied": 3,
"failed": 0,
"pendingApproval": 3,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:10.831Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:09.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:10.447Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:10.449Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:10.582Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:10.710Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:10.829Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:10.831Z",
"msg": "awaiting approval"
}
],
"createdAt": "2026-10-17T15:50:09.717Z",
"updatedAt": "2026-10-17T15:50:10.831Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "594",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
}
}'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.
repeated state reads (14)
03GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
04GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
05GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
06GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
07GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
08GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
09GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
10GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
11GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
12GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
13GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
14GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
15GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
16GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:49:35.340Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
17GET /verify/runtime502
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 502
Response body was not recorded.
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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "text/html; charset=UTF-8",
"content-length": "6418",
"retry-after": "60"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
18GET /verify/runtime502
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 502
Response body was not recorded.
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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "text/html; charset=UTF-8",
"content-length": "6418",
"retry-after": "60"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
19GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
20POST /invocations200
We sent
POST /invocations
{
"action": "decide",
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}Server returned
HTTP 200
{
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 532
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 727
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "11",
"appliedAt": "2026-10-17T15:50:10.582Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17TGDMTHMN.RKG7EP",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:10.710Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "96ba0458-959a-48e8-90a0-4adfe490407a",
"appliedAt": "2026-10-17T15:50:10.829Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded",
"appliedAt": "2026-10-17T15:50:18.395Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850",
"appliedAt": "2026-10-17T15:50:18.534Z",
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "11",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:50:18.787Z",
"reconciled": null
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:10.831Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:50:18.133Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:09.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:10.447Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:10.449Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:10.582Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:10.710Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:10.829Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:10.831Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:18.133Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:50:18.395Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:50:18.534Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:50:18.787Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:50:18.789Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-17T15:50:09.717Z",
"updatedAt": "2026-10-17T15:50:18.789Z",
"result": "recorded"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "135",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}'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.
21GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
},
"duplicateStarts": 0,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 532
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 727
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "11",
"appliedAt": "2026-10-17T15:50:10.582Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17TGDMTHMN.RKG7EP",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:10.710Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "96ba0458-959a-48e8-90a0-4adfe490407a",
"appliedAt": "2026-10-17T15:50:10.829Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded",
"appliedAt": "2026-10-17T15:50:18.395Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850",
"appliedAt": "2026-10-17T15:50:18.534Z",
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "11",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:50:18.787Z",
"reconciled": null
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:10.831Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:50:18.133Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:09.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:10.447Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:10.449Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:10.582Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:10.710Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:10.829Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:10.831Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:18.133Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:50:18.395Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:50:18.534Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:50:18.787Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:50:18.789Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-17T15:50:09.717Z",
"updatedAt": "2026-10-17T15:50:18.789Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
22POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
}
}Server returned
HTTP 200
{
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 532
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 727
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "11",
"appliedAt": "2026-10-17T15:50:10.582Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17TGDMTHMN.RKG7EP",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:10.710Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "96ba0458-959a-48e8-90a0-4adfe490407a",
"appliedAt": "2026-10-17T15:50:10.829Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded",
"appliedAt": "2026-10-17T15:50:18.395Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850",
"appliedAt": "2026-10-17T15:50:18.534Z",
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "11",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:50:18.787Z",
"reconciled": null
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:10.831Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:50:18.133Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:09.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:10.447Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:10.449Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:10.582Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:10.710Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:10.829Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:10.831Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:18.133Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:50:18.395Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:50:18.534Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:50:18.787Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:50:18.789Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:50:19.280Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:09.717Z",
"updatedAt": "2026-10-17T15:50:19.280Z",
"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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "594",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"input": {
"repo": "acme/plm",
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"title": "Gen-2 level switch reaches end of life",
"summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"notifyChannel": "C0GENERAL01",
"approvers": [
"U_VP_ENGINEERING"
]
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
}
}'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.
repeated state reads (24)
23GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
24GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
25GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
26GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
27GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
28GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
29GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
30GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
31GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
32GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
33GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
34GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
35GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
36GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
37GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
38GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
39GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
40GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
41GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
42GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
43GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
44GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
45GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
46GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:17.586Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
47GET /verify/runtime502
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 502
Response body was not recorded.
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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "text/html; charset=UTF-8",
"content-length": "6418",
"retry-after": "60"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
48GET /verify/runtime502
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 502
Response body was not recorded.
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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "text/html; charset=UTF-8",
"content-length": "6418",
"retry-after": "60"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
49GET /verify/runtime200
We sent
GET /verify/runtime
This request had no body.
Server returned
HTTP 200
{
"instance_id": "8f6703b0-3e59-4e43-abb1-6a954e305240",
"workflow": "pcn-eol-notice",
"startedAt": "2026-10-17T15:50:30.372Z"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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.
50POST /invocations200
We sent
POST /invocations
{
"action": "decide",
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}Server returned
HTTP 200
{
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 532
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 727
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "11",
"appliedAt": "2026-10-17T15:50:10.582Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17TGDMTHMN.RKG7EP",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:10.710Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "96ba0458-959a-48e8-90a0-4adfe490407a",
"appliedAt": "2026-10-17T15:50:10.829Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded",
"appliedAt": "2026-10-17T15:50:18.395Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850",
"appliedAt": "2026-10-17T15:50:18.534Z",
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "11",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:50:18.787Z",
"reconciled": null
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:10.831Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:50:18.133Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:09.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:10.447Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:10.449Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:10.582Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:10.710Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:10.829Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:10.831Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:18.133Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:50:18.395Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:50:18.534Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:50:18.787Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:50:18.789Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:50:19.280Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:09.717Z",
"updatedAt": "2026-10-17T15:50:31.015Z",
"result": "already_decided"
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "135",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "decide",
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"decision": "approve",
"userId": "U_VP_ENGINEERING"
}'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.
51GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs200
We sent
GET /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c",
"workflow": "pcn-eol-notice",
"org": "Engineering",
"team": "product-engineering",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_851466eb937c45e282a501a9e2697d6c",
"fs_case": "restart_while_parked"
},
"duplicateStarts": 1,
"agents": [
{
"name": "change-record",
"status": "ok",
"summary": "no record yet: one will be opened",
"durationMs": 2
},
{
"name": "affected-customers",
"status": "ok",
"summary": "2 customer(s) on Pro Plan",
"durationMs": 532
},
{
"name": "account-owners",
"status": "ok",
"summary": "0/2 owner(s) found",
"durationMs": 727
}
],
"actions": [
{
"id": "github.open_change_record",
"kind": "github.open_change_record",
"provider": "github",
"agent": "change-record",
"gate": "auto",
"status": "applied",
"summary": {
"repo": "acme/plm",
"title": "Gen-2 level switch reaches end of life",
"labels": [
"pcn",
"end_of_life"
]
},
"attempts": 1,
"ref": "11",
"appliedAt": "2026-10-17T15:50:10.582Z",
"reconciled": null
},
{
"id": "slack.post_change_summary",
"kind": "slack.post_change_summary",
"provider": "slack",
"agent": "affected-customers",
"gate": "auto",
"status": "applied",
"summary": {
"channel": "C0GENERAL01",
"customers": 2
},
"attempts": 1,
"ref": "17TGDMTHMN.RKG7EP",
"detail": {
"channel": "C0GENERAL01"
},
"appliedAt": "2026-10-17T15:50:10.710Z",
"reconciled": null
},
{
"id": "asana.owner_task:2f23e841e448e200",
"kind": "asana.owner_task",
"provider": "asana",
"agent": "account-owners",
"gate": "auto",
"status": "applied",
"summary": {
"owner": "unassigned",
"accounts": [
"[email protected]",
"[email protected]"
]
},
"attempts": 1,
"ref": "96ba0458-959a-48e8-90a0-4adfe490407a",
"appliedAt": "2026-10-17T15:50:10.829Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:33138128f8828e98",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded",
"appliedAt": "2026-10-17T15:50:18.395Z",
"reconciled": null
},
{
"id": "gmail.draft_customer_notice:2dc6592f42143d2d",
"kind": "gmail.draft_customer_notice",
"provider": "gmail",
"agent": "affected-customers",
"gate": "approval",
"status": "applied",
"summary": {
"to": "[email protected]",
"product": "Pro Plan",
"sent": false
},
"attempts": 1,
"ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850",
"appliedAt": "2026-10-17T15:50:18.534Z",
"reconciled": null
},
{
"id": "github.mark_customers_notified",
"kind": "github.mark_customers_notified",
"provider": "github",
"agent": "change-record",
"gate": "approval",
"status": "applied",
"summary": {
"repo": "acme/plm",
"issue": "opened by this run",
"addLabel": "customers-notified"
},
"attempts": 1,
"ref": "11",
"detail": {
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
},
"appliedAt": "2026-10-17T15:50:18.787Z",
"reconciled": null
}
],
"counts": {
"applied": 6,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0
},
"approval": {
"approvers": [
"U_VP_ENGINEERING"
],
"expiresAt": "2026-10-18T15:50:10.831Z",
"decision": "approve",
"decidedBy": "U_VP_ENGINEERING",
"decidedAt": "2026-10-17T15:50:18.133Z"
},
"output": {
"productId": "prod_SaaS_ProPlan",
"kind": "end_of_life",
"effectiveDate": "2027-03-31",
"lastTimeBuy": "2027-01-31",
"affectedCustomers": 2,
"customers": [
"[email protected]",
"[email protected]"
],
"recordProvided": false
},
"events": [
{
"at": "2026-10-17T15:50:09.717Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-17T15:50:10.447Z",
"msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok"
},
{
"at": "2026-10-17T15:50:10.449Z",
"msg": "planned 6 action(s): 3 need approval"
},
{
"at": "2026-10-17T15:50:10.582Z",
"msg": "github.open_change_record: applied"
},
{
"at": "2026-10-17T15:50:10.710Z",
"msg": "slack.post_change_summary: applied"
},
{
"at": "2026-10-17T15:50:10.829Z",
"msg": "asana.owner_task:2f23e841e448e200: applied"
},
{
"at": "2026-10-17T15:50:10.831Z",
"msg": "awaiting approval"
},
{
"at": "2026-10-17T15:50:18.133Z",
"msg": "approved by U_VP_ENGINEERING"
},
{
"at": "2026-10-17T15:50:18.395Z",
"msg": "gmail.draft_customer_notice:33138128f8828e98: applied"
},
{
"at": "2026-10-17T15:50:18.534Z",
"msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied"
},
{
"at": "2026-10-17T15:50:18.787Z",
"msg": "github.mark_customers_notified: applied"
},
{
"at": "2026-10-17T15:50:18.789Z",
"msg": "done (ok)"
},
{
"at": "2026-10-17T15:50:19.280Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-17T15:50:09.717Z",
"updatedAt": "2026-10-17T15:50:31.015Z"
}
]
}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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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_851466eb937c45e282a501a9e2697d6c- App version (declared)
acme-ops-pcn-eol-notice-1.0.…- Source receipt
- Source receipt ↗
Technical reference
restart_while_parkedApp version (declared): acme-ops-pcn-eol-notice-1.0.0-7e9260e
A pending notice run survives a real runtime restart and completes when approved afterwards
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 (16)
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 3,
"current_period_end": 78,
"current_period_start": 40,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 62,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 69,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 42,
"current_period_end": 38,
"current_period_start": 28,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 16,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 86,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/products/prod_SaaS_ProPlan · HTTP 200
We sent
GET /v1/products/prod_SaaS_ProPlan
No body shown for this read.
Server returned
HTTP 200
{
"active": true,
"created": "2024-06-01T08:00:00Z",
"default_price": null,
"description": "Full-featured SaaS subscription with priority support and 100GB storage",
"id": "prod_SaaS_ProPlan",
"images": [],
"livemode": false,
"marketing_features": [
{
"name": "item-f43645"
}
],
"metadata": {
"category": "subscription",
"tier": "pro"
},
"name": "Pro Plan",
"object": "product",
"package_dimensions": null,
"shippable": null,
"statement_descriptor": null,
"tax_code": "DEFAULT",
"unit_label": "seat",
"updated": "2025-01-10T12:00:00Z",
"url": "https://acmecorp.com/pricing/pro"
}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/91e96e7817/v1/products/prod_SaaS_ProPlan
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/customers · HTTP 200
We sent
GET /v1/customers
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "cus_QkR3sT4uVwXy5zA6",
"object": "customer",
"email": "[email protected]",
"name": "Alice Johnson",
"phone": "+14155550101",
"description": "Acme Corp enterprise account",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2024-09-01T10:00:00Z",
"metadata": {
"plan": "enterprise",
"account_manager": "[email protected]"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
},
{
"id": "cus_BcD4eF5gH6iJ7kL8",
"object": "customer",
"email": "[email protected]",
"name": "StartupXYZ Inc",
"phone": "+12125558888",
"description": "Startup customer on growth plan",
"currency": "usd",
"balance": 0,
"delinquent": false,
"livemode": false,
"created": "2025-01-15T09:30:00Z",
"metadata": {
"plan": "growth",
"referral": "product_hunt"
},
"address": null,
"cash_balance": null,
"customer_account": null,
"default_source": null,
"discount": null,
"invoice_prefix": null,
"preferred_locales": null,
"shipping": null,
"tax_exempt": null,
"test_clock": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/customers"
}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/91e96e7817/v1/customers
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/subscriptions · HTTP 200
We sent
GET /v1/subscriptions
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "sub_3QaT2bVwXy5zA6Bc7D",
"object": "subscription",
"customer": "cus_QkR3sT4uVwXy5zA6",
"status": "active",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": null,
"trial_end": null,
"default_payment_method": "pm_card_visa_4242",
"items": {
"object": "list",
"data": [
{
"id": "si_abc123def456",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 5,
"created": 9,
"current_period_end": 34,
"current_period_start": 63,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_3QaT2bVwXy5zA6Bc7D",
"livemode": false,
"created": "2024-09-01T10:05:00Z",
"metadata": {
"seats": "5"
},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 33,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 60,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
},
{
"id": "sub_7EfG8hIjKl9mN0Op1Q",
"object": "subscription",
"customer": "cus_BcD4eF5gH6iJ7kL8",
"status": "past_due",
"cancel_at_period_end": false,
"canceled_at": null,
"ended_at": null,
"trial_start": "2025-01-15T00:00:00Z",
"trial_end": "2025-01-22T00:00:00Z",
"default_payment_method": "pm_card_mastercard_4444",
"items": {
"object": "list",
"data": [
{
"id": "si_ghi789jkl012",
"object": "subscription_item",
"price": "price_1Pro_Monthly_USD",
"quantity": 1,
"created": 9,
"current_period_end": 29,
"current_period_start": 31,
"discounts": [
"sample-value"
],
"metadata": {},
"subscription": "sample-value"
}
],
"has_more": true,
"url": "sample-value"
},
"latest_invoice": "in_7EfG8hIjKl9mN0Op1Q",
"livemode": false,
"created": "2025-01-15T09:35:00Z",
"metadata": {},
"automatic_tax": {
"disabled_reason": "requires_location_inputs",
"enabled": true
},
"billing_cycle_anchor": 33,
"billing_mode": {
"type": "classic"
},
"collection_method": "charge_automatically",
"currency": "sample-value",
"discounts": [
"sample-value"
],
"invoice_settings": {
"issuer": {
"type": "account"
}
},
"start_date": 95,
"application": null,
"application_fee_percent": null,
"billing_cycle_anchor_config": null,
"billing_thresholds": null,
"cancel_at": null,
"cancellation_details": null,
"customer_account": null,
"days_until_due": null,
"default_source": null,
"default_tax_rates": null,
"description": null,
"next_pending_invoice_item_invoice": null,
"on_behalf_of": null,
"pause_collection": null,
"payment_settings": null,
"pending_invoice_item_interval": null,
"pending_setup_intent": null,
"pending_update": null,
"schedule": null,
"test_clock": null,
"transfer_data": null,
"trial_settings": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/subscriptions"
}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/91e96e7817/v1/subscriptions
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
stripe · GET /v1/prices · HTTP 200
We sent
GET /v1/prices
No body shown for this read.
Server returned
HTTP 200
{
"data": [
{
"id": "price_1Pro_Monthly_USD",
"object": "price",
"active": true,
"currency": "usd",
"unit_amount": 4900,
"unit_amount_decimal": "4900",
"product": "prod_SaaS_ProPlan",
"type": "recurring",
"recurring": {
"interval": "month",
"interval_count": 1,
"usage_type": "licensed",
"aggregate_usage": null
},
"billing_scheme": "per_unit",
"livemode": false,
"created": "2024-06-01T08:00:00Z",
"metadata": {},
"custom_unit_amount": null,
"lookup_key": null,
"nickname": null,
"tax_behavior": null,
"tiers_mode": null,
"transform_quantity": null
}
],
"has_more": false,
"object": "list",
"url": "/v1/prices"
}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/91e96e7817/v1/prices
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "222",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
hubspot · POST /crm/v3/objects/contacts/search · HTTP 200
We sent
POST /crm/v3/objects/contacts/search
{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}Server returned
HTTP 200
{
"total": 0,
"results": []
}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/1a0e24753f/crm/v3/objects/contacts/search
{
"host": "fetchsandbox.com",
"content-length": "221",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"filterGroups": [
{
"filters": [
{
"propertyName": "email",
"operator": "EQ",
"value": "[email protected]"
}
]
}
],
"properties": [
"email",
"firstname",
"lastname",
"company",
"lifecyclestage",
"hs_lead_status",
"hubspot_owner_id"
],
"limit": 10
}'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.
github · POST /repos/acme/plm/issues · HTTP 201
We sent
POST /repos/acme/plm/issues
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}Server returned
HTTP 201
{
"id": 15,
"number": 11,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:50:10.621414+00:00",
"updated_at": "2026-10-17T15:50:10.621438+00:00",
"closed_at": null,
"owner": "acme",
"repo": "plm"
}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/f58e5f23dc/repos/acme/plm/issues
{
"host": "fetchsandbox.com",
"content-length": "337",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life"
],
"state": "open",
"owner": "acme",
"repo": "plm"
}'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.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0GENERAL01",
"message": {
"bot_id": "bot_f2308c1d5d964d0fb37bd40cb9",
"client_msg_id": "cli_3eb23604467d4fa3bcf863ca70",
"name": "item-7c3799",
"old_name": "Sample Old",
"parent_user_id": "par_b2bf908dea56404e8ded615335",
"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": "17TGDMTHMN.RKG7EP"
}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/297dbe4b13/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "311",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0GENERAL01",
"text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner",
"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.
asana · POST /tasks · HTTP 201
We sent
POST /tasks
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}Server returned
HTTP 201
{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
},
"id": "96ba0458-959a-48e8-90a0-4adfe490407a"
}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/151c9d3f35/tasks
{
"host": "fetchsandbox.com",
"content-length": "370",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"data": {
"name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life",
"notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]",
"workspace": "acme-eng",
"due_on": "2027-01-31"
}
}'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.
gmail · POST /gmail/v1/users/me/drafts · HTTP 200
We sent
POST /gmail/v1/users/me/drafts
{
"message": {
"raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDxiZmFkMDM5ZmMxNDY5MjgzLnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n"
},
"user_id": "me"
}Server returned
HTTP 200
{
"id": "e741f456-2d84-4da0-bacf-e4c39a7d7ded",
"message": {
"raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDxiZmFkMDM5ZmMxNDY5MjgzLnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n"
},
"user_id": "me"
}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/76b45b8bd0/gmail/v1/users/me/drafts
{
"host": "fetchsandbox.com",
"content-length": "762",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"message": {
"raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDxiZmFkMDM5ZmMxNDY5MjgzLnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n"
},
"user_id": "me"
}'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.
gmail · POST /gmail/v1/users/me/drafts · HTTP 200
We sent
POST /gmail/v1/users/me/drafts
{
"message": {
"raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPDQzYjkyYzc2YjJlMTY1N2UucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw"
},
"user_id": "me"
}Server returned
HTTP 200
{
"id": "d4fa7e04-3632-4c89-af97-fb43a2b1c850",
"message": {
"raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPDQzYjkyYzc2YjJlMTY1N2UucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw"
},
"user_id": "me"
}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/76b45b8bd0/gmail/v1/users/me/drafts
{
"host": "fetchsandbox.com",
"content-length": "768",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"message": {
"raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPDQzYjkyYzc2YjJlMTY1N2UucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw"
},
"user_id": "me"
}'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.
github · GET /repos/acme/plm/issues/11 · HTTP 200
We sent
GET /repos/acme/plm/issues/11
No body shown for this read.
Server returned
HTTP 200
{
"id": 15,
"number": 11,
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"state": "open",
"labels": [
"pcn",
"end_of_life"
],
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:50:10.621414+00:00",
"updated_at": "2026-10-17T15:50:10.621438+00:00",
"closed_at": null
}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/f58e5f23dc/repos/acme/plm/issues/11
{
"host": "fetchsandbox.com",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c"
}Response headers were not saved in this run.
Rebuilt curl
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/11' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.
github · PATCH /repos/acme/plm/issues/11 · HTTP 200
We sent
PATCH /repos/acme/plm/issues/11
{
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
}Server returned
HTTP 200
{
"title": "End-of-life: Gen-2 level switch reaches end of life",
"body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2",
"labels": [
"pcn",
"end_of_life",
"customers-notified"
],
"state": "open",
"owner": "acme",
"repo": "plm",
"number": 11,
"id": 15,
"assignees": [],
"comments": 0,
"created_at": "2026-10-17T15:50:10.621414+00:00",
"updated_at": "2026-10-17T15:50:10.621438+00:00",
"closed_at": null
}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/f58e5f23dc/repos/acme/plm/issues/11
{
"host": "fetchsandbox.com",
"content-length": "53",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request PATCH 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/11' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"labels": [
"pcn",
"end_of_life",
"customers-notified"
]
}'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.
Run details
Run vr_851466eb937c45e282a501a9e2697d6c
13 required checks for the declared application workflow. Results apply to the recorded observation windows.
13 passed · 0 failed · 0 not checked
Coverage beyond the declared checks
Passing these checks does not establish every production behavior.
- Normal successful behavior · Linked checks passed · baseline
- The right user gets the right access · Linked checks passed · approve_by_stranger_refused
- Valid data and boundary values · Linked checks passed · invalid_input_rejected, unknown_product_sends_nothing, unreadable_record_sends_nothing
- Correct amount, currency and quantity · Proposed as not applicable
- Duplicate requests and events · Linked checks passed · duplicate_start
- Requests arriving together · Linked checks passed · concurrent_start
- Out-of-order and stale events · Proposed as not applicable
- Delayed or missing events · Proposed as not applicable
- Provider authentication and permissions · Linked checks passed · github_auth_failure, stripe_auth_failure
- Rate limits, server failures and timeouts · Linked checks passed · asana_rate_limited
- Completed action with a lost response · Proposed as not applicable
- Partial completion and recovery · Linked checks passed · github_auth_failure, asana_rate_limited
- Restart without losing or duplicating work · Linked checks passed · restart_while_parked
- Finding and repairing inconsistent state · Linked checks passed · approve_and_reconcile
- Cancellation, refunds and access · Linked checks passed · reject
- Data ownership and privacy · Proposed as not applicable
- Test isolation and cleanup · Linked checks passed · baseline, concurrent_start
Applicability comes from the proposed plan. Test results come from the recorded execution.
App version: acme-ops-pcn-eol-notice-1.0.0-7e9260e (declared)
Measured run: 2026-10-17T15:49:36.803148+00:00 – 2026-10-17T15:50:31.577557+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: 254/286 successful · checkpoints: 13/13 recorded
Sanitized request and event timeline (284 events)
- · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:36.997835+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "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-17T15:49:38.477951+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "570", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "baseline" } }Recorded response · HTTP 200
{ "runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "baseline" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 35 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 580 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 783 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "4", "appliedAt": "2026-10-17T15:49:37.933Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17IO2LDZSC.1OIVJW", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:38.078Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155", "appliedAt": "2026-10-17T15:49:38.242Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:38.244Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:36.990Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:37.805Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:37.806Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:37.934Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:38.078Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:38.242Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:38.244Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:49:36.990Z", "updatedAt": "2026-10-17T15:49:38.244Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 3c1b67dce6f1 · processing 116.84ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 116.84ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 52, "current_period_end": 8, "current_period_start": 13, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 9, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 68, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 91, "current_period_end": 59, "current_period_start": 19, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 60, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 61, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 0a12a812ce3a · processing 126.43ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 126.43ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 3, "current_period_end": 29, "current_period_start": 52, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 33, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 49, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 47, "current_period_end": 73, "current_period_start": 68, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 75, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 0, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 3e7c37303eb8 · processing 19.2ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 19.2ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request ac3cb72ccb63 · processing 3.35ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 3.35ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-57bc3f" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request e2b677ad276b · processing 1.94ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.94ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request cc2f0cb3bc96 · processing 1.97ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.97ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 69caf2226b16 · processing 17.02ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 17.02ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 8243b4e54638 · processing 1.28ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.28ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 77416cdcf188 · processing 1.19ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.19ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 17a60075aad8 · processing 11.08ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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.08ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 25, "number": 4, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:37.991724+00:00", "updated_at": "2026-10-17T15:49:37.991748+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request f7076285458b · processing 11.61ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.61ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_965fd8b670a243998733cad7a3", "client_msg_id": "cli_8cb5a83e53f0404f8a2f964535", "name": "item-e1362f", "old_name": "Sample Old", "parent_user_id": "par_164ec0058915485c8c98e1902e", "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": "17IO2LDZSC.1OIVJW" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request aec97556fbc4 · processing 14.31ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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.31ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:38.811686+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "baseline" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 35 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 580 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 783 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "4", "appliedAt": "2026-10-17T15:49:37.933Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17IO2LDZSC.1OIVJW", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:38.078Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155", "appliedAt": "2026-10-17T15:49:38.242Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:38.244Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:36.990Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:37.805Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:37.806Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:37.934Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:38.078Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:38.242Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:38.244Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:49:36.990Z", "updatedAt": "2026-10-17T15:49:38.244Z" } ] } - · POST app request /invocations · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "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-17T15:49:39.056511+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "570", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "baseline" } }Recorded response · HTTP 200
{ "runId": "baseline-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "baseline" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 35 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 580 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 783 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "4", "appliedAt": "2026-10-17T15:49:37.933Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17IO2LDZSC.1OIVJW", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:38.078Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155", "appliedAt": "2026-10-17T15:49:38.242Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:38.244Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:36.990Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:37.805Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:37.806Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:37.934Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:38.078Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:38.242Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:38.244Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:38.792Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:36.990Z", "updatedAt": "2026-10-17T15:49:38.792Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:39.338823+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "baseline" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 35 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 580 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 783 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "4", "appliedAt": "2026-10-17T15:49:37.933Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17IO2LDZSC.1OIVJW", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:38.078Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "8c2e4565-ee9a-4a1d-a8f2-6b1b7ddde155", "appliedAt": "2026-10-17T15:49:38.242Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:38.244Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:36.990Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:37.805Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:37.806Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:37.934Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:38.078Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:38.242Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:38.244Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:38.792Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:36.990Z", "updatedAt": "2026-10-17T15:49:38.792Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:39.537969+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" } }'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-17T15:49:40.841357+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "596", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" } }Recorded response · HTTP 200
{ "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:40.638Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request fe00a1dd81dd · processing 3.32ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 3.32ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-fe4421" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 2891264c7b60 · processing 3.24ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 3.24ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 07a410dadcfa · processing 2.1ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.1ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request c9acb73704e0 · processing 108.07ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 108.07ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 82, "current_period_end": 57, "current_period_start": 100, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 8, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 81, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 56, "current_period_end": 70, "current_period_start": 74, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 84, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 40, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request d9e9f8935697 · processing 16.28ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 16.28ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request ba7c23c0091d · processing 19.32ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 19.32ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request b0ef4022ba43 · processing 106.26ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 106.26ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 58, "current_period_end": 70, "current_period_start": 62, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 53, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 18, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 80, "current_period_end": 25, "current_period_start": 69, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 75, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 19, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 424ae920369b · processing 3.81ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 3.81ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 906e78b95f74 · processing 2.1ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 2.1ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 8f4705545f05 · processing 13.55ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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.55ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 46, "number": 5, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:40.422827+00:00", "updated_at": "2026-10-17T15:49:40.422865+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 4ad16014d99d · processing 13.72ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.72ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_861597944bff4d288dcda20060", "client_msg_id": "cli_a2796f28bc8e480f921f153baa", "name": "item-6a7574", "old_name": "Sample Old", "parent_user_id": "par_ac2bd03d6dab4472819421498e", "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": "17149M78FL.C6Y3UB" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request fbe70acfc287 · processing 14.7ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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.7ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "9c8ba20b-863f-494f-b9da-e09e83182dba" } - · POST app request /invocations · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }'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-17T15:49:41.541442+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "136", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }Recorded response · HTTP 200
{ "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "appliedAt": "2026-10-17T15:49:40.944Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "appliedAt": "2026-10-17T15:49:41.093Z", "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "5", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:49:41.327Z", "reconciled": null } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:40.816Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:40.816Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:40.944Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:49:41.093Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:49:41.327Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:49:41.328Z", "msg": "done (ok)" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:41.328Z", "result": "recorded" } - · POST gmail request · provider traffic · /gmail/v1/users/me/drafts · HTTP 200 · request 1efbad4413de · processing 11.19ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "message": { "raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDw0MTIyMzc3M2Q4ZGI5NmY4LnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n" }, "user_id": "me" }'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.19ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "762", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "message": { "raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDw0MTIyMzc3M2Q4ZGI5NmY4LnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n" }, "user_id": "me" }Recorded response · HTTP 200
{ "id": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "message": { "raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDw0MTIyMzc3M2Q4ZGI5NmY4LnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n" }, "user_id": "me" } - · POST gmail request · provider traffic · /gmail/v1/users/me/drafts · HTTP 200 · request 394515c70ad8 · processing 12.38ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "message": { "raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPGQ5OThlMGM0ODFiNGIwNTcucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw" }, "user_id": "me" }'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: 12.38ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "768", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "message": { "raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPGQ5OThlMGM0ODFiNGIwNTcucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw" }, "user_id": "me" }Recorded response · HTTP 200
{ "id": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "message": { "raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPGQ5OThlMGM0ODFiNGIwNTcucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw" }, "user_id": "me" } - · GET github request · provider traffic · /repos/acme/plm/issues/5 · HTTP 200 · request 7fc100344015 · processing 1.61ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.61ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "id": 46, "number": 5, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:40.422827+00:00", "updated_at": "2026-10-17T15:49:40.422865+00:00", "closed_at": null } - · PATCH github request · provider traffic · /repos/acme/plm/issues/5 · HTTP 200 · request 67cf94aa28fb · processing 9.48ms
View sanitized request and response
Curl-style request view
curl --request PATCH 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "labels": [ "pcn", "end_of_life", "customers-notified" ] }'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: 9.48ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "53", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "labels": [ "pcn", "end_of_life", "customers-notified" ] }Recorded response · HTTP 200
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life", "customers-notified" ], "state": "open", "owner": "acme", "repo": "plm", "number": 5, "id": 46, "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:40.422827+00:00", "updated_at": "2026-10-17T15:49:40.422865+00:00", "closed_at": null } - · POST app request /invocations · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "reconcile", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c" }'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-17T15:49:41.868900+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "90", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "reconcile", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c" }Recorded response · HTTP 200
{ "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "appliedAt": "2026-10-17T15:49:40.944Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "appliedAt": "2026-10-17T15:49:41.093Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "5", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:49:41.327Z", "reconcile": { "status": "match", "checkedAt": "2026-10-17T15:49:41.635Z" }, "reconciled": "match" } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:40.816Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:40.816Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:40.944Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:49:41.093Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:49:41.327Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:49:41.328Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:49:41.635Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:41.635Z" } - · GET github request · provider traffic · /repos/acme/plm/issues/5 · HTTP 200 · request feb9f64ad32d · processing 1.66ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.66ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "id": 46, "number": 5, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life", "customers-notified" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:40.422827+00:00", "updated_at": "2026-10-17T15:49:40.422865+00:00", "closed_at": null } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:42.197729+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "appliedAt": "2026-10-17T15:49:40.944Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "appliedAt": "2026-10-17T15:49:41.093Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "5", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:49:41.327Z", "reconcile": { "status": "match", "checkedAt": "2026-10-17T15:49:41.635Z" }, "reconciled": "match" } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:40.816Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:40.816Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:40.944Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:49:41.093Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:49:41.327Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:49:41.328Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:49:41.635Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:41.635Z" } ] } - · POST app request /invocations · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" } }'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-17T15:49:42.403432+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "596", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" } }Recorded response · HTTP 200
{ "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "appliedAt": "2026-10-17T15:49:40.944Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "appliedAt": "2026-10-17T15:49:41.093Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "5", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:49:41.327Z", "reconcile": { "status": "match", "checkedAt": "2026-10-17T15:49:41.635Z" }, "reconciled": "match" } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:40.816Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:40.816Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:40.944Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:49:41.093Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:49:41.327Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:49:41.328Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:49:41.635Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" }, { "at": "2026-10-17T15:49:42.172Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:42.172Z", "duplicate": true } - · POST app request /invocations · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }'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-17T15:49:42.615699+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "136", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }Recorded response · HTTP 200
{ "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "appliedAt": "2026-10-17T15:49:40.944Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "appliedAt": "2026-10-17T15:49:41.093Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:41.519Z" }, "reconciled": "unverifiable" }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "5", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:49:41.327Z", "reconcile": { "status": "match", "checkedAt": "2026-10-17T15:49:41.635Z" }, "reconciled": "match" } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:40.816Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:40.816Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:40.944Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:49:41.093Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:49:41.327Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:49:41.328Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:49:41.635Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" }, { "at": "2026-10-17T15:49:42.172Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:42.400Z", "result": "already_decided" } - · POST app request /invocations · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "reconcile", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c" }'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-17T15:49:42.938935+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "90", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "reconcile", "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c" }Recorded response · HTTP 200
{ "runId": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "appliedAt": "2026-10-17T15:49:40.944Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "appliedAt": "2026-10-17T15:49:41.093Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "5", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:49:41.327Z", "reconcile": { "status": "match", "checkedAt": "2026-10-17T15:49:42.734Z" }, "reconciled": "match" } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:40.816Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:40.816Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:40.944Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:49:41.093Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:49:41.327Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:49:41.328Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:49:41.635Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" }, { "at": "2026-10-17T15:49:42.172Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:42.734Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:42.734Z" } - · GET github request · provider traffic · /repos/acme/plm/issues/5 · HTTP 200 · request 905808f29992 · processing 1.57ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/5' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.57ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "id": 46, "number": 5, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life", "customers-notified" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:40.422827+00:00", "updated_at": "2026-10-17T15:49:40.422865+00:00", "closed_at": null } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs · approve and reconcile · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_and_reconcile/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:43.226770+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "approve-and-reconcile-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_and_reconcile" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 481 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 718 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "5", "appliedAt": "2026-10-17T15:49:40.365Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17149M78FL.C6Y3UB", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:40.505Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "9c8ba20b-863f-494f-b9da-e09e83182dba", "appliedAt": "2026-10-17T15:49:40.637Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "0fef6ea7-ba2d-4caa-a2d4-a1915431106f", "appliedAt": "2026-10-17T15:49:40.944Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "bcd93b24-e7b6-4609-82d0-6a9226d44f97", "appliedAt": "2026-10-17T15:49:41.093Z", "reconcile": { "status": "unverifiable", "detail": "no read-back for this action", "checkedAt": "2026-10-17T15:49:42.604Z" }, "reconciled": "unverifiable" }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "5", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:49:41.327Z", "reconcile": { "status": "match", "checkedAt": "2026-10-17T15:49:42.734Z" }, "reconciled": "match" } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:40.638Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:40.816Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:39.519Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:40.240Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:40.241Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:40.365Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:40.505Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:40.638Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:40.816Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:40.944Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:49:41.093Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:49:41.327Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:49:41.328Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:49:41.635Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" }, { "at": "2026-10-17T15:49:42.172Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:42.734Z", "msg": "reconciled: {\"unverifiable\":5,\"match\":1}" } ], "createdAt": "2026-10-17T15:49:39.519Z", "updatedAt": "2026-10-17T15:49:42.734Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs · unreadable record sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:43.401872+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · unreadable record sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ], "issueNumber": 987654 }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" } }'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-17T15:49:44.277761+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "637", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ], "issueNumber": 987654 }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" } }Recorded response · HTTP 200
{ "runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "failed", "error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found", "errorCode": "github:EGeneral:Not found", "durationMs": 425 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 442 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 664 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": true }, "events": [ { "at": "2026-10-17T15:49:43.395Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:44.064Z", "msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:44.066Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:44.067Z", "msg": "done (partial)" } ], "createdAt": "2026-10-17T15:49:43.395Z", "updatedAt": "2026-10-17T15:49:44.067Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 306a6f82690d · processing 103.54ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 103.54ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 23, "current_period_end": 16, "current_period_start": 11, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 70, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 5, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 76, "current_period_end": 36, "current_period_start": 96, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 88, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 65, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 8677021a9e83 · processing 1.94ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.94ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET github request · provider traffic · /repos/acme/plm/issues/987654 · HTTP 404 · request 92161386e9d2 · processing 0.96ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/987654' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 0.96ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 404
{ "errors": [ { "status": "404", "code": "EGeneral:Not found", "detail": "Resource 987654 not found" } ] } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 55fd56ef697a · processing 1.99ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.99ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request ef65432d5483 · processing 16.89ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 16.89ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request bd7e96f377bd · processing 2.87ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.87ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-79119a" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request a835914956c0 · processing 105.3ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 105.3ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 69, "current_period_end": 86, "current_period_start": 33, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 24, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 52, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 49, "current_period_end": 18, "current_period_start": 83, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 84, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 72, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 87b14d4af69e · processing 17.28ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 17.28ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 91a0689cbf72 · processing 1.24ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.24ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 040bbc5829bc · processing 1.3ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.3ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs · unreadable record sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:44.559515+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "failed", "error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found", "errorCode": "github:EGeneral:Not found", "durationMs": 425 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 442 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 664 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": true }, "events": [ { "at": "2026-10-17T15:49:43.395Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:44.064Z", "msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:44.066Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:44.067Z", "msg": "done (partial)" } ], "createdAt": "2026-10-17T15:49:43.395Z", "updatedAt": "2026-10-17T15:49:44.067Z" } ] } - · POST app request /invocations · unreadable record sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ], "issueNumber": 987654 }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" } }'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-17T15:49:44.752374+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "637", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ], "issueNumber": 987654 }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" } }Recorded response · HTTP 200
{ "runId": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "failed", "error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found", "errorCode": "github:EGeneral:Not found", "durationMs": 425 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 442 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 664 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": true }, "events": [ { "at": "2026-10-17T15:49:43.395Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:44.064Z", "msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:44.066Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:44.067Z", "msg": "done (partial)" }, { "at": "2026-10-17T15:49:44.532Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:43.395Z", "updatedAt": "2026-10-17T15:49:44.532Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs · unreadable record sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unreadable_record_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:45.073441+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "unreadable-record-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unreadable_record_sends_nothing" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "failed", "error": "github 404 EGeneral:Not found: GET /repos/acme/plm/issues/987654 → 404 EGeneral:Not found", "errorCode": "github:EGeneral:Not found", "durationMs": 425 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 442 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 664 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": true }, "events": [ { "at": "2026-10-17T15:49:43.395Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:44.064Z", "msg": "agents: change-record=failed, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:44.066Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:44.067Z", "msg": "done (partial)" }, { "at": "2026-10-17T15:49:44.532Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:43.395Z", "updatedAt": "2026-10-17T15:49:44.532Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs · unknown product sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:45.277527+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · unknown product sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_DoesNotExist", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" } }'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-17T15:49:45.907831+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "612", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_DoesNotExist", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" } }Recorded response · HTTP 200
{ "runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing", "errorCode": "stripe:resource_missing", "durationMs": 436 }, { "name": "account-owners", "status": "ok", "summary": "0/0 owner(s) found", "durationMs": 452 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_DoesNotExist", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:45.252Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:45.708Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok" }, { "at": "2026-10-17T15:49:45.709Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:45.710Z", "msg": "done (partial)" } ], "createdAt": "2026-10-17T15:49:45.252Z", "updatedAt": "2026-10-17T15:49:45.710Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request fee4f67d6f96 · processing 19.4ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 19.4ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request f42a1e7a519f · processing 1.49ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.49ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/products/prod_DoesNotExist · HTTP 404 · request 8d1a8439fdc0 · processing 2.33ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_DoesNotExist' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.33ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 404
{ "error": { "type": "invalid_request_error", "code": "resource_missing", "doc_url": "https://stripe.com/docs/error-codes/resource-missing", "message": "Resource prod_DoesNotExist not found" } } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 5b61fa6704a6 · processing 18.11ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 18.11ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request a60b8670e27d · processing 1.47ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.47ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request b49dcfbcf7c1 · processing 103.43ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 103.43ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 24, "current_period_end": 5, "current_period_start": 16, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 54, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 96, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 82, "current_period_end": 9, "current_period_start": 81, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 50, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 1, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request b520cedfb016 · processing 101.87ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 101.87ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 49, "current_period_end": 12, "current_period_start": 32, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 47, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 30, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 21, "current_period_end": 12, "current_period_start": 11, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 99, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 56, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs · unknown product sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:46.218829+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing", "errorCode": "stripe:resource_missing", "durationMs": 436 }, { "name": "account-owners", "status": "ok", "summary": "0/0 owner(s) found", "durationMs": 452 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_DoesNotExist", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:45.252Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:45.708Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok" }, { "at": "2026-10-17T15:49:45.709Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:45.710Z", "msg": "done (partial)" } ], "createdAt": "2026-10-17T15:49:45.252Z", "updatedAt": "2026-10-17T15:49:45.710Z" } ] } - · POST app request /invocations · unknown product sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_DoesNotExist", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" } }'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-17T15:49:46.400250+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "612", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_DoesNotExist", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" } }Recorded response · HTTP 200
{ "runId": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing", "errorCode": "stripe:resource_missing", "durationMs": 436 }, { "name": "account-owners", "status": "ok", "summary": "0/0 owner(s) found", "durationMs": 452 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_DoesNotExist", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:45.252Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:45.708Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok" }, { "at": "2026-10-17T15:49:45.709Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:45.710Z", "msg": "done (partial)" }, { "at": "2026-10-17T15:49:46.190Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:45.252Z", "updatedAt": "2026-10-17T15:49:46.190Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs · unknown product sends nothing · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/unknown_product_sends_nothing/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:46.757170+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "unknown-product-sends-nothing-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "unknown_product_sends_nothing" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 404 resource_missing: GET /v1/products/prod_DoesNotExist → 404 resource_missing", "errorCode": "stripe:resource_missing", "durationMs": 436 }, { "name": "account-owners", "status": "ok", "summary": "0/0 owner(s) found", "durationMs": 452 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_DoesNotExist", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:45.252Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:45.708Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=ok" }, { "at": "2026-10-17T15:49:45.709Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:49:45.710Z", "msg": "done (partial)" }, { "at": "2026-10-17T15:49:46.190Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:45.252Z", "updatedAt": "2026-10-17T15:49:46.190Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs · approve by stranger refused · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:46.992599+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · approve by stranger refused · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" } }'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-17T15:49:48.879780+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "608", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" } }Recorded response · HTTP 200
{ "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 5 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 1077 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 1324 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "6", "appliedAt": "2026-10-17T15:49:48.417Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "179TC5GN44.JJ98C4", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:48.533Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d", "appliedAt": "2026-10-17T15:49:48.666Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:48.668Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:46.974Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:48.303Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:48.304Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:48.418Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:48.533Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:48.667Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:48.668Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:49:46.974Z", "updatedAt": "2026-10-17T15:49:48.668Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request 8e1de23d93b7 · processing 3.1ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 3.1ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-d0e1dd" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 185365e9e14f · processing 733.8ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 733.8ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 58, "current_period_end": 59, "current_period_start": 83, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 69, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 80, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 86, "current_period_end": 24, "current_period_start": 5, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 85, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 24, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 8fdf7ee3047e · processing 16.35ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 16.35ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request d78a479e299f · processing 105.41ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 105.41ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 51, "current_period_end": 12, "current_period_start": 17, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 8, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 58, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 98, "current_period_end": 88, "current_period_start": 5, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 44, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 67, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 057f61b8e63a · processing 1.96ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.96ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 04227405b9fb · processing 1.8ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.8ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 16cc601ee32b · processing 15.67ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 15.67ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request d76b5e2c44d2 · processing 1.29ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.29ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 7bd8dd7545c5 · processing 1.27ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.27ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 80beba37683c · processing 13.06ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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.06ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 44, "number": 6, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:48.474835+00:00", "updated_at": "2026-10-17T15:49:48.474874+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request d501db016c9a · processing 13.34ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.34ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_343926311fe04f8d95b4cced31", "client_msg_id": "cli_77c93b59d6224865957232ac05", "name": "item-580a0e", "old_name": "Sample Old", "parent_user_id": "par_f784e40c5a6f420e82a2895947", "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": "179TC5GN44.JJ98C4" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request f38d31aa23c3 · processing 14.16ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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.16ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d" } - · POST app request /invocations · approve by stranger refused · HTTP 403
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_INTERN" }'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-17T15:49:49.061036+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "134", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_INTERN" }Recorded response · HTTP 403
{ "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 5 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 1077 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 1324 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "6", "appliedAt": "2026-10-17T15:49:48.417Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "179TC5GN44.JJ98C4", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:48.533Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d", "appliedAt": "2026-10-17T15:49:48.666Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:48.668Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:46.974Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:48.303Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:48.304Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:48.418Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:48.533Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:48.667Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:48.668Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:48.857Z", "msg": "decision by U_INTERN refused: not an approver" } ], "createdAt": "2026-10-17T15:49:46.974Z", "updatedAt": "2026-10-17T15:49:48.857Z", "result": "forbidden" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs · approve by stranger refused · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:49.382839+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 5 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 1077 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 1324 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "6", "appliedAt": "2026-10-17T15:49:48.417Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "179TC5GN44.JJ98C4", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:48.533Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d", "appliedAt": "2026-10-17T15:49:48.666Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:48.668Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:46.974Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:48.303Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:48.304Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:48.418Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:48.533Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:48.667Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:48.668Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:48.857Z", "msg": "decision by U_INTERN refused: not an approver" } ], "createdAt": "2026-10-17T15:49:46.974Z", "updatedAt": "2026-10-17T15:49:48.857Z" } ] } - · POST app request /invocations · approve by stranger refused · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" } }'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-17T15:49:49.571678+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "608", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" } }Recorded response · HTTP 200
{ "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 5 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 1077 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 1324 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "6", "appliedAt": "2026-10-17T15:49:48.417Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "179TC5GN44.JJ98C4", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:48.533Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d", "appliedAt": "2026-10-17T15:49:48.666Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:48.668Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:46.974Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:48.303Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:48.304Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:48.418Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:48.533Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:48.667Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:48.668Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:48.857Z", "msg": "decision by U_INTERN refused: not an approver" }, { "at": "2026-10-17T15:49:49.365Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:46.974Z", "updatedAt": "2026-10-17T15:49:49.365Z", "duplicate": true } - · POST app request /invocations · approve by stranger refused · HTTP 403
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_INTERN" }'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-17T15:49:49.762513+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "134", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_INTERN" }Recorded response · HTTP 403
{ "runId": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 5 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 1077 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 1324 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "6", "appliedAt": "2026-10-17T15:49:48.417Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "179TC5GN44.JJ98C4", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:48.533Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d", "appliedAt": "2026-10-17T15:49:48.666Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:48.668Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:46.974Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:48.303Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:48.304Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:48.418Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:48.533Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:48.667Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:48.668Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:48.857Z", "msg": "decision by U_INTERN refused: not an approver" }, { "at": "2026-10-17T15:49:49.365Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:49.550Z", "msg": "decision by U_INTERN refused: not an approver" } ], "createdAt": "2026-10-17T15:49:46.974Z", "updatedAt": "2026-10-17T15:49:49.550Z", "result": "forbidden" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs · approve by stranger refused · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/approve_by_stranger_refused/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:50.089097+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "approve-by-stranger-refused-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "approve_by_stranger_refused" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 5 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 1077 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 1324 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "6", "appliedAt": "2026-10-17T15:49:48.417Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "179TC5GN44.JJ98C4", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:48.533Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "ba683e0c-fdbc-4e8c-a63a-9204155aa92d", "appliedAt": "2026-10-17T15:49:48.666Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:48.668Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:46.974Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:48.303Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:48.304Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:48.418Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:48.533Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:48.667Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:48.668Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:48.857Z", "msg": "decision by U_INTERN refused: not an approver" }, { "at": "2026-10-17T15:49:49.365Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:49.550Z", "msg": "decision by U_INTERN refused: not an approver" } ], "createdAt": "2026-10-17T15:49:46.974Z", "updatedAt": "2026-10-17T15:49:49.550Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs · reject · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:50.274375+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · reject · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" } }'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-17T15:49:51.584822+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "566", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" } }Recorded response · HTTP 200
{ "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 553 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 767 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "7", "appliedAt": "2026-10-17T15:49:51.136Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "1733SJWUZ5.DQ6N4T", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:51.255Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "a560183a-e8fc-459a-8e92-c142c5e7849d", "appliedAt": "2026-10-17T15:49:51.387Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:51.388Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:50.248Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:51.020Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:51.021Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:51.136Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:51.255Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:51.387Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:51.388Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:49:50.248Z", "updatedAt": "2026-10-17T15:49:51.388Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 6a3455ae496d · processing 162.65ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 162.65ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 62, "current_period_end": 29, "current_period_start": 13, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 18, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 20, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 32, "current_period_end": 50, "current_period_start": 39, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 17, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 34, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request 49d046fec10d · processing 4.65ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 4.65ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-441b21" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request b9b0c5a0d639 · processing 2.98ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.98ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 9da8a5fb0853 · processing 3.21ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 3.21ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request b5608bfb392e · processing 28.8ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 28.8ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 2c3d3b7d78d1 · processing 107.2ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 107.2ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 59, "current_period_end": 2, "current_period_start": 78, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 0, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 100, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 45, "current_period_end": 40, "current_period_start": 49, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 30, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 28, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request ef0d3cc907c7 · processing 16.33ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 16.33ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 2b9775c3959c · processing 1.31ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.31ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request b3c7336a9ece · processing 1.34ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.34ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 34430d984eb7 · processing 15.15ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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: 15.15ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 98, "number": 7, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:51.190940+00:00", "updated_at": "2026-10-17T15:49:51.190963+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 7d5c2f93a879 · processing 14.27ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.27ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_040660b48f504333a73758f1b8", "client_msg_id": "cli_111ce4a0cb8545f4b6d9b3e756", "name": "item-10ffa1", "old_name": "Sample Old", "parent_user_id": "par_43a8674b8f9d4420b04fcbb6d3", "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": "1733SJWUZ5.DQ6N4T" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request 4a53088192be · processing 14.19ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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.19ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "a560183a-e8fc-459a-8e92-c142c5e7849d" } - · POST app request /invocations · reject · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "decision": "reject", "userId": "U_VP_ENGINEERING" }'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-17T15:49:51.819397+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "120", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "decision": "reject", "userId": "U_VP_ENGINEERING" }Recorded response · HTTP 200
{ "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "REJECTED", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 553 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 767 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "7", "appliedAt": "2026-10-17T15:49:51.136Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "1733SJWUZ5.DQ6N4T", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:51.255Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "a560183a-e8fc-459a-8e92-c142c5e7849d", "appliedAt": "2026-10-17T15:49:51.387Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "rejected", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 3 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:51.388Z", "decision": "reject", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:51.577Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:50.248Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:51.020Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:51.021Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:51.136Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:51.255Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:51.387Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:51.388Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:51.577Z", "msg": "rejected by U_VP_ENGINEERING" } ], "createdAt": "2026-10-17T15:49:50.248Z", "updatedAt": "2026-10-17T15:49:51.577Z", "result": "recorded" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs · reject · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:52.100086+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "reject-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "REJECTED", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 553 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 767 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "7", "appliedAt": "2026-10-17T15:49:51.136Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "1733SJWUZ5.DQ6N4T", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:51.255Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "a560183a-e8fc-459a-8e92-c142c5e7849d", "appliedAt": "2026-10-17T15:49:51.387Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "rejected", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 3 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:51.388Z", "decision": "reject", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:51.577Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:50.248Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:51.020Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:51.021Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:51.136Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:51.255Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:51.387Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:51.388Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:51.577Z", "msg": "rejected by U_VP_ENGINEERING" } ], "createdAt": "2026-10-17T15:49:50.248Z", "updatedAt": "2026-10-17T15:49:51.577Z" } ] } - · POST app request /invocations · reject · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" } }'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-17T15:49:52.297471+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "566", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" } }Recorded response · HTTP 200
{ "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "REJECTED", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 553 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 767 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "7", "appliedAt": "2026-10-17T15:49:51.136Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "1733SJWUZ5.DQ6N4T", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:51.255Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "a560183a-e8fc-459a-8e92-c142c5e7849d", "appliedAt": "2026-10-17T15:49:51.387Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "rejected", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 3 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:51.388Z", "decision": "reject", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:51.577Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:50.248Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:51.020Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:51.021Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:51.136Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:51.255Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:51.387Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:51.388Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:51.577Z", "msg": "rejected by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:52.081Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:50.248Z", "updatedAt": "2026-10-17T15:49:52.081Z", "duplicate": true } - · POST app request /invocations · reject · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "decision": "reject", "userId": "U_VP_ENGINEERING" }'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-17T15:49:52.497008+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "120", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "decision": "reject", "userId": "U_VP_ENGINEERING" }Recorded response · HTTP 200
{ "runId": "reject-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "REJECTED", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 553 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 767 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "7", "appliedAt": "2026-10-17T15:49:51.136Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "1733SJWUZ5.DQ6N4T", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:51.255Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "a560183a-e8fc-459a-8e92-c142c5e7849d", "appliedAt": "2026-10-17T15:49:51.387Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "rejected", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 3 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:51.388Z", "decision": "reject", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:51.577Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:50.248Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:51.020Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:51.021Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:51.136Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:51.255Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:51.387Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:51.388Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:51.577Z", "msg": "rejected by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:52.081Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:50.248Z", "updatedAt": "2026-10-17T15:49:52.292Z", "result": "already_decided" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs · reject · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/reject/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:52.796506+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "reject-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "REJECTED", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "reject" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 553 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 767 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "7", "appliedAt": "2026-10-17T15:49:51.136Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "1733SJWUZ5.DQ6N4T", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:51.255Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "a560183a-e8fc-459a-8e92-c142c5e7849d", "appliedAt": "2026-10-17T15:49:51.387Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "rejected", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "rejected", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 3 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:51.388Z", "decision": "reject", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:49:51.577Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:50.248Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:51.020Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:51.021Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:51.136Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:51.255Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:51.387Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:51.388Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:51.577Z", "msg": "rejected by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:49:52.081Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:50.248Z", "updatedAt": "2026-10-17T15:49:52.292Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:52.981214+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "invalid-input-rejected-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "not a repo", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "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-17T15:49:53.181233+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "600", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json", "content-length": "103" }Request body
{ "action": "start", "runId": "invalid-input-rejected-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "not a repo", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "invalid_input_rejected" } }Recorded response · HTTP 400
{ "error": "invalid input", "issues": [ "repo: Invalid string: must match pattern /^[\\w.-]+\\/[\\w.-]+$/" ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:53.460910+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "invalid-input-rejected-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "not a repo", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "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-17T15:49:53.646510+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "600", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json", "content-length": "103" }Request body
{ "action": "start", "runId": "invalid-input-rejected-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "not a repo", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "invalid_input_rejected" } }Recorded response · HTTP 400
{ "error": "invalid input", "issues": [ "repo: Invalid string: must match pattern /^[\\w.-]+\\/[\\w.-]+$/" ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/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_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:53.973080+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": [] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs · duplicate start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:54.160188+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · duplicate start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }'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-17T15:49:55.390913+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "584", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }Recorded response · HTTP 200
{ "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 6 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 468 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 682 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "8", "appliedAt": "2026-10-17T15:49:54.942Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17D6D7STPF.EQ1EA9", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:55.056Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "cefc6e69-42f9-489f-83df-024b9b08e38d", "appliedAt": "2026-10-17T15:49:55.190Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:55.191Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:54.134Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:54.822Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:54.824Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:54.943Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:55.057Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:55.190Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:55.191Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:49:54.134Z", "updatedAt": "2026-10-17T15:49:55.191Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 90569c87911c · processing 17.1ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 17.1ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request 39c0df2be058 · processing 2.78ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.78ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-76b529" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request d16ba2b46ae9 · processing 1.9ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.9ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 81b7914415fd · processing 105.01ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 105.01ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 21, "current_period_end": 69, "current_period_start": 69, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 43, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 84, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 96, "current_period_end": 70, "current_period_start": 79, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 28, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 40, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request e5978a391721 · processing 109.11ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 109.11ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 15, "current_period_end": 84, "current_period_start": 3, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 27, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 91, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 1, "current_period_end": 3, "current_period_start": 15, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 90, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 49, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request d4bc77b1fc5c · processing 2.07ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.07ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request a7d8f178ceb5 · processing 17.48ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 17.48ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request a5a0918ed851 · processing 1.42ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.42ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 99f33e071280 · processing 1.47ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.47ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 0bc29615b3a5 · processing 15.03ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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: 15.03ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 25, "number": 8, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:54.993505+00:00", "updated_at": "2026-10-17T15:49:54.993534+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 84510cdf43ba · processing 13.5ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.5ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_b1c8c340eab64d80b15a622f20", "client_msg_id": "cli_7efe7d6e1ebb4c11b4078a4c01", "name": "item-e87dae", "old_name": "Sample Old", "parent_user_id": "par_741ba0bae69f47d6bc420a8264", "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": "17D6D7STPF.EQ1EA9" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request 4c198edd531b · processing 14.36ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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.36ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "cefc6e69-42f9-489f-83df-024b9b08e38d" } - · POST app request /invocations · duplicate start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }'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-17T15:49:55.590902+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "584", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }Recorded response · HTTP 200
{ "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 6 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 468 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 682 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "8", "appliedAt": "2026-10-17T15:49:54.942Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17D6D7STPF.EQ1EA9", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:55.056Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "cefc6e69-42f9-489f-83df-024b9b08e38d", "appliedAt": "2026-10-17T15:49:55.190Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:55.191Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:54.134Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:54.822Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:54.824Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:54.943Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:55.057Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:55.190Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:55.191Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:55.378Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:54.134Z", "updatedAt": "2026-10-17T15:49:55.378Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs · duplicate start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:55.871867+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 6 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 468 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 682 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "8", "appliedAt": "2026-10-17T15:49:54.942Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17D6D7STPF.EQ1EA9", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:55.056Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "cefc6e69-42f9-489f-83df-024b9b08e38d", "appliedAt": "2026-10-17T15:49:55.190Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:55.191Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:54.134Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:54.822Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:54.824Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:54.943Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:55.057Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:55.190Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:55.191Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:55.378Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:54.134Z", "updatedAt": "2026-10-17T15:49:55.378Z" } ] } - · POST app request /invocations · duplicate start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }'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-17T15:49:56.070057+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "584", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }Recorded response · HTTP 200
{ "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" }, "duplicateStarts": 2, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 6 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 468 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 682 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "8", "appliedAt": "2026-10-17T15:49:54.942Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17D6D7STPF.EQ1EA9", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:55.056Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "cefc6e69-42f9-489f-83df-024b9b08e38d", "appliedAt": "2026-10-17T15:49:55.190Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:55.191Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:54.134Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:54.822Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:54.824Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:54.943Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:55.057Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:55.190Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:55.191Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:55.378Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:55.850Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:54.134Z", "updatedAt": "2026-10-17T15:49:55.850Z", "duplicate": true } - · POST app request /invocations · duplicate start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }'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-17T15:49:56.259604+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "584", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" } }Recorded response · HTTP 200
{ "runId": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" }, "duplicateStarts": 3, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 6 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 468 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 682 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "8", "appliedAt": "2026-10-17T15:49:54.942Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17D6D7STPF.EQ1EA9", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:55.056Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "cefc6e69-42f9-489f-83df-024b9b08e38d", "appliedAt": "2026-10-17T15:49:55.190Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:55.191Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:54.134Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:54.822Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:54.824Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:54.943Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:55.057Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:55.190Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:55.191Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:55.378Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:55.850Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:56.058Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:54.134Z", "updatedAt": "2026-10-17T15:49:56.058Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs · duplicate start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/duplicate_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:56.548963+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "duplicate-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "duplicate_start" }, "duplicateStarts": 3, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 6 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 468 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 682 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "8", "appliedAt": "2026-10-17T15:49:54.942Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17D6D7STPF.EQ1EA9", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:55.056Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "cefc6e69-42f9-489f-83df-024b9b08e38d", "appliedAt": "2026-10-17T15:49:55.190Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:55.191Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:54.134Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:54.822Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:54.824Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:54.943Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:55.057Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:55.190Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:55.191Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:55.378Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:55.850Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:56.058Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:54.134Z", "updatedAt": "2026-10-17T15:49:56.058Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:56.729681+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:57.940083+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:57.725Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 2d1655e90437 · processing 2.33ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.33ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request 8aa1528209f2 · processing 2.76ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.76ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-dae6f9" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request dfdd11aec8fc · processing 17.87ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 17.87ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 6647becb4875 · processing 126.96ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 126.96ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 46, "current_period_end": 20, "current_period_start": 86, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 2, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 59, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 91, "current_period_end": 38, "current_period_start": 7, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 11, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 37, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 0819b3bf7836 · processing 18.58ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 18.58ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 8ed3a573c3dc · processing 2.31ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.31ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request c9d242dc8b9c · processing 114.04ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 114.04ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 33, "current_period_end": 13, "current_period_start": 38, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 60, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 32, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 21, "current_period_end": 55, "current_period_start": 4, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 11, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 28, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 701b2ec49baf · processing 1.26ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.26ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request b998fa0364cd · processing 1.34ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.34ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 69dfdff800dc · processing 12.51ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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: 12.51ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 94, "number": 9, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:49:57.534049+00:00", "updated_at": "2026-10-17T15:49:57.534073+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request cb17c353d9df · processing 13.1ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.1ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_82264b74064b448fb0c22b368b", "client_msg_id": "cli_3df0fb695846463fbac55c4a7f", "name": "item-1bfa52", "old_name": "Sample Old", "parent_user_id": "par_f0ac0196a95d45e0bace206f41", "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": "17WDL8ESO7.WEWGM2" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request 39bbafdce946 · processing 15.92ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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: 15.92ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc" } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:58.327850+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 2, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:58.091Z", "duplicate": true } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:58.188472+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:57.977Z", "duplicate": true } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:58.577240+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 4, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:58.304Z", "duplicate": true } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:58.401950+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 3, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:58.187Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:58.859838+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 4, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:58.304Z" } ] } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:59.064002+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 5, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.848Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:58.848Z", "duplicate": true } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:59.605291+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 9, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.848Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.087Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.184Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.298Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.393Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:59.393Z", "duplicate": true } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:59.514684+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 8, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.848Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.087Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.184Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.298Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:59.298Z", "duplicate": true } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:59.419664+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 7, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.848Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.087Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.184Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:59.184Z", "duplicate": true } - · POST app request /invocations · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }'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-17T15:49:59.290957+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "586", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" } }Recorded response · HTTP 200
{ "runId": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 6, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.848Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.087Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:59.087Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs · concurrent start · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/concurrent_start/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:49:59.888896+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "concurrent-start-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "concurrent_start" }, "duplicateStarts": 9, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 528 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 642 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "9", "appliedAt": "2026-10-17T15:49:57.476Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17WDL8ESO7.WEWGM2", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:49:57.589Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "04a2f129-c1ca-42a6-89ad-6fb26b1e35cc", "appliedAt": "2026-10-17T15:49:57.724Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:49:57.725Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:49:56.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:49:57.363Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:49:57.364Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:49:57.476Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:49:57.589Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:49:57.724Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:49:57.725Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:49:57.977Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.091Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.187Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.304Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:58.848Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.087Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.184Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.298Z", "msg": "duplicate start ignored" }, { "at": "2026-10-17T15:49:59.393Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:49:56.717Z", "updatedAt": "2026-10-17T15:49:59.393Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs · github auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:00.233819+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · github auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" } }'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-17T15:50:04.149449+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "592", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" } }Recorded response · HTTP 200
{ "runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 2661 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 2944 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "failed", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED", "errorCode": "github:UNAUTHORIZED", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17DJRKRAH4.7WLT44", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:03.596Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7", "appliedAt": "2026-10-17T15:50:03.901Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:03.902Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:00.343Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:03.291Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:03.292Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:03.429Z", "msg": "github.open_change_record: failed (github:UNAUTHORIZED)" }, { "at": "2026-10-17T15:50:03.596Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:03.901Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:03.902Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:50:00.343Z", "updatedAt": "2026-10-17T15:50:03.902Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 5253f8b1102b · processing 28.02ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 28.02ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request cf5dbe0da8f6 · processing 9.39ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 9.39ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-6e876e" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request ab60e31e8983 · processing 1336.83ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1336.83ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 6607dccad31f · processing 434.37ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 434.37ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 9, "current_period_end": 4, "current_period_start": 59, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 35, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 70, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 80, "current_period_end": 61, "current_period_start": 56, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 70, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 60, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 78e11733b76f · processing 11.78ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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.78ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 3e5cc5a89555 · processing 4.97ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 4.97ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 9ec4c791e920 · processing 474.49ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 474.49ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 82, "current_period_end": 0, "current_period_start": 97, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 12, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 29, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 14, "current_period_end": 25, "current_period_start": 94, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 11, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 70, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 7fa08657bb13 · processing 1.62ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.62ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 51878cc5d12d · processing 4.28ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 4.28ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · github auth failure · /repos/acme/plm/issues · HTTP 401 · processing 0.4ms
View sanitized request and response
Curl-style request view
curl --request POST '<GITHUB_TWIN_BASE_URL>/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ] }'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 was not recorded. Provider processing: 0.4ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ] }Recorded response · HTTP 401
{ "errors": [ { "status": "401", "code": "UNAUTHORIZED", "detail": "Bad credentials. The token used is invalid or has been revoked." } ] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 401 · request 59066c5e113c · processing 0.4ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ] }'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: 0.4ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ] }Recorded response · HTTP 401
{ "errors": [ { "status": "401", "code": "UNAUTHORIZED", "detail": "Bad credentials. The token used is invalid or has been revoked." } ] } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 1a7c26a3907b · processing 25.07ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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: 25.07ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_031575aef6c04cf1aac2c647d2", "client_msg_id": "cli_689757e5293743459da0f56d6c", "name": "item-a94c54", "old_name": "Sample Old", "parent_user_id": "par_602a8f8b792f4a6fb2bb746f45", "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": "17DJRKRAH4.7WLT44" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request 1f1292dde126 · processing 68.51ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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: 68.51ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs · github auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:04.500784+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 2661 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 2944 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "failed", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED", "errorCode": "github:UNAUTHORIZED", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17DJRKRAH4.7WLT44", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:03.596Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7", "appliedAt": "2026-10-17T15:50:03.901Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:03.902Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:00.343Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:03.291Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:03.292Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:03.429Z", "msg": "github.open_change_record: failed (github:UNAUTHORIZED)" }, { "at": "2026-10-17T15:50:03.596Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:03.901Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:03.902Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:50:00.343Z", "updatedAt": "2026-10-17T15:50:03.902Z" } ] } - · POST app request /invocations · github auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" } }'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-17T15:50:04.718933+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "592", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" } }Recorded response · HTTP 200
{ "runId": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 2661 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 2944 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "failed", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED", "errorCode": "github:UNAUTHORIZED", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17DJRKRAH4.7WLT44", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:03.596Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7", "appliedAt": "2026-10-17T15:50:03.901Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:03.902Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:00.343Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:03.291Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:03.292Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:03.429Z", "msg": "github.open_change_record: failed (github:UNAUTHORIZED)" }, { "at": "2026-10-17T15:50:03.596Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:03.901Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:03.902Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:04.498Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:00.343Z", "updatedAt": "2026-10-17T15:50:04.498Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs · github auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/github_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:05.079594+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "github-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "github_auth_failure" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 2661 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 2944 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "failed", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "error": "github 401 UNAUTHORIZED: POST /repos/acme/plm/issues → 401 UNAUTHORIZED", "errorCode": "github:UNAUTHORIZED", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17DJRKRAH4.7WLT44", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:03.596Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "2d21a63c-ff84-4cbb-9b4a-6dba3f144dc7", "appliedAt": "2026-10-17T15:50:03.901Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:03.902Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:00.343Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:03.291Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:03.292Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:03.429Z", "msg": "github.open_change_record: failed (github:UNAUTHORIZED)" }, { "at": "2026-10-17T15:50:03.596Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:03.901Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:03.902Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:04.498Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:00.343Z", "updatedAt": "2026-10-17T15:50:04.498Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs · asana rate limited · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:05.278025+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · asana rate limited · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" } }'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-17T15:50:07.336003+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "590", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" } }Recorded response · HTTP 200
{ "runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 485 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 708 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "10", "appliedAt": "2026-10-17T15:50:06.099Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17I0OTNEPG.KGTLKS", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:06.222Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "failed", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded", "errorCode": "asana:rate_limit_exceeded", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:07.117Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:05.260Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:05.985Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:05.987Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:06.099Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:06.222Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:07.116Z", "msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)" }, { "at": "2026-10-17T15:50:07.117Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:50:05.260Z", "updatedAt": "2026-10-17T15:50:07.117Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 5ba47ce38c12 · processing 121.77ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 121.77ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 29, "current_period_end": 38, "current_period_start": 50, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 58, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 91, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 18, "current_period_end": 40, "current_period_start": 60, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 21, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 44, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request 9b468485925a · processing 2.76ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.76ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-3f39cd" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request ceb6fff32380 · processing 101.89ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 101.89ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 7, "current_period_end": 5, "current_period_start": 74, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 96, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 47, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 48, "current_period_end": 90, "current_period_start": 82, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 19, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 41, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request cf88b40b0633 · processing 16.61ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 16.61ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 9d7a12ac47b2 · processing 19.71ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 19.71ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 114a7168b8a2 · processing 1.98ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.98ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request ef3c65aa2efd · processing 2.33ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.33ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 9a683a90da82 · processing 1.44ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.44ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request af4a86730694 · processing 1.87ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.87ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 091994273ad7 · processing 10.79ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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: 10.79ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 34, "number": 10, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:50:06.157923+00:00", "updated_at": "2026-10-17T15:50:06.157948+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 257029f07614 · processing 14.16ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.16ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_5d20bded5325422ab15133b60e", "client_msg_id": "cli_7aab911ab8a24367aca1663899", "name": "item-373ef0", "old_name": "Sample Old", "parent_user_id": "par_65398f75cde5497c9eb2db0ddb", "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": "17I0OTNEPG.KGTLKS" } - · POST asana request · asana rate limited · /tasks · HTTP 429 · processing 0.39ms
View sanitized request and response
Curl-style request view
curl --request POST '<ASANA_TWIN_BASE_URL>/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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 was not recorded. Provider processing: 0.39ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 429
{ "errors": [ { "status": "429", "code": "rate_limit_exceeded", "detail": "Too many requests. Please retry after 60 seconds." } ] } - · POST asana request · provider traffic · /tasks · HTTP 429 · request 5fb7b20ec3a8 · processing 0.39ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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: 0.39ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 429
{ "errors": [ { "status": "429", "code": "rate_limit_exceeded", "detail": "Too many requests. Please retry after 60 seconds." } ] } - · POST asana request · asana rate limited · /tasks · HTTP 429 · processing 0.25ms
View sanitized request and response
Curl-style request view
curl --request POST '<ASANA_TWIN_BASE_URL>/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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 was not recorded. Provider processing: 0.25ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 429
{ "errors": [ { "status": "429", "code": "rate_limit_exceeded", "detail": "Too many requests. Please retry after 60 seconds." } ] } - · POST asana request · provider traffic · /tasks · HTTP 429 · request e201c80a1fee · processing 0.25ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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: 0.25ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 429
{ "errors": [ { "status": "429", "code": "rate_limit_exceeded", "detail": "Too many requests. Please retry after 60 seconds." } ] } - · POST asana request · asana rate limited · /tasks · HTTP 429 · processing 0.26ms
View sanitized request and response
Curl-style request view
curl --request POST '<ASANA_TWIN_BASE_URL>/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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 was not recorded. Provider processing: 0.26ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 429
{ "errors": [ { "status": "429", "code": "rate_limit_exceeded", "detail": "Too many requests. Please retry after 60 seconds." } ] } - · POST asana request · provider traffic · /tasks · HTTP 429 · request b329dc414cb4 · processing 0.26ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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: 0.26ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 429
{ "errors": [ { "status": "429", "code": "rate_limit_exceeded", "detail": "Too many requests. Please retry after 60 seconds." } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs · asana rate limited · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:07.626855+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 485 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 708 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "10", "appliedAt": "2026-10-17T15:50:06.099Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17I0OTNEPG.KGTLKS", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:06.222Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "failed", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded", "errorCode": "asana:rate_limit_exceeded", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:07.117Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:05.260Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:05.985Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:05.987Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:06.099Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:06.222Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:07.116Z", "msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)" }, { "at": "2026-10-17T15:50:07.117Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:50:05.260Z", "updatedAt": "2026-10-17T15:50:07.117Z" } ] } - · POST app request /invocations · asana rate limited · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" } }'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-17T15:50:07.818339+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "590", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" } }Recorded response · HTTP 200
{ "runId": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 485 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 708 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "10", "appliedAt": "2026-10-17T15:50:06.099Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17I0OTNEPG.KGTLKS", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:06.222Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "failed", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded", "errorCode": "asana:rate_limit_exceeded", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:07.117Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:05.260Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:05.985Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:05.987Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:06.099Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:06.222Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:07.116Z", "msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)" }, { "at": "2026-10-17T15:50:07.117Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:07.615Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:05.260Z", "updatedAt": "2026-10-17T15:50:07.615Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs · asana rate limited · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/asana_rate_limited/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:08.113209+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "asana-rate-limited-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "asana_rate_limited" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 485 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 708 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "10", "appliedAt": "2026-10-17T15:50:06.099Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17I0OTNEPG.KGTLKS", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:06.222Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "failed", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "error": "asana 429 rate_limit_exceeded: POST /tasks → 429 rate_limit_exceeded", "errorCode": "asana:rate_limit_exceeded", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 2, "failed": 1, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:07.117Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:05.260Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:05.985Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:05.987Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:06.099Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:06.222Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:07.116Z", "msg": "asana.owner_task:2f23e841e448e200: failed (asana:rate_limit_exceeded)" }, { "at": "2026-10-17T15:50:07.117Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:07.615Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:05.260Z", "updatedAt": "2026-10-17T15:50:07.615Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs · stripe auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:08.306631+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · stripe auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" } }'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-17T15:50:08.740323+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "592", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" } }Recorded response · HTTP 200
{ "runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 210 }, { "name": "account-owners", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 215 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:08.298Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:08.516Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed" }, { "at": "2026-10-17T15:50:08.518Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:50:08.519Z", "msg": "done (partial)" } ], "createdAt": "2026-10-17T15:50:08.298Z", "updatedAt": "2026-10-17T15:50:08.519Z", "duplicate": false } - · GET stripe request · stripe auth failure · /v1/products/prod_SaaS_ProPlan · HTTP 401 · processing 1.8ms
View sanitized request and response
Curl-style request view
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 was not recorded. Provider processing: 1.8ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 401 · request b5f55f0fc4ff · processing 1.8ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.8ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · stripe auth failure · /v1/subscriptions · HTTP 401 · processing 0.65ms
View sanitized request and response
Curl-style request view
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 was not recorded. Provider processing: 0.65ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 401 · request c018aacbe10b · processing 0.65ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 0.65ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · stripe auth failure · /v1/customers · HTTP 401 · processing 0.41ms
View sanitized request and response
Curl-style request view
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 was not recorded. Provider processing: 0.41ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · provider traffic · /v1/customers · HTTP 401 · request 6b578f520188 · processing 0.41ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 0.41ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · stripe auth failure · /v1/subscriptions · HTTP 401 · processing 0.42ms
View sanitized request and response
Curl-style request view
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 was not recorded. Provider processing: 0.42ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 401 · request a6b7252a7892 · processing 0.42ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 0.42ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · stripe auth failure · /v1/prices · HTTP 401 · processing 0.43ms
View sanitized request and response
Curl-style request view
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 was not recorded. Provider processing: 0.43ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · provider traffic · /v1/prices · HTTP 401 · request a9ae073b832c · processing 0.43ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 0.43ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · stripe auth failure · /v1/customers · HTTP 401 · processing 0.62ms
View sanitized request and response
Curl-style request view
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 was not recorded. Provider processing: 0.62ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · provider traffic · /v1/customers · HTTP 401 · request 9a5a1cc475a5 · processing 0.62ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 0.62ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · stripe auth failure · /v1/prices · HTTP 401 · processing 1.37ms
View sanitized request and response
Curl-style request view
curl --request GET '<STRIPE_TWIN_BASE_URL>/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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 was not recorded. Provider processing: 1.37ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET stripe request · provider traffic · /v1/prices · HTTP 401 · request a2a461ed65b6 · processing 1.37ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.37ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 401
{ "error": { "type": "invalid_request_error", "code": "authentication_required", "doc_url": "https://stripe.com/docs/error-codes/authentication-required", "message": "Invalid API key provided. You did not provide a valid API key. Ensure your Authorization header contains a valid Bearer token." } } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs · stripe auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:09.047584+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 210 }, { "name": "account-owners", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 215 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:08.298Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:08.516Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed" }, { "at": "2026-10-17T15:50:08.518Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:50:08.519Z", "msg": "done (partial)" } ], "createdAt": "2026-10-17T15:50:08.298Z", "updatedAt": "2026-10-17T15:50:08.519Z" } ] } - · POST app request /invocations · stripe auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" } }'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-17T15:50:09.251452+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "592", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" } }Recorded response · HTTP 200
{ "runId": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 210 }, { "name": "account-owners", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 215 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:08.298Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:08.516Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed" }, { "at": "2026-10-17T15:50:08.518Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:50:08.519Z", "msg": "done (partial)" }, { "at": "2026-10-17T15:50:09.033Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:08.298Z", "updatedAt": "2026-10-17T15:50:09.034Z", "duplicate": true } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs · stripe auth failure · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/stripe_auth_failure/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:09.544463+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "stripe-auth-failure-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "partial", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "stripe_auth_failure" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 3 }, { "name": "affected-customers", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/products/prod_SaaS_ProPlan → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 210 }, { "name": "account-owners", "status": "failed", "error": "stripe 401 authentication_required: GET /v1/prices → 401 authentication_required", "errorCode": "stripe:authentication_required", "durationMs": 215 } ], "actions": [], "counts": { "applied": 0, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": null, "customers": [], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:08.298Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:08.516Z", "msg": "agents: change-record=ok, affected-customers=failed, account-owners=failed" }, { "at": "2026-10-17T15:50:08.518Z", "msg": "planned 0 action(s): 0 need approval" }, { "at": "2026-10-17T15:50:08.519Z", "msg": "done (partial)" }, { "at": "2026-10-17T15:50:09.033Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:08.298Z", "updatedAt": "2026-10-17T15:50:09.034Z" } ] } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:09.741030+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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 · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" } }'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-17T15:50:11.045553+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "594", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" } }Recorded response · HTTP 200
{ "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "AWAITING_APPROVAL", "closed": false, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 532 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 727 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "11", "appliedAt": "2026-10-17T15:50:10.582Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17TGDMTHMN.RKG7EP", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:10.710Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "96ba0458-959a-48e8-90a0-4adfe490407a", "appliedAt": "2026-10-17T15:50:10.829Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "pending_approval", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 0, "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "pending_approval", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 0, "reconciled": null } ], "counts": { "applied": 3, "failed": 0, "pendingApproval": 3, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:10.831Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:09.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:10.447Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:10.449Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:10.582Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:10.710Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:10.829Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:10.831Z", "msg": "awaiting approval" } ], "createdAt": "2026-10-17T15:50:09.717Z", "updatedAt": "2026-10-17T15:50:10.831Z", "duplicate": false } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request 2a87efcbb9e2 · processing 124.4ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 124.4ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 3, "current_period_end": 78, "current_period_start": 40, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 62, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 69, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 42, "current_period_end": 38, "current_period_start": 28, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 16, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 86, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request 5c5df0ca7f3a · processing 26.69ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 26.69ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/products/prod_SaaS_ProPlan · HTTP 200 · request 77c5a55f6f12 · processing 5ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/products/prod_SaaS_ProPlan' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 5ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "active": true, "created": "2024-06-01T08:00:00Z", "default_price": null, "description": "Full-featured SaaS subscription with priority support and 100GB storage", "id": "prod_SaaS_ProPlan", "images": [], "livemode": false, "marketing_features": [ { "name": "item-f43645" } ], "metadata": { "category": "subscription", "tier": "pro" }, "name": "Pro Plan", "object": "product", "package_dimensions": null, "shippable": null, "statement_descriptor": null, "tax_code": "DEFAULT", "unit_label": "seat", "updated": "2025-01-10T12:00:00Z", "url": "https://acmecorp.com/pricing/pro" } - · GET stripe request · provider traffic · /v1/customers · HTTP 200 · request e7b7fe637fbc · processing 22.25ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/customers' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 22.25ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "cus_QkR3sT4uVwXy5zA6", "object": "customer", "email": "[email protected]", "name": "Alice Johnson", "phone": "+14155550101", "description": "Acme Corp enterprise account", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2024-09-01T10:00:00Z", "metadata": { "plan": "enterprise", "account_manager": "[email protected]" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null }, { "id": "cus_BcD4eF5gH6iJ7kL8", "object": "customer", "email": "[email protected]", "name": "StartupXYZ Inc", "phone": "+12125558888", "description": "Startup customer on growth plan", "currency": "usd", "balance": 0, "delinquent": false, "livemode": false, "created": "2025-01-15T09:30:00Z", "metadata": { "plan": "growth", "referral": "product_hunt" }, "address": null, "cash_balance": null, "customer_account": null, "default_source": null, "discount": null, "invoice_prefix": null, "preferred_locales": null, "shipping": null, "tax_exempt": null, "test_clock": null } ], "has_more": false, "object": "list", "url": "/v1/customers" } - · GET stripe request · provider traffic · /v1/subscriptions · HTTP 200 · request f5c66bb82319 · processing 102.37ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/subscriptions' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 102.37ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "sub_3QaT2bVwXy5zA6Bc7D", "object": "subscription", "customer": "cus_QkR3sT4uVwXy5zA6", "status": "active", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": null, "trial_end": null, "default_payment_method": "pm_card_visa_4242", "items": { "object": "list", "data": [ { "id": "si_abc123def456", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 5, "created": 9, "current_period_end": 34, "current_period_start": 63, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_3QaT2bVwXy5zA6Bc7D", "livemode": false, "created": "2024-09-01T10:05:00Z", "metadata": { "seats": "5" }, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 33, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 60, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null }, { "id": "sub_7EfG8hIjKl9mN0Op1Q", "object": "subscription", "customer": "cus_BcD4eF5gH6iJ7kL8", "status": "past_due", "cancel_at_period_end": false, "canceled_at": null, "ended_at": null, "trial_start": "2025-01-15T00:00:00Z", "trial_end": "2025-01-22T00:00:00Z", "default_payment_method": "pm_card_mastercard_4444", "items": { "object": "list", "data": [ { "id": "si_ghi789jkl012", "object": "subscription_item", "price": "price_1Pro_Monthly_USD", "quantity": 1, "created": 9, "current_period_end": 29, "current_period_start": 31, "discounts": [ "sample-value" ], "metadata": {}, "subscription": "sample-value" } ], "has_more": true, "url": "sample-value" }, "latest_invoice": "in_7EfG8hIjKl9mN0Op1Q", "livemode": false, "created": "2025-01-15T09:35:00Z", "metadata": {}, "automatic_tax": { "disabled_reason": "requires_location_inputs", "enabled": true }, "billing_cycle_anchor": 33, "billing_mode": { "type": "classic" }, "collection_method": "charge_automatically", "currency": "sample-value", "discounts": [ "sample-value" ], "invoice_settings": { "issuer": { "type": "account" } }, "start_date": 95, "application": null, "application_fee_percent": null, "billing_cycle_anchor_config": null, "billing_thresholds": null, "cancel_at": null, "cancellation_details": null, "customer_account": null, "days_until_due": null, "default_source": null, "default_tax_rates": null, "description": null, "next_pending_invoice_item_invoice": null, "on_behalf_of": null, "pause_collection": null, "payment_settings": null, "pending_invoice_item_interval": null, "pending_setup_intent": null, "pending_update": null, "schedule": null, "test_clock": null, "transfer_data": null, "trial_settings": null } ], "has_more": false, "object": "list", "url": "/v1/subscriptions" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request 0e36da955b6e · processing 2.22ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 2.22ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · GET stripe request · provider traffic · /v1/prices · HTTP 200 · request ea3520dd0dcd · processing 1.9ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/91e96e7817/v1/prices' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.9ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "data": [ { "id": "price_1Pro_Monthly_USD", "object": "price", "active": true, "currency": "usd", "unit_amount": 4900, "unit_amount_decimal": "4900", "product": "prod_SaaS_ProPlan", "type": "recurring", "recurring": { "interval": "month", "interval_count": 1, "usage_type": "licensed", "aggregate_usage": null }, "billing_scheme": "per_unit", "livemode": false, "created": "2024-06-01T08:00:00Z", "metadata": {}, "custom_unit_amount": null, "lookup_key": null, "nickname": null, "tax_behavior": null, "tiers_mode": null, "transform_quantity": null } ], "has_more": false, "object": "list", "url": "/v1/prices" } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 5f31e6d6c85c · processing 1.38ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.38ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "222", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST hubspot request · provider traffic · /crm/v3/objects/contacts/search · HTTP 200 · request 357796e53878 · processing 1.31ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/1a0e24753f/crm/v3/objects/contacts/search' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }'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: 1.31ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "221", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "filterGroups": [ { "filters": [ { "propertyName": "email", "operator": "EQ", "value": "[email protected]" } ] } ], "properties": [ "email", "firstname", "lastname", "company", "lifecyclestage", "hs_lead_status", "hubspot_owner_id" ], "limit": 10 }Recorded response · HTTP 200
{ "total": 0, "results": [] } - · POST github request · provider traffic · /repos/acme/plm/issues · HTTP 201 · request 30bd62b64b74 · processing 11.6ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }'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.6ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "337", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life" ], "state": "open", "owner": "acme", "repo": "plm" }Recorded response · HTTP 201
{ "id": 15, "number": 11, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:50:10.621414+00:00", "updated_at": "2026-10-17T15:50:10.621438+00:00", "closed_at": null, "owner": "acme", "repo": "plm" } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 0558d6902301 · processing 13.38ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/297dbe4b13/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "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.38ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "311", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0GENERAL01", "text": "*End-of-life*: Gen-2 level switch reaches end of life — Pro Plan, effective 2027-03-31, last-time-buy 2027-01-31. 2 affected customer(s); notices await approval.\n• [email protected] · no owner\n• [email protected] · no owner", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0GENERAL01", "message": { "bot_id": "bot_f2308c1d5d964d0fb37bd40cb9", "client_msg_id": "cli_3eb23604467d4fa3bcf863ca70", "name": "item-7c3799", "old_name": "Sample Old", "parent_user_id": "par_b2bf908dea56404e8ded615335", "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": "17TGDMTHMN.RKG7EP" } - · POST asana request · provider traffic · /tasks · HTTP 201 · request 0c270ce0be16 · processing 12.82ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/151c9d3f35/tasks' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }'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: 12.82ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "370", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" } }Recorded response · HTTP 201
{ "data": { "name": "End-of-life follow-up (unassigned): Gen-2 level switch reaches end of life", "notes": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAccounts: [email protected], [email protected]", "workspace": "acme-eng", "due_on": "2027-01-31" }, "id": "96ba0458-959a-48e8-90a0-4adfe490407a" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:11.294048+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:11.488212+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:11.925534+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:12.374876+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:12.819325+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:13.259473+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:13.718967+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:14.154418+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:14.591764+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:15.047476+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:15.494958+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:15.918946+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:16.376848+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:16.806822+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "c3a8796e-c1e4-4e1a-a709-52b33237adce", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:49:35.340Z" } - · GET app request /verify/runtime · restart while parked · HTTP 502
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:17.250219+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "text/html; charset=UTF-8", "content-length": "6418", "retry-after": "60" }Request body
This request had no body.
Recorded response · HTTP 502
No response body was saved.
- · GET app request /verify/runtime · restart while parked · HTTP 502
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:17.719094+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "text/html; charset=UTF-8", "content-length": "6418", "retry-after": "60" }Request body
This request had no body.
Recorded response · HTTP 502
No response body was saved.
- · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:18.151234+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · POST app request /invocations · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }'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-17T15:50:19.012479+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "135", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }Recorded response · HTTP 200
{ "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 532 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 727 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "11", "appliedAt": "2026-10-17T15:50:10.582Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17TGDMTHMN.RKG7EP", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:10.710Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "96ba0458-959a-48e8-90a0-4adfe490407a", "appliedAt": "2026-10-17T15:50:10.829Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded", "appliedAt": "2026-10-17T15:50:18.395Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850", "appliedAt": "2026-10-17T15:50:18.534Z", "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "11", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:50:18.787Z", "reconciled": null } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:10.831Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:50:18.133Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:09.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:10.447Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:10.449Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:10.582Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:10.710Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:10.829Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:10.831Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:18.133Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:50:18.395Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:50:18.534Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:50:18.787Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:50:18.789Z", "msg": "done (ok)" } ], "createdAt": "2026-10-17T15:50:09.717Z", "updatedAt": "2026-10-17T15:50:18.789Z", "result": "recorded" } - · POST gmail request · provider traffic · /gmail/v1/users/me/drafts · HTTP 200 · request 1ed8354a51b0 · processing 12.94ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "message": { "raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDxiZmFkMDM5ZmMxNDY5MjgzLnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n" }, "user_id": "me" }'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: 12.94ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "762", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "message": { "raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDxiZmFkMDM5ZmMxNDY5MjgzLnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n" }, "user_id": "me" }Recorded response · HTTP 200
{ "id": "e741f456-2d84-4da0-bacf-e4c39a7d7ded", "message": { "raw": "RnJvbTogbWUNClRvOiBhbGljZUBhY21lY29ycC5jb20NClN1YmplY3Q6IEVuZC1vZi1saWZlIG5vdGljZTogUHJvIFBsYW4NCk1lc3NhZ2UtSUQ6IDxiZmFkMDM5ZmMxNDY5MjgzLnBjbi0zMzEzODEyOGY4ODI4ZTk4QG9wcy5hY21lLmV4YW1wbGU-DQpNSU1FLVZlcnNpb246IDEuMA0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQNCg0KSGkgQWxpY2UsCgpXZSdyZSB3cml0aW5nIGFib3V0IFBybyBQbGFuLCB3aGljaCB5b3VyIGFjY291bnQgdXNlcy4KClRoZSBHZW4tMiBsZXZlbCBzd2l0Y2ggaXMgcmVwbGFjZWQgYnkgR2VuLTMgKGZvcm0tZml0IGNvbXBhdGlibGUpLiBPcmRlcnMgYWZ0ZXIgdGhlIGxhc3QtdGltZS1idXkgZGF0ZSBzaGlwIEdlbi0zLgoKRWZmZWN0aXZlIGRhdGU6IDIwMjctMDMtMzEKTGFzdC10aW1lLWJ1eSBkYXRlOiAyMDI3LTAxLTMxCgpZb3VyIGFjY291bnQgdGVhbSB3aWxsIGZvbGxvdyB1cCBvbiBuZXh0IHN0ZXBzLgoKQUNNRSBQcm9kdWN0IEVuZ2luZWVyaW5n" }, "user_id": "me" } - · POST gmail request · provider traffic · /gmail/v1/users/me/drafts · HTTP 200 · request d60805b3db1b · processing 11.99ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/76b45b8bd0/gmail/v1/users/me/drafts' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "message": { "raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPDQzYjkyYzc2YjJlMTY1N2UucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw" }, "user_id": "me" }'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.99ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "768", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "message": { "raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPDQzYjkyYzc2YjJlMTY1N2UucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw" }, "user_id": "me" }Recorded response · HTTP 200
{ "id": "d4fa7e04-3632-4c89-af97-fb43a2b1c850", "message": { "raw": "RnJvbTogbWUNClRvOiBkZXZAc3RhcnR1cHh5ei5pbw0KU3ViamVjdDogRW5kLW9mLWxpZmUgbm90aWNlOiBQcm8gUGxhbg0KTWVzc2FnZS1JRDogPDQzYjkyYzc2YjJlMTY1N2UucGNuLTJkYzY1OTJmNDIxNDNkMmRAb3BzLmFjbWUuZXhhbXBsZT4NCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9IlVURi04Ig0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdA0KDQpIaSBTdGFydHVwWFlaLAoKV2UncmUgd3JpdGluZyBhYm91dCBQcm8gUGxhbiwgd2hpY2ggeW91ciBhY2NvdW50IHVzZXMuCgpUaGUgR2VuLTIgbGV2ZWwgc3dpdGNoIGlzIHJlcGxhY2VkIGJ5IEdlbi0zIChmb3JtLWZpdCBjb21wYXRpYmxlKS4gT3JkZXJzIGFmdGVyIHRoZSBsYXN0LXRpbWUtYnV5IGRhdGUgc2hpcCBHZW4tMy4KCkVmZmVjdGl2ZSBkYXRlOiAyMDI3LTAzLTMxCkxhc3QtdGltZS1idXkgZGF0ZTogMjAyNy0wMS0zMQoKWW91ciBhY2NvdW50IHRlYW0gd2lsbCBmb2xsb3cgdXAgb24gbmV4dCBzdGVwcy4KCkFDTUUgUHJvZHVjdCBFbmdpbmVlcmluZw" }, "user_id": "me" } - · GET github request · provider traffic · /repos/acme/plm/issues/11 · HTTP 200 · request e24fad967132 · processing 1.53ms
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/11' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c'
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: 1.53ms.
Recorded request headers
{ "host": "fetchsandbox.com", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c" }Recorded response headers
Response headers were not saved in this run.
Request body
No body shown for this read.
Recorded response · HTTP 200
{ "id": 15, "number": 11, "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "state": "open", "labels": [ "pcn", "end_of_life" ], "assignees": [], "comments": 0, "created_at": "2026-10-17T15:50:10.621414+00:00", "updated_at": "2026-10-17T15:50:10.621438+00:00", "closed_at": null } - · PATCH github request · provider traffic · /repos/acme/plm/issues/11 · HTTP 200 · request 9bcd4513a4b9 · processing 12.83ms
View sanitized request and response
Curl-style request view
curl --request PATCH 'https://fetchsandbox.com/sandbox/f58e5f23dc/repos/acme/plm/issues/11' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "labels": [ "pcn", "end_of_life", "customers-notified" ] }'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: 12.83ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "53", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "labels": [ "pcn", "end_of_life", "customers-notified" ] }Recorded response · HTTP 200
{ "title": "End-of-life: Gen-2 level switch reaches end of life", "body": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.\n\nProduct: prod_SaaS_ProPlan (Pro Plan)\nDates: effective 2027-03-31, last-time-buy 2027-01-31\nAffected customers: 2", "labels": [ "pcn", "end_of_life", "customers-notified" ], "state": "open", "owner": "acme", "repo": "plm", "number": 11, "id": 15, "assignees": [], "comments": 0, "created_at": "2026-10-17T15:50:10.621414+00:00", "updated_at": "2026-10-17T15:50:10.621438+00:00", "closed_at": null } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:19.304865+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" }, "duplicateStarts": 0, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 532 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 727 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "11", "appliedAt": "2026-10-17T15:50:10.582Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17TGDMTHMN.RKG7EP", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:10.710Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "96ba0458-959a-48e8-90a0-4adfe490407a", "appliedAt": "2026-10-17T15:50:10.829Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded", "appliedAt": "2026-10-17T15:50:18.395Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850", "appliedAt": "2026-10-17T15:50:18.534Z", "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "11", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:50:18.787Z", "reconciled": null } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:10.831Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:50:18.133Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:09.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:10.447Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:10.449Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:10.582Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:10.710Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:10.829Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:10.831Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:18.133Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:50:18.395Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:50:18.534Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:50:18.787Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:50:18.789Z", "msg": "done (ok)" } ], "createdAt": "2026-10-17T15:50:09.717Z", "updatedAt": "2026-10-17T15:50:18.789Z" } ] } - · POST app request /invocations · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" } }'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-17T15:50:19.493606+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "594", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "input": { "repo": "acme/plm", "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "title": "Gen-2 level switch reaches end of life", "summary": "The Gen-2 level switch is replaced by Gen-3 (form-fit compatible). Orders after the last-time-buy date ship Gen-3.", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "notifyChannel": "C0GENERAL01", "approvers": [ "U_VP_ENGINEERING" ] }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" } }Recorded response · HTTP 200
{ "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 532 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 727 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "11", "appliedAt": "2026-10-17T15:50:10.582Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17TGDMTHMN.RKG7EP", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:10.710Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "96ba0458-959a-48e8-90a0-4adfe490407a", "appliedAt": "2026-10-17T15:50:10.829Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded", "appliedAt": "2026-10-17T15:50:18.395Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850", "appliedAt": "2026-10-17T15:50:18.534Z", "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "11", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:50:18.787Z", "reconciled": null } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:10.831Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:50:18.133Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:09.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:10.447Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:10.449Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:10.582Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:10.710Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:10.829Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:10.831Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:18.133Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:50:18.395Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:50:18.534Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:50:18.787Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:50:18.789Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:50:19.280Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:09.717Z", "updatedAt": "2026-10-17T15:50:19.280Z", "duplicate": true } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:19.679668+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:19.909251+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:20.345870+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:20.784813+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:21.239865+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:21.671274+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:22.105709+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:22.569308+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:23.002215+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:23.451283+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:23.892842+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:24.328467+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:24.748720+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:25.232617+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:25.666418+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:26.110583+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:26.555349+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:26.995037+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:27.427516+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:27.879855+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:28.311139+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:28.762445+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:29.203998+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:29.655751+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "e22d7d5d-1405-4978-8dd0-9885ababeeec", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:17.586Z" } - · GET app request /verify/runtime · restart while parked · HTTP 502
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:30.110168+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "text/html; charset=UTF-8", "content-length": "6418", "retry-after": "60" }Request body
This request had no body.
Recorded response · HTTP 502
No response body was saved.
- · GET app request /verify/runtime · restart while parked · HTTP 502
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:30.556899+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "text/html; charset=UTF-8", "content-length": "6418", "retry-after": "60" }Request body
This request had no body.
Recorded response · HTTP 502
No response body was saved.
- · GET app request /verify/runtime · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runtime' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:31.014104+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "instance_id": "8f6703b0-3e59-4e43-abb1-6a954e305240", "workflow": "pcn-eol-notice", "startedAt": "2026-10-17T15:50:30.372Z" } - · POST app request /invocations · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "decide", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }'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-17T15:50:31.221733+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "135", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "decide", "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "decision": "approve", "userId": "U_VP_ENGINEERING" }Recorded response · HTTP 200
{ "runId": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 532 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 727 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "11", "appliedAt": "2026-10-17T15:50:10.582Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17TGDMTHMN.RKG7EP", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:10.710Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "96ba0458-959a-48e8-90a0-4adfe490407a", "appliedAt": "2026-10-17T15:50:10.829Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded", "appliedAt": "2026-10-17T15:50:18.395Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850", "appliedAt": "2026-10-17T15:50:18.534Z", "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "11", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:50:18.787Z", "reconciled": null } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:10.831Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:50:18.133Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:09.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:10.447Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:10.449Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:10.582Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:10.710Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:10.829Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:10.831Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:18.133Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:50:18.395Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:50:18.534Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:50:18.787Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:50:18.789Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:50:19.280Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:09.717Z", "updatedAt": "2026-10-17T15:50:31.015Z", "result": "already_decided" } - · GET app request /verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs · restart while parked · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/7f24e04cba61d6d99c449e8780c5dd5cb1fe84d8c80e9d79/verify/runs/vr_851466eb937c45e282a501a9e2697d6c/cases/restart_while_parked/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_851466eb937c45e282a501a9e2697d6c' \ --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-17T15:50:31.531971+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_851466eb937c45e282a501a9e2697d6c", "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": "restart-while-parked-vr_851466eb937c45e282a501a9e2697d6c", "workflow": "pcn-eol-notice", "org": "Engineering", "team": "product-engineering", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_851466eb937c45e282a501a9e2697d6c", "fs_case": "restart_while_parked" }, "duplicateStarts": 1, "agents": [ { "name": "change-record", "status": "ok", "summary": "no record yet: one will be opened", "durationMs": 2 }, { "name": "affected-customers", "status": "ok", "summary": "2 customer(s) on Pro Plan", "durationMs": 532 }, { "name": "account-owners", "status": "ok", "summary": "0/2 owner(s) found", "durationMs": 727 } ], "actions": [ { "id": "github.open_change_record", "kind": "github.open_change_record", "provider": "github", "agent": "change-record", "gate": "auto", "status": "applied", "summary": { "repo": "acme/plm", "title": "Gen-2 level switch reaches end of life", "labels": [ "pcn", "end_of_life" ] }, "attempts": 1, "ref": "11", "appliedAt": "2026-10-17T15:50:10.582Z", "reconciled": null }, { "id": "slack.post_change_summary", "kind": "slack.post_change_summary", "provider": "slack", "agent": "affected-customers", "gate": "auto", "status": "applied", "summary": { "channel": "C0GENERAL01", "customers": 2 }, "attempts": 1, "ref": "17TGDMTHMN.RKG7EP", "detail": { "channel": "C0GENERAL01" }, "appliedAt": "2026-10-17T15:50:10.710Z", "reconciled": null }, { "id": "asana.owner_task:2f23e841e448e200", "kind": "asana.owner_task", "provider": "asana", "agent": "account-owners", "gate": "auto", "status": "applied", "summary": { "owner": "unassigned", "accounts": [ "[email protected]", "[email protected]" ] }, "attempts": 1, "ref": "96ba0458-959a-48e8-90a0-4adfe490407a", "appliedAt": "2026-10-17T15:50:10.829Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:33138128f8828e98", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "e741f456-2d84-4da0-bacf-e4c39a7d7ded", "appliedAt": "2026-10-17T15:50:18.395Z", "reconciled": null }, { "id": "gmail.draft_customer_notice:2dc6592f42143d2d", "kind": "gmail.draft_customer_notice", "provider": "gmail", "agent": "affected-customers", "gate": "approval", "status": "applied", "summary": { "to": "[email protected]", "product": "Pro Plan", "sent": false }, "attempts": 1, "ref": "d4fa7e04-3632-4c89-af97-fb43a2b1c850", "appliedAt": "2026-10-17T15:50:18.534Z", "reconciled": null }, { "id": "github.mark_customers_notified", "kind": "github.mark_customers_notified", "provider": "github", "agent": "change-record", "gate": "approval", "status": "applied", "summary": { "repo": "acme/plm", "issue": "opened by this run", "addLabel": "customers-notified" }, "attempts": 1, "ref": "11", "detail": { "labels": [ "pcn", "end_of_life", "customers-notified" ] }, "appliedAt": "2026-10-17T15:50:18.787Z", "reconciled": null } ], "counts": { "applied": 6, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0 }, "approval": { "approvers": [ "U_VP_ENGINEERING" ], "expiresAt": "2026-10-18T15:50:10.831Z", "decision": "approve", "decidedBy": "U_VP_ENGINEERING", "decidedAt": "2026-10-17T15:50:18.133Z" }, "output": { "productId": "prod_SaaS_ProPlan", "kind": "end_of_life", "effectiveDate": "2027-03-31", "lastTimeBuy": "2027-01-31", "affectedCustomers": 2, "customers": [ "[email protected]", "[email protected]" ], "recordProvided": false }, "events": [ { "at": "2026-10-17T15:50:09.717Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-17T15:50:10.447Z", "msg": "agents: change-record=ok, affected-customers=ok, account-owners=ok" }, { "at": "2026-10-17T15:50:10.449Z", "msg": "planned 6 action(s): 3 need approval" }, { "at": "2026-10-17T15:50:10.582Z", "msg": "github.open_change_record: applied" }, { "at": "2026-10-17T15:50:10.710Z", "msg": "slack.post_change_summary: applied" }, { "at": "2026-10-17T15:50:10.829Z", "msg": "asana.owner_task:2f23e841e448e200: applied" }, { "at": "2026-10-17T15:50:10.831Z", "msg": "awaiting approval" }, { "at": "2026-10-17T15:50:18.133Z", "msg": "approved by U_VP_ENGINEERING" }, { "at": "2026-10-17T15:50:18.395Z", "msg": "gmail.draft_customer_notice:33138128f8828e98: applied" }, { "at": "2026-10-17T15:50:18.534Z", "msg": "gmail.draft_customer_notice:2dc6592f42143d2d: applied" }, { "at": "2026-10-17T15:50:18.787Z", "msg": "github.mark_customers_notified: applied" }, { "at": "2026-10-17T15:50:18.789Z", "msg": "done (ok)" }, { "at": "2026-10-17T15:50:19.280Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-17T15:50:09.717Z", "updatedAt": "2026-10-17T15:50:31.015Z" } ] }
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.