Skip to content

Create a scan form

POST
/shipping/api/v1/scan_forms/{sub_carrier_id}

Create a scan form (manifest) for a specific carrier. A scan form groups together all shipments from a collection address into a single document that can be scanned by the carrier during pickup, rather than scanning each package individually.

The response may include multiple manifests depending on the shipments associated with the collection address.

sub_carrier_id
required
string

The sub-carrier identifier (e.g., USPS, UPS)

Example
USPS
object
collection_address
required

The collection/pickup address where packages will be collected from. You can provide either a saved address ID or the full address fields.

object
address_id

Veeqo Address Service ID for a saved address

string
b8b3e7b6-3adc-417f-963b-dd9851947ac2
name

Contact name at the collection address

string
My Warehouse
company

Company name

string
Acme Corp
phone

Phone number

string
+12065551234
email

Email address

string format: email
line1

Address line 1

string
410 Terry Ave N
line2

Address line 2

string
town

City/town

string
Seattle
postcode

Postal/ZIP code

string
98109
country_code

ISO 3166-1 alpha-2 country code

string
US
county

State/region/county

string
WA
Examples

Create scan form with full collection address

{
"collection_address": {
"name": "My Warehouse",
"company": "Acme Corp",
"phone": "+12065551234",
"line1": "410 Terry Ave N",
"town": "Seattle",
"postcode": "98109",
"country_code": "US",
"county": "WA"
}
}

Scan form created successfully

object
manifests

List of created scan form manifests

Array<object>
object
scan_form_id

Unique identifier for the scan form

string
a1b2c3d4-e5f6-7890-abcd-ef1234567890
collection_form_id

Unique identifier for the collection form. Use this value when calling the reprint endpoint.

string
a1b2c3d4-e5f6-7890-abcd-ef1234567890990001511
carrier_name

Name of the carrier

string
USPS
number_of_shipments

Number of shipments included in this scan form

integer
5
generation_status

Status of the scan form generation

string
Allowed values: COMPLETED PENDING FAILED
COMPLETED
error_messages

Any error messages from failed manifest requests

Array<string>

Bad request - missing or invalid collection address, or manifest creation failed

object
error_messages
required

List of error messages

Array<string>
[
"to_address is required"
]
{
"error_messages": [
"Invalid request parameters"
]
}