curl --request POST \
--url https://api.augustus.com/v1/simulations/accounts/{id}/drain \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"destination": {
"type": "iban",
"iban": "DE89370400440532013000",
"account_holder_name": "Acme Sandbox Ltd.",
"bic": "COBADEFFXXX"
}
}
'import requests
url = "https://api.augustus.com/v1/simulations/accounts/{id}/drain"
payload = { "destination": {
"type": "iban",
"iban": "DE89370400440532013000",
"account_holder_name": "Acme Sandbox Ltd.",
"bic": "COBADEFFXXX"
} }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
destination: {
type: 'iban',
iban: 'DE89370400440532013000',
account_holder_name: 'Acme Sandbox Ltd.',
bic: 'COBADEFFXXX'
}
})
};
fetch('https://api.augustus.com/v1/simulations/accounts/{id}/drain', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.augustus.com/v1/simulations/accounts/{id}/drain",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'destination' => [
'type' => 'iban',
'iban' => 'DE89370400440532013000',
'account_holder_name' => 'Acme Sandbox Ltd.',
'bic' => 'COBADEFFXXX'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.augustus.com/v1/simulations/accounts/{id}/drain"
payload := strings.NewReader("{\n \"destination\": {\n \"type\": \"iban\",\n \"iban\": \"DE89370400440532013000\",\n \"account_holder_name\": \"Acme Sandbox Ltd.\",\n \"bic\": \"COBADEFFXXX\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.augustus.com/v1/simulations/accounts/{id}/drain")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"destination\": {\n \"type\": \"iban\",\n \"iban\": \"DE89370400440532013000\",\n \"account_holder_name\": \"Acme Sandbox Ltd.\",\n \"bic\": \"COBADEFFXXX\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.augustus.com/v1/simulations/accounts/{id}/drain")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": {\n \"type\": \"iban\",\n \"iban\": \"DE89370400440532013000\",\n \"account_holder_name\": \"Acme Sandbox Ltd.\",\n \"bic\": \"COBADEFFXXX\"\n }\n}"
response = http.request(request)
puts response.read_body{
"type": "account_simulation",
"account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"payout_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}Drain an operating account
Creates an outbound payout that drains the residual balance of a frozen operating (DDA) account to the provided destination. The returned payout_id must be settled via POST /v1/simulations/payouts/{id}/send for the account balance to reach zero. This endpoint is unavailable in live production.
curl --request POST \
--url https://api.augustus.com/v1/simulations/accounts/{id}/drain \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"destination": {
"type": "iban",
"iban": "DE89370400440532013000",
"account_holder_name": "Acme Sandbox Ltd.",
"bic": "COBADEFFXXX"
}
}
'import requests
url = "https://api.augustus.com/v1/simulations/accounts/{id}/drain"
payload = { "destination": {
"type": "iban",
"iban": "DE89370400440532013000",
"account_holder_name": "Acme Sandbox Ltd.",
"bic": "COBADEFFXXX"
} }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
destination: {
type: 'iban',
iban: 'DE89370400440532013000',
account_holder_name: 'Acme Sandbox Ltd.',
bic: 'COBADEFFXXX'
}
})
};
fetch('https://api.augustus.com/v1/simulations/accounts/{id}/drain', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.augustus.com/v1/simulations/accounts/{id}/drain",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'destination' => [
'type' => 'iban',
'iban' => 'DE89370400440532013000',
'account_holder_name' => 'Acme Sandbox Ltd.',
'bic' => 'COBADEFFXXX'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.augustus.com/v1/simulations/accounts/{id}/drain"
payload := strings.NewReader("{\n \"destination\": {\n \"type\": \"iban\",\n \"iban\": \"DE89370400440532013000\",\n \"account_holder_name\": \"Acme Sandbox Ltd.\",\n \"bic\": \"COBADEFFXXX\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.augustus.com/v1/simulations/accounts/{id}/drain")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"destination\": {\n \"type\": \"iban\",\n \"iban\": \"DE89370400440532013000\",\n \"account_holder_name\": \"Acme Sandbox Ltd.\",\n \"bic\": \"COBADEFFXXX\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.augustus.com/v1/simulations/accounts/{id}/drain")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": {\n \"type\": \"iban\",\n \"iban\": \"DE89370400440532013000\",\n \"account_holder_name\": \"Acme Sandbox Ltd.\",\n \"bic\": \"COBADEFFXXX\"\n }\n}"
response = http.request(request)
puts response.read_body{
"type": "account_simulation",
"account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"payout_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}Authorizations
Bearer token for authentication with Augustus Banking API
Headers
Idempotency key for safe retries. Reusing a key with an identical request body returns the cached response. Reusing a key with a different body returns 409.
Path Parameters
ID of the account whose lifecycle is being simulated.
Body
Account drain parameters
Fiat financial address to which the residual balance of the frozen account is drained.
- IBAN
- UK Sort Code
- ABA
Show child attributes
Show child attributes
{
"type": "iban",
"iban": "DE89370400440532013000",
"account_holder_name": "Acme Sandbox Ltd.",
"bic": "COBADEFFXXX"
}
Response
The account drain simulation acknowledgement
Was this page helpful?