Skip to main content
GET
/
expenses
List all expenses
curl --request GET \
  --url https://web.subly.app/api/v1/expenses \
  --header 'x-api-key: <api-key>'
import requests

url = "https://web.subly.app/api/v1/expenses"

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://web.subly.app/api/v1/expenses', 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://web.subly.app/api/v1/expenses",
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;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://web.subly.app/api/v1/expenses"

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://web.subly.app/api/v1/expenses")
.header("x-api-key", "<api-key>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://web.subly.app/api/v1/expenses")

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
[
  {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>",
    "category": "<string>",
    "tags": [
      123
    ],
    "is_recurring": true,
    "billing_freq": 123,
    "nextPaymentDate": "2023-11-07T05:31:56Z",
    "initialPaymentDate": "2023-11-07T05:31:56Z",
    "end_date": "2023-11-07T05:31:56Z",
    "refund_deadline": "2023-11-07T05:31:56Z",
    "cost": 123,
    "currency": "<string>",
    "isActive": true,
    "website": "<string>",
    "workspace_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "renewal_date": "2023-11-07T05:31:56Z"
  }
]
{
"error": "<string>"
}

Authorizations

x-api-key
string
header
required

Your private API key for authentication. This key identifies your workspace for all requests.

Query Parameters

project_id
string<uuid>

The unique identifier of the project to filter expenses by.

Response

A list of expenses.

id
string<uuid>
read-only

Unique identifier for the expense.

name
string

Name of the expense (e.g., 'Netflix Subscription').

category
string

Category for the expense (e.g., 'Software').

tags
integer[]

An array of tag IDs for organizational purposes.

type
enum<string>

The type of expense.

Available options:
subscription,
one-time,
ltd
is_recurring
boolean

Flag indicating if the expense is recurring. Automatically true if type is 'subscription'.

billing_freq
integer

Numeric value for the billing frequency (e.g., 1, 3). Required if recurring.

billing_range
enum<string>

The time unit for the billing frequency. Required if recurring.

Available options:
day,
week,
month,
year
nextPaymentDate
string<date-time>

The date of the next scheduled payment. Required if recurring.

initialPaymentDate
string<date-time>

The date the first payment was made.

end_date
string<date-time>

The date the recurring expense is set to end.

refund_deadline
string<date-time>

The final date a refund can be requested.

cost
number<float>

The monetary cost of the expense.

currency
string

The ISO 4217 currency code of the cost (e.g., 'USD', 'AUD').

isActive
boolean

Whether the expense is currently active.

website
string<uri>

URL of the service or product provider.

workspace_id
string<uuid>
read-only

Identifier of the workspace this expense belongs to.

project_id
string<uuid>

Identifier of the project this expense is assigned to.

renewal_date
string<date-time>

The date the subscription is set to renew.