Method Financial Forwarding Requests API
Request forwarding with sensitive data injection
Request forwarding with sensitive data injection
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/method-financial-forwarding-requests-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Method Forwarding Requests API
version: '2026-03-30'
license:
name: Proprietary
url: https://methodfi.com
description: "The Method API enables you to retrieve financial data, create payments, and manage\nentities and accounts programmatically. This specification covers the public API\nsurface for version `2026-03-30`.\n\n## Authentication\n\nMost API requests require a Bearer token in the `Authorization` header.\nUse your secret key (`sk_...`) for server-side requests and public key (`pk_...`)\nfor client-side Element requests. Public Message-Level Encryption key discovery\nendpoints are documented separately and do not require authentication.\n\n## Versioning\n\nThe API version is selected via the `Method-Version` header. This spec targets\nversion `2026-03-30`. The SDK sets this header automatically.\n\n## Response Envelope\n\nMost JSON responses are wrapped in a standard envelope:\n\n```json\n{\n \"success\": true,\n \"data\": { ... },\n \"message\": null\n}\n```\n\nThe `/.well-known/jwks.json` endpoint is an exception and returns a bare JWK set.\n\n## Pagination\n\nList endpoints return pagination metadata in response headers:\n`Pagination-Page`, `Pagination-Page-Count`, `Pagination-Page-Limit`,\n`Pagination-Total-Count`, `Pagination-Page-Cursor-Prev`, `Pagination-Page-Cursor-Next`.\n\n## Expandable Fields\n\nCertain resource fields can be expanded from IDs to full objects using the\n`expand` query parameter. Maximum nesting depth is 4 levels.\n"
contact:
name: Method Financial
url: https://methodfi.com
email: team@methodfi.com
servers:
- url: https://production.methodfi.com
description: Production
x-fern-server-name: Production
- url: https://sandbox.methodfi.com
description: Sandbox
x-fern-server-name: Sandbox
- url: https://dev.methodfi.com
description: Development
x-fern-server-name: Development
security:
- SecretKey: []
tags:
- name: Forwarding Requests
description: Request forwarding with sensitive data injection
paths:
/forwarding_requests:
post:
operationId: createForwardingRequest
summary: Create a forwarding request
description: 'Creates a new forwarding request that proxies an HTTP request to a third-party endpoint with sensitive data injection.
Forwarding-specific validation and execution failures are returned in the standard error envelope.
Common forwarding `sub_type` values include `URL_NOT_ALLOWED`, `INVALID_METHOD`,
`BODY_JSON_INVALID`, `BINDING_NOT_FOUND`, `FORWARDED_REQUEST_NETWORK_ERROR`,
and `FORWARDED_REQUEST_TIMEOUT`.
'
tags:
- Forwarding Requests
security:
- SecretKey: []
parameters:
- $ref: '#/components/parameters/method_version'
- $ref: '#/components/parameters/idempotency_key'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ForwardingRequestCreateRequest'
responses:
'200':
description: The created forwarding request with response data.
content:
application/json:
schema:
$ref: '#/components/schemas/ForwardingRequestResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'422':
$ref: '#/components/responses/UnprocessableEntity'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
'504':
$ref: '#/components/responses/GatewayTimeout'
/forwarding_requests/{id}:
get:
operationId: retrieveForwardingRequest
summary: Retrieve a forwarding request
description: Returns a single forwarding request by its identifier.
tags:
- Forwarding Requests
security:
- SecretKey: []
parameters:
- $ref: '#/components/parameters/method_version'
- name: id
in: path
required: true
description: Unique identifier for the forwarding request.
schema:
type: string
pattern: ^freq_\w+$
responses:
'200':
description: The requested forwarding request.
content:
application/json:
schema:
$ref: '#/components/schemas/ForwardingRequestResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/RateLimited'
'500':
$ref: '#/components/responses/InternalError'
components:
parameters:
idempotency_key:
name: Idempotency-Key
in: header
required: false
description: 'Idempotency key for safely retrying a write request. Reuse the same value when
retrying the same logical operation to avoid creating duplicate side effects.
'
schema:
type: string
format: uuid
method_version:
name: Method-Version
in: header
required: true
description: 'API version to use for this request. This spec targets `2026-03-30`.
The SDK sets this header automatically.
'
schema:
type: string
enum:
- '2026-03-30'
default: '2026-03-30'
schemas:
StatusHistoryItem:
type: object
properties:
status:
type: string
timestamp:
type: string
format: date-time
JsonValue:
description: Arbitrary JSON value.
oneOf:
- type: string
- type: number
- type: boolean
- type: 'null'
- type: object
additionalProperties: true
- type: array
items: {}
ForwardingResponseDetail:
type: object
description: Details of the upstream response captured for the forwarding request.
properties:
status_code:
type:
- integer
- 'null'
description: HTTP status code returned by the destination.
headers:
type: object
additionalProperties:
type: string
description: HTTP headers returned by the destination.
body:
$ref: '#/components/schemas/JsonValue'
description: Body returned by the destination.
ForwardingRequest:
type: object
required:
- id
- bindings
- request
- response
- duration_ms
- status
- status_history
- created_at
properties:
id:
type: string
description: Unique identifier for the forwarding request.
example: freq_yVf3mkzbhz9tj
bindings:
type: object
additionalProperties:
type: string
description: Key-value map of secret bindings used in the request.
request:
$ref: '#/components/schemas/ForwardingRequestDetail'
response:
$ref: '#/components/schemas/ForwardingResponseDetail'
duration_ms:
type: number
description: Total duration of the forwarded request in milliseconds.
status:
$ref: '#/components/schemas/ForwardingRequestStatus'
status_history:
type: array
items:
$ref: '#/components/schemas/StatusHistoryItem'
description: History of status transitions.
created_at:
type: string
format: date-time
description: Timestamp when the forwarding request was created.
ForwardingRequestDetail:
type: object
required:
- url
- method
- headers
- body
properties:
url:
type: string
description: The destination URL for the forwarded request.
method:
type: string
enum:
- GET
- POST
- PUT
- PATCH
- DELETE
description: HTTP method of the forwarded request.
headers:
type: object
additionalProperties:
type: string
description: HTTP headers sent with the forwarded request.
body:
type: string
description: Body of the forwarded request.
ForwardingRequestCreateRequest:
type: object
required:
- url
- method
- bindings
- headers
- body
properties:
url:
type: string
description: The destination URL for the forwarded request.
method:
type: string
enum:
- GET
- POST
- PUT
- PATCH
- DELETE
description: HTTP method to use.
headers:
type: object
additionalProperties:
type: string
description: HTTP headers to include in the forwarded request.
body:
type: string
description: Body to send with the forwarded request.
bindings:
type: object
additionalProperties:
type: string
description: Key-value map of secret bindings to inject into the request.
metadata:
type:
- object
- 'null'
description: Optional metadata to attach to the forwarding request.
ForwardingRequestResponse:
allOf:
- $ref: '#/components/schemas/SuccessEnvelope'
- type: object
properties:
data:
$ref: '#/components/schemas/ForwardingRequest'
ErrorEnvelope:
type: object
required:
- success
- data
- message
properties:
success:
type: boolean
description: Always `false` for error responses.
data:
type: object
required:
- error
properties:
error:
$ref: '#/components/schemas/ErrorObject'
message:
type: string
ErrorObject:
type: object
required:
- type
- code
- message
properties:
type:
type: string
description: Error type category.
enum:
- invalid_request
- api_error
- resource_error
code:
type: integer
description: Numeric error code. Common codes include 400 (bad request), 401 (unauthorized), 403 (forbidden), 404 (not found), 422 (unprocessable entity), 429 (rate limited), and 500 (internal error).
sub_type:
type:
- string
- 'null'
description: More specific error classification.
message:
type: string
description: Human-readable error description.
ForwardingRequestStatus:
type: string
enum:
- completed
- failed
SuccessEnvelope:
type: object
description: Standard envelope for successful responses that return a single payload.
required:
- success
- data
- message
properties:
success:
type: boolean
description: Always `true` for successful responses.
data:
description: Operation-specific response payload.
message:
type:
- string
- 'null'
example:
success: true
data: {}
message: null
responses:
Unauthorized:
description: Unauthorized - missing or invalid authentication token.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
InternalError:
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
Forbidden:
description: Forbidden - insufficient permissions for this operation.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
RateLimited:
description: Too many requests - rate limit exceeded.
headers:
Retry-After:
description: Number of seconds to wait before retrying.
schema:
type: integer
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
BadRequest:
description: Bad request - invalid parameters or request body.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
NotFound:
description: Not found - the requested resource does not exist.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
GatewayTimeout:
description: Upstream timeout - the request could not be completed before the upstream deadline.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
UnprocessableEntity:
description: Unprocessable entity - the request was valid JSON but failed business or validation rules.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
securitySchemes:
OpalToken:
type: http
scheme: bearer
description: 'Opal token authentication for Opal session endpoints. Use an Opal token (`otkn_...`)
as the Bearer token. Created via POST /opal/token using a secret key.
'
SecretKey:
type: http
scheme: bearer
description: 'Secret key authentication. Use your team''s secret key (`sk_...`) as the Bearer token.
All authenticated API endpoints require this scheme unless otherwise noted.
'