curl --request GET \
--url https://my.flowsign.app/api/v1/packages \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://my.flowsign.app/api/v1/packages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://my.flowsign.app/api/v1/packages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const url = 'https://my.flowsign.app/api/v1/packages';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));import requests
url = "https://my.flowsign.app/api/v1/packages"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)using RestSharp;
var options = new RestClientOptions("https://my.flowsign.app/api/v1/packages");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
using RestSharp;
var options = new RestClientOptions("https://my.flowsign.app/api/v1/packages");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
$headers=@{}
$headers.Add("Authorization", "Bearer <token>")
$response = Invoke-WebRequest -Uri 'https://my.flowsign.app/api/v1/packages' -Method GET -Headers $headers{
"data": {
"packages": [
{
"id": "cmg4v8q2k0001s7xh3b9d2f6a",
"title": "Employment agreement for Jane Ahu",
"status": "IN_PROGRESS",
"description": "Package with 1 document",
"recipients": [
{
"id": "cmg4v8q2k0002s7xh6k4m1p9c",
"name": "Jane Ahu",
"email": "jane.ahu@example.co.nz",
"action": "Sign",
"actionType": "SIGNER",
"delivery": "EMAIL",
"roleName": "Employee",
"signed": false,
"delay": 60
}
],
"documentsCount": 1,
"signingProgress": {
"completed": 1,
"total": 2
},
"createdAt": "2026-09-21T02:14:07.000Z",
"updatedAt": "2026-09-24T21:40:12.000Z",
"expiresAt": "2026-10-21T02:14:07.000Z",
"completedAt": "2026-09-24T21:40:12.000Z",
"templateId": "K7dQm2xPz9Lw",
"metadata": {
"cost_centre": "CC-4410",
"region": "Auckland"
}
}
],
"totalCount": 42,
"page": 1,
"pageSize": 25
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}List packages
Returns a paginated list of the packages the caller’s package-visibility permissions let them see.
curl --request GET \
--url https://my.flowsign.app/api/v1/packages \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://my.flowsign.app/api/v1/packages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://my.flowsign.app/api/v1/packages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));const url = 'https://my.flowsign.app/api/v1/packages';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));import requests
url = "https://my.flowsign.app/api/v1/packages"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)using RestSharp;
var options = new RestClientOptions("https://my.flowsign.app/api/v1/packages");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
using RestSharp;
var options = new RestClientOptions("https://my.flowsign.app/api/v1/packages");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
$headers=@{}
$headers.Add("Authorization", "Bearer <token>")
$response = Invoke-WebRequest -Uri 'https://my.flowsign.app/api/v1/packages' -Method GET -Headers $headers{
"data": {
"packages": [
{
"id": "cmg4v8q2k0001s7xh3b9d2f6a",
"title": "Employment agreement for Jane Ahu",
"status": "IN_PROGRESS",
"description": "Package with 1 document",
"recipients": [
{
"id": "cmg4v8q2k0002s7xh6k4m1p9c",
"name": "Jane Ahu",
"email": "jane.ahu@example.co.nz",
"action": "Sign",
"actionType": "SIGNER",
"delivery": "EMAIL",
"roleName": "Employee",
"signed": false,
"delay": 60
}
],
"documentsCount": 1,
"signingProgress": {
"completed": 1,
"total": 2
},
"createdAt": "2026-09-21T02:14:07.000Z",
"updatedAt": "2026-09-24T21:40:12.000Z",
"expiresAt": "2026-10-21T02:14:07.000Z",
"completedAt": "2026-09-24T21:40:12.000Z",
"templateId": "K7dQm2xPz9Lw",
"metadata": {
"cost_centre": "CC-4410",
"region": "Auckland"
}
}
],
"totalCount": 42,
"page": 1,
"pageSize": 25
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}{
"error": "Missing permission: canSendPackages",
"details": {
"recipients.0.email": [
"Invalid email"
]
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
The workspace the key was issued for, as returned by GET /api/v1/workspaces. Optional: omitting it acts in the key's workspace, and any other id is rejected with 401.
Query Parameters
Only packages in this status. DRAFT is not yet sent; SCHEDULED is queued to send at its scheduled time; IN_PROGRESS is out for signing; COMPLETED is signed by every signer; DECLINED is refused by a recipient; ON_HOLD is paused by the sender; VOID is ended early by the sender or at its expiry. VIEWED is not a stored status: it selects packages, whatever their status, that a recipient has opened.
DRAFT, SCHEDULED, IN_PROGRESS, COMPLETED, DECLINED, ON_HOLD, VOID "IN_PROGRESS"
Only packages whose title contains this text, ignoring case.
1"Employment"
The page to return, counting from 1.
x >= 11
Packages per page, from 1 to 100.
1 <= x <= 10025
Response
Success
Show child attributes
Show child attributes
Was this page helpful?

