Skip to main content
GET
/
accounting
/
invoices
/
{invoiceId}
/
document
cURL
curl --request GET \
  --url https://api.maesn.dev/accounting/invoices/{invoiceId}/document \
  --header 'X-ACCOUNT-KEY: <x-account-key>' \
  --header 'X-API-KEY: <x-api-key>'
import requests

url = "https://api.maesn.dev/accounting/invoices/{invoiceId}/document"

headers = {
"X-API-KEY": "<x-api-key>",
"X-ACCOUNT-KEY": "<x-account-key>"
}

response = requests.get(url, headers=headers)

print(response.text)
const options = {
method: 'GET',
headers: {'X-API-KEY': '<x-api-key>', 'X-ACCOUNT-KEY': '<x-account-key>'}
};

fetch('https://api.maesn.dev/accounting/invoices/{invoiceId}/document', 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.maesn.dev/accounting/invoices/{invoiceId}/document",
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-ACCOUNT-KEY: <x-account-key>",
"X-API-KEY: <x-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://api.maesn.dev/accounting/invoices/{invoiceId}/document"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("X-API-KEY", "<x-api-key>")
req.Header.Add("X-ACCOUNT-KEY", "<x-account-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://api.maesn.dev/accounting/invoices/{invoiceId}/document")
.header("X-API-KEY", "<x-api-key>")
.header("X-ACCOUNT-KEY", "<x-account-key>")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.maesn.dev/accounting/invoices/{invoiceId}/document")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<x-api-key>'
request["X-ACCOUNT-KEY"] = '<x-account-key>'

response = http.request(request)
puts response.read_body
{
  "meta": {
    "warnings": [
      "Field not used by target system"
    ],
    "pagination": {
      "total": 125,
      "perPage": 50,
      "currentPage": 1,
      "totalPages": 3
    }
  },
  "data": {
    "id": "document id",
    "base64Encoded": true,
    "content": "content",
    "contentType": "application/pdf",
    "fileName": "invoice.pdf"
  }
}

Field support per integration

Please note that the content in output is base64-encoded.
Supported response fields:
id
string
base64Encoded
boolean
content
string
contentType
string
fileName
string
If you’re not using the Interactive Authentication Flow, make sure the query parameters environmentName and companyId are correctly populated. You can obtain these values by using the GET Environments and GET Companies endpoints available under the Authentication section.
Supported response fields:
id
string
base64Encoded
boolean
content
string
contentType
string
fileName
string
Supported response fields:
base64Encoded
boolean
content
string
contentType
string
fileName
string
Please note that the content in output is the url to download the document.
Supported response fields:
id
string
base64Encoded
boolean
content
string
contentType
string
fileName
string
If you’re not using the Interactive Authentication Flow, make sure the query parameter companyId is correctly populated. You can obtain this value by using the GET Companies endpoint available under the Authentication section. Please use the id field as the companyId.
Supported response fields:
base64Encoded
boolean
content
string
contentType
string
fileName
string
Supported response fields:
base64Encoded
boolean
content
string
contentType
string
fileName
string
Supported response fields:
base64Encoded
boolean
content
string
contentType
string
fileName
string
Supported response fields:
base64Encoded
boolean
content
string
contentType
string
fileName
string
Supported response fields:
base64Encoded
boolean
content
string
contentType
string
fileName
string

Headers

X-API-KEY
string
required

API key

X-ACCOUNT-KEY
string
required

Account key

Path Parameters

invoiceId
string
required

Query Parameters

companyId
string

Response

200 - application/json
meta
object
data
object
Last modified on July 9, 2026