Get Billing History
curl --request GET \
--url https://api.example.com/api/billing/history/import requests
url = "https://api.example.com/api/billing/history/"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/billing/history/', 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.example.com/api/billing/history/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/billing/history/"
req, _ := http.NewRequest("GET", url, nil)
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.example.com/api/billing/history/")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/billing/history/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"count": 50,
"next": "https://mifumosms.mifumolabs.com/api/billing/history/?page=2",
"previous": null,
"results": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"type": "purchase",
"description": "Starter Package - 1000 SMS",
"amount": 50.00,
"currency": "USD",
"status": "completed",
"created_at": "2025-11-01T10:00:00Z"
},
{
"id": "550e8400-e29b-41d4-a716-446655440001",
"type": "usage",
"description": "SMS Usage - 500 messages",
"amount": -25.00,
"currency": "USD",
"status": "completed",
"created_at": "2025-11-15T10:00:00Z"
}
]
}
Billing & Payments
Get Billing History
GET
/
api
/
billing
/
history
/
Get Billing History
curl --request GET \
--url https://api.example.com/api/billing/history/import requests
url = "https://api.example.com/api/billing/history/"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/api/billing/history/', 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.example.com/api/billing/history/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/billing/history/"
req, _ := http.NewRequest("GET", url, nil)
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.example.com/api/billing/history/")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/billing/history/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"count": 50,
"next": "https://mifumosms.mifumolabs.com/api/billing/history/?page=2",
"previous": null,
"results": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"type": "purchase",
"description": "Starter Package - 1000 SMS",
"amount": 50.00,
"currency": "USD",
"status": "completed",
"created_at": "2025-11-01T10:00:00Z"
},
{
"id": "550e8400-e29b-41d4-a716-446655440001",
"type": "usage",
"description": "SMS Usage - 500 messages",
"amount": -25.00,
"currency": "USD",
"status": "completed",
"created_at": "2025-11-15T10:00:00Z"
}
]
}
Get billing history including purchases, payments, and usage.
integer
Page number (default: 1)
integer
Items per page (default: 20, max: 100)
string
Filter by type (purchase, payment, usage)
Requires authentication. Include the access token in the Authorization header.
Success Response (200)
integer
Total number of billing records
string
URL to next page (nullable)
string
URL to previous page (nullable)
array
Array of billing history objects
string
Billing record ID
string
Record type (purchase, payment, usage)
string
Description of the transaction
float
Transaction amount (negative for usage)
string
Currency code
string
Transaction status
string
Creation timestamp (ISO 8601)
{
"count": 50,
"next": "https://mifumosms.mifumolabs.com/api/billing/history/?page=2",
"previous": null,
"results": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"type": "purchase",
"description": "Starter Package - 1000 SMS",
"amount": 50.00,
"currency": "USD",
"status": "completed",
"created_at": "2025-11-01T10:00:00Z"
},
{
"id": "550e8400-e29b-41d4-a716-446655440001",
"type": "usage",
"description": "SMS Usage - 500 messages",
"amount": -25.00,
"currency": "USD",
"status": "completed",
"created_at": "2025-11-15T10:00:00Z"
}
]
}
⌘I