---
title: "Run sandbox bank callback dry-run"
method: POST
path: "/banks/current/callbacks"
tags: ["Banks"]
---

# Run sandbox bank callback dry-run

`POST /banks/current/callbacks`

## Request

- Base URL: `https://platform-api.homejourney.sg/v1`
- URL: `https://platform-api.homejourney.sg/v1/banks/current/callbacks`
- Auth: HTTP bearer

Returns deterministic sandbox bank callback dry-run metadata when the authenticated automation client has `banks.callbacks.manage`. External URL: `/v1/banks/current/callbacks`. Current Next.js implementation path: `/api/platform/v1/banks/current/callbacks`. This sandbox-only route requires `Idempotency-Key` and validates callback signing/replay boundaries without delivering callbacks, calling providers, writing bank systems, creating applications, exposing callback signing secrets, exposing raw request/response bodies, exposing borrower contact data, or claiming API Gateway/mTLS readiness. Live bank callback delivery remains unavailable until promotion gates have REST, consent, audit, sandbox, mTLS-ready callback, operations, and enterprise-ingress evidence. Bank pilot posture remains information/referral and pre-approval only, recommendation and live bank-decision claims remain deferred, and partner-status publication remains private-first.

## Headers

- `X-Correlation-Id` string
- `Idempotency-Key` string, required

## Request body

- PlatformBankCallbackRequest
  - `action` 'request_banker_callback' | 'test_delivery'
  - `application_id` string

## Response `202`

Sandbox bank callback dry-run metadata.

- PlatformBankCallbackResponse
  - `callback` PlatformBankCallbackSummary, required
    - `id` string, required
    - `sandbox_fixture_id` string, required
    - `action` 'request_banker_callback' | 'test_delivery', required
    - `application_id` string, required
    - `event_type` 'bank.callback_requested' | 'bank.callback_failed', required
    - `delivery_state` 'dry_run_not_delivered' | 'deferred_until_live_callback_promotion', required
    - `safe_display_label` string, required
    - `signed_payload_required` true, required
    - `replay_protection_required` true, required
    - `idempotency_key_required` true, required
    - `redacted_payload_only` true, required
    - `idempotency_key_hash` string, required: Redacted sha256 hash of the supplied Idempotency-Key.
    - `raw_payload_exposed` false, required
    - `signing_secret_exposed` false, required
    - `livemode` false, required
    - `created_at` string, date-time, required
  - `callback_boundary` PlatformBankCallbackBoundary, required
    - `sandbox_only` true, required
    - `callback_metadata_only` true, required
    - `live_callback_delivery_deferred` true, required
    - `bank_secrets_redacted` true, required
    - `signing_secret_redacted` true, required
    - `raw_payload_redacted` true, required
    - `request_response_bodies_redacted` true, required
    - `borrower_contact_redacted` true, required
    - `customer_pii_redacted` true, required
    - `provider_call_deferred` true, required
    - `bank_system_write_deferred` true, required
    - `application_write_deferred` true, required
    - `mtls_deferred` true, required
    - `api_gateway_custom_domain_deferred` true, required
    - `callback_delivery_enabled` false, required
  - `side_effects` PlatformBankSandboxSideEffects, required
    - `live_callback_sent` false, required
    - `email_sent` false, required
    - `sms_sent` false, required
    - `whatsapp_sent` false, required
    - `document_link_sent` false, required
    - `bank_system_write_performed` false, required
    - `payment_event_created` false, required
    - `production_webhook_sent` false, required
  - `livemode` false, required
  - `request_id` string, required

## Other responses

- `400`: Request validation failed.
- `401`: Missing or invalid platform API key.
- `403`: Credential, environment, or scope is not allowed.
- `404`: Platform API feature or resource is not available.
- `409`: Idempotency key is in progress or conflicts with an earlier request body.
- `429`: Rate limit exceeded.
- `500`: Unexpected platform API failure.

---

[API](https://skmtc.dev/homejourney/apis/homejourney-platform-api.md) · [All operations](https://skmtc.dev/homejourney/apis/homejourney-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/homejourney/apis/homejourney-platform-api/revisions/a2c6fe063db1?raw)
