---
title: "Get Wire Transfer"
method: GET
path: "/accounts/{account_id}/wires/{wire_transfer_id}"
tags: ["Transfers"]
---

# Get Wire Transfer

`GET /accounts/{account_id}/wires/{wire_transfer_id}`

## Request

- Base URL: `https://api.meow.com/v1`
- URL: `https://api.meow.com/v1/accounts/{account_id}/wires/{wire_transfer_id}`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/meow/apis/meow-api/docs/accounts/:account_id/wires/:wire_transfer_id/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns details about a wire transfer (incoming or outgoing) for the specified account by wire transfer ID, including the status of an outgoing wire after it has been initiated.

## Path parameters

- `account_id` string, required: The ID of the account.
- `wire_transfer_id` string, required: The transaction group ID for the wire transfer (e.g. `withdrawal_wire_...`), the wire ID returned when you created the transfer (e.g. `wire_...`), or the ID of an inbound wire (e.g. `iw_...`).

## Headers

- `x-entity-id` string, uuid

## Response `200`

Successful Response

- WireTransferResponse
  - `amount` string, required: How much moved, in USD.
  - `status` 'pending' | 'pending_approval' | 'canceled' | 'processing' | 'error' | 'sent' | 'returned' | 'void', required
  - `direction` 'inbound' | 'outbound', required
  - `counterparty_id` string, uuid, nullable: The contact you sent to. Null on inbound transfers, which arrive from someone you never configured.
  - `counterparty_name` string, nullable: Who you sent to, or who sent to you on an inbound transfer.
  - `counterparty_account_number` string, nullable: The other side's account number, when the bank reports it. Often absent on inbound transfers.
  - `counterparty_routing_number` string, nullable: The other side's routing number, when the bank reports it. Often absent on inbound transfers.
  - `created_at` string, date-time, required: ISO 8601 date-time in the format `YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm]` (per [IETF RFC 3339](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)).
  - `updated_at` string, date-time, required: ISO 8601 date-time in the format `YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm]` (per [IETF RFC 3339](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)).
  - `internal_note` string, nullable: Your private note on this transfer. Never leaves Meow.
  - `metadata` object, nullable: The metadata attached when this object was created, unchanged. `null` when none was attached. Rarely, a `.created` webhook can be published before the create request finishes committing, and that one event reports `null`; every later event and every read of the object carries the metadata.
  - `id` string, required: Pass this back to Get Wire Transfer to check on the transfer.
  - `instructions` string, nullable: The originator to beneficiary information carried on the wire. On an inbound wire this is where a sender puts a reference you can match on.
  - `counterparty_bank_name` string, nullable: The other side's bank, when the bank reports it. Often absent on inbound wires.
  - `error` string, nullable: Why the transfer failed, when it did.
  - `imad` string, nullable: The wire's IMAD, which uniquely identifies it on the Fedwire network. Use it when tracing a wire with a bank.
  - `purpose` string, nullable: The purpose you stated when sending. Null on inbound wires, which carry no purpose you set.
  - `counterparty_address` string, nullable: The sender's postal address as their bank reported it. Only set on inbound wires.
  - `counterparty_bank_address` string, nullable: The sending bank's postal address as it arrived on the wire. Only set on inbound wires.
  - `is_international` boolean, nullable: True when an inbound wire came from a bank outside the US. Null when the bank did not say, and on outbound wires.

## Other responses

- `400`: The request could not be processed.
- `401`: Authentication failed.
- `403`: The API key is not authorized for this operation, or the user of a global API key is an admin or controller without approved KYC. The KYC case returns the message `KYC is required for controllers and admins.` until that user completes KYC in the Meow dashboard.
- `429`: Too many requests.

---

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