curl --request GET \
--url https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}const url = 'https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}';
const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));using RestSharp;
var options = new RestClientOptions("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("x-api-key", "<api-key>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
val client = OkHttpClient()
val request = Request.Builder()
.url("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")
.get()
.addHeader("x-api-key", "<api-key>")
.build()
val response = client.newCall(request).execute()import Foundation
let url = URL(string: "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
request.timeoutInterval = 10
request.allHTTPHeaderFields = ["x-api-key": "<api-key>"]
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self))falsefalse$headers=@{}
$headers.Add("x-api-key", "<api-key>")
$response = Invoke-WebRequest -Uri 'https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}' -Method GET -Headers $headers{
"amount": "<string>",
"status": "pending",
"direction": "inbound",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"counterparty_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"counterparty_name": "<string>",
"counterparty_account_number": "<string>",
"counterparty_routing_number": "<string>",
"internal_note": "<string>",
"metadata": {},
"description": "<string>",
"additional_details": "<string>",
"trace_number": "<string>",
"payment_related_info": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Get ACH Transfer
Returns details about an ACH transfer (incoming or outgoing) for the specified account by ACH transfer ID, including the status of an outgoing ACH transfer after it has been initiated.
curl --request GET \
--url https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}const url = 'https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}';
const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));using RestSharp;
var options = new RestClientOptions("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("x-api-key", "<api-key>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
val client = OkHttpClient()
val request = Request.Builder()
.url("https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")
.get()
.addHeader("x-api-key", "<api-key>")
.build()
val response = client.newCall(request).execute()import Foundation
let url = URL(string: "https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
request.timeoutInterval = 10
request.allHTTPHeaderFields = ["x-api-key": "<api-key>"]
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self))falsefalse$headers=@{}
$headers.Add("x-api-key", "<api-key>")
$response = Invoke-WebRequest -Uri 'https://api.meow.com/v1/accounts/{account_id}/achs/{ach_transfer_id}' -Method GET -Headers $headers{
"amount": "<string>",
"status": "pending",
"direction": "inbound",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"id": "<string>",
"counterparty_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"counterparty_name": "<string>",
"counterparty_account_number": "<string>",
"counterparty_routing_number": "<string>",
"internal_note": "<string>",
"metadata": {},
"description": "<string>",
"additional_details": "<string>",
"trace_number": "<string>",
"payment_related_info": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Your Meow API key, sent in the x-api-key header for authentication.
Headers
Optional entity_id to scope requests to a specific entity.
Path Parameters
The ID of the account.
The transaction group ID for the ACH transfer (e.g. withdrawal_ach_...), or the ACH ID returned when you created the transfer (e.g. ach_...).
Response
Successful Response
How much moved, in USD.
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Where the transfer is in its lifecycle. pending and processing still change; poll until the transfer settles. An ACH transfer settles at sent, returned, canceled, or error; a wire settles at sent, canceled, error, or void.
pending, pending_approval, canceled, processing, error, sent, returned, void Whether the money moved into this account (inbound) or out of it (outbound). Inbound transfers were sent to you by someone else, so they have no counterparty you configured.
inbound, outbound When the transfer was created.
When the transfer last changed, so you can detect new activity.
Pass this back to Get ACH Transfer to check on the transfer.
The contact you sent to. Null on inbound transfers, which arrive from someone you never configured.
Who you sent to, or who sent to you on an inbound transfer.
The other side's account number, when the bank reports it. Often absent on inbound transfers.
The other side's routing number, when the bank reports it. Often absent on inbound transfers.
Your private note on this transfer. Never leaves Meow.
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.
Show child attributes
Show child attributes
The description carried on the transfer.
Extra detail the bank returned about the transfer.
The ACH trace number, which the receiving bank uses to look the transfer up.
The addenda the sender attached, on inbound transfers. Use it to match a payment to an invoice or account on your side.