Get Refund Preview - Flex Documentation
Get Refund Preview
cURL
curl --request GET \
--url https://api.withflex.com/v1/subscriptions/{id}/refund_preview \
--header 'Authorization: Bearer <token>'
Python
import requests
url = "https://api.withflex.com/v1/subscriptions/{id}/refund_preview"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)
JavaScript
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.withflex.com/v1/subscriptions/{id}/refund_preview', 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.withflex.com/v1/subscriptions/{id}/refund_preview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Go
package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.withflex.com/v1/subscriptions/{id}/refund_preview"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
Unirest (Java)
HttpResponse<String> response = Unirest.get("https://api.withflex.com/v1/subscriptions/{id}/refund_preview")
.header("Authorization", "Bearer <token>")
.asString();
Ruby
require 'uri'
require 'net/http'
url = URI("https://api.withflex.com/v1/subscriptions/{id}/refund_preview")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body
Possible Responses
- 200
- 401
- 403
- 404
- 409
- 422
- 429
Example Response
{
"prorated_amount_available_to_refund": 2500,
"invoice_amount_paid": 2500,
"current_period_start": "2026-06-15T14:30:00Z",
"current_period_end": "2026-06-15T14:30:00Z",
"payment_method_id": "fpm_01J9XR8M3K7VZ8N2YB4WJ6T0RA",
"last4": "4242"
}
Error Response Structure
{
"code": "string",
"detail": "string"
}
Authorization
- Authorization:
string(header, required)- Use a Bearer token to access this API.
Path Parameters
- id:
string(required)- Example: "fsub_01J9XR8M3K7VZ8N2YB4WJ6T0RA"
Additional Response Information
prorated_amount_available_to_refund: integer
(required) - Prorated amount available to refund, in the smallest currency unit (e.g.,
1499= $14.99 USD). - Example:
2500
- Prorated amount available to refund, in the smallest currency unit (e.g.,
invoice_amount_paid: integer
(required) - Total amount paid on the subscription's latest invoice, in the smallest currency unit (e.g.,
2999= $29.99 USD). - Example:
2500
- Total amount paid on the subscription's latest invoice, in the smallest currency unit (e.g.,
current_period_start: string(required)
- Start of the current billing period, as an RFC 3339 timestamp.
- Example:
"2026-06-15T14:30:00Z"
current_period_end: string(required)
- End of the current billing period, as an RFC 3339 timestamp.
- Example:
"2026-06-15T14:30:00Z"
payment_method_id:
string | null- The payment method ID that would be refunded, if available.
- Example:
"fpm_01J9XR8M3K7VZ8N2YB4WJ6T0RA"
last4:
string | null- Last 4 digits of the card that would be refunded, if available.
- Example:
"4242"