curl --request GET \
--url https://api.meetcampfire.com/coa/api/v1/invoice/report/previewimport requests
url = "https://api.meetcampfire.com/coa/api/v1/invoice/report/preview"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.meetcampfire.com/coa/api/v1/invoice/report/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.meetcampfire.com/coa/api/v1/invoice/report/preview",
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.meetcampfire.com/coa/api/v1/invoice/report/preview"
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.meetcampfire.com/coa/api/v1/invoice/report/preview")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meetcampfire.com/coa/api/v1/invoice/report/preview")
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": 123,
"next": "<string>",
"previous": "<string>",
"results": [
{
"filter_params": {},
"group_id": 123,
"id": 123
}
],
"engine_used": "postgres",
"pivot_result_fields": [
"<string>"
],
"totals_row": {},
"pivot_value_mappings": {}
}Preview invoice report
Execute invoice report preview from query params.
:param request: HTTP request with report configuration :return: Paginated response or CSV stream
curl --request GET \
--url https://api.meetcampfire.com/coa/api/v1/invoice/report/previewimport requests
url = "https://api.meetcampfire.com/coa/api/v1/invoice/report/preview"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.meetcampfire.com/coa/api/v1/invoice/report/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.meetcampfire.com/coa/api/v1/invoice/report/preview",
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.meetcampfire.com/coa/api/v1/invoice/report/preview"
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.meetcampfire.com/coa/api/v1/invoice/report/preview")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meetcampfire.com/coa/api/v1/invoice/report/preview")
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": 123,
"next": "<string>",
"previous": "<string>",
"results": [
{
"filter_params": {},
"group_id": 123,
"id": 123
}
],
"engine_used": "postgres",
"pivot_result_fields": [
"<string>"
],
"totals_row": {},
"pivot_value_mappings": {}
}Query Parameters
Aggregates: sum:amount, sum:amount_paid, sum:amount_due, etc.
Filter by client ID(s)
Filter by contract ID(s)
Filter by currency code
Filter by department ID(s)
End date (YYYY-MM-DD)
Entity ID(s), comma-separated
Row dimensions: client_id, invoice_id, invoice_date_month, product_id, etc.
Drilldown parent keys
Include grand totals row
Page size (max 10000)
paginated | full | csv
Pagination offset
Filter by status: draft,open,sent,partial,paid,uncollectible
Column dimensions: product_id, client_id, etc.
Filter by product ID(s)
Enable pivot columns
Start date (YYYY-MM-DD)
Response
Output schema for invoice report responses.
Total rows before pagination
Next page URL (null for datatable pagination)
Previous page URL
Paginated result rows
Show child attributes
Show child attributes
Execution engine: 'postgres'
postgres- postgres
postgres Sorted list of pivot column names
Grand totals across all rows
Show child attributes
Show child attributes
Mapping of pivot field -> {display_name: id} for drilldown
Show child attributes
Show child attributes