Skip to main content
POST
/
reporting
/
parcels
Create a parcels report
curl --request POST \
  --url https://panel.sendcloud.sc/api/v3/reporting/parcels \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "fields": [
    "parcel_id",
    "tracking_number",
    "shipping_option_code",
    "status",
    "announced_at",
    "delivered_at"
  ],
  "filters": {
    "announced_after": "2025-04-01T00:00:00Z",
    "announced_before": "2025-04-30T23:59:59Z",
    "direction": "outgoing"
  }
}
'
{
  "id": "419f3be0-2f49-434b-bee4-d8cff9cf7d01",
  "organization_id": 12345,
  "status": "queued",
  "status_message": "The report is queued",
  "fields": [
    "parcel_id",
    "tracking_number",
    "shipping_option_code",
    "status",
    "announced_at",
    "delivered_at"
  ],
  "filters": {
    "announced_after": "2025-04-01T00:00:00Z",
    "announced_before": "2025-04-30T23:59:59Z",
    "direction": "outgoing"
  },
  "url": null,
  "expires_at": null,
  "updated_at": "2025-05-01T08:23:10.226265Z",
  "created_at": "2025-05-01T08:23:10.226265Z"
}

Documentation Index

Fetch the complete documentation index at: https://sendcloud.dev/llms.txt

Use this file to discover all available pages before exploring further.

The parcels included in the report are determined by the filters you send, and the columns are determined by the fields you select. Use this endpoint to create the report and obtain the report id, which you then poll with Retrieve a parcels report until the CSV is ready for download.

Authorizations

Authorization
string
header
required

Basic Authentication using API key and secrets is currently the main authentication mechanism.

Body

application/json

Request body for creating a parcels report.

fields
enum<string>[]
required

Columns to include in the CSV report, in the order they should appear.

Minimum array length: 1

A column that can be included in a parcels report.

Available options:
parcel_id,
direction,
carrier_code,
carrier_name,
from_address_company_name,
contract_id,
contract_type,
from_address_city,
from_address_postal_code,
from_address_country_code,
from_address_country_name,
to_address_city,
to_address_postal_code,
to_address_country_code,
to_address_country_name,
order_number,
tracking_number,
announced_at,
shipped_at,
first_offer_at,
delivered_at,
shipping_option_code,
total_cost,
status,
sub_status,
integration_id,
integration_type,
weight,
brand_id,
brand_name
filters
ParcelsReportFilter · object
required

Filters that determine which parcels are included in the report.

Response

Accepted

Represents a parcels report and its processing state.

id
string<uuid>
required

Unique identifier of the report.

Example:

"419f3be0-2f49-434b-bee4-d8cff9cf7d01"

organization_id
integer
required

Identifier of the organization the report belongs to.

Required range: x >= 1
Example:

12345

status
enum<string>
required

Current processing status of the report.

Available options:
queued,
generating,
ready,
failed,
expired
Example:

"ready"

status_message
string
required

Human-readable description of the current status.

Example:

"The report is ready"

fields
enum<string>[]
required

Columns included in the report.

A column that can be included in a parcels report.

Available options:
parcel_id,
direction,
carrier_code,
carrier_name,
from_address_company_name,
contract_id,
contract_type,
from_address_city,
from_address_postal_code,
from_address_country_code,
from_address_country_name,
to_address_city,
to_address_postal_code,
to_address_country_code,
to_address_country_name,
order_number,
tracking_number,
announced_at,
shipped_at,
first_offer_at,
delivered_at,
shipping_option_code,
total_cost,
status,
sub_status,
integration_id,
integration_type,
weight,
brand_id,
brand_name
filters
ParcelsReportFilter · object
required

Filters that determine which parcels are included in the report.

url
string<uri> | null

URL to download the CSV. null until the report status is ready, and again after expiry.

Example:

"https://reporting-service.s3.eu-central-1.amazonaws.com/reports/parcels_v3/2025-05-01/419f3be0-2f49-434b-bee4-d8cff9cf7d01.csv"

expires_at
string<date-time> | null

When the report (and its download URL) will expire. null until the report is ready.

Example:

"2025-05-01T08:38:10.226217Z"

updated_at
string<date-time>

When the report was last updated.

Example:

"2025-05-01T08:24:10.226265Z"

created_at
string<date-time>

When the report was created.

Example:

"2025-05-01T08:23:10.226265Z"