# List shipments and their document statuses

Retrieve each shipment associated with the given id, including its tracking number and registered carrier documents.

Endpoint: GET /v1/shipments/{shipment_id}/labels
Version: 1.1.202604070904
Security: api_key

## Path parameters:

  - `shipment_id` (string, required)
    Shipment ID
    Example: "se-28529731"

## Response 200 fields (application/json):

  - `shipment_id` (string)
    The unique identifier of the shipment.
    Example: "se-28529731"

  - `tracking_number` (string)
    The tracking number of the shipment.
    Example: "1Z999AA10123456784"

  - `documents` (array)
    The carrier documents registered against the shipment.

  - `documents.document_id` (string)
    The unique identifier of the document.
    Example: "7f3c1b2a-9d4e-4f5a-8c6b-2e1d0a9b8c7d"

  - `documents.type` (string)
    The type of the document.
    Enum: "commercial_invoice", "certificate_of_origin", "usmca_commercial_invoice_certification_of_origin", "usmca_certification_of_origin", "pro_forma_invoice", "other", "authorization_form", "export_accompanying_document", "export_license", "import_permit", "one_time_nafta", "power_of_attorney", "packing_list", "sed_document", "shippers_letter_of_instruction", "declaration", "section_232_customs_affidavit"

  - `documents.file_name` (string)
    The file name of the document.
    Example: "usmca-certification-of-origin.pdf"

  - `documents.status` (string)
    The processing status of the document.
    Enum: "awaiting_upload", "processing", "processing_claimed", "invalid", "uploaded", "queued", "sent", "failed"

  - `documents.error` (string,null)
    A description of the error when the document is invalid or failed; otherwise null.
    Example: "The uploaded file could not be read."

  - `documents.external_id` (string,null)
    The carrier-assigned identifier for the document once it has been sent; otherwise null.
    Example: "1Z999AA10123456784"

## Response 404 fields (application/json):

  - `request_id` (string, required)
    A UUID that uniquely identifies the request id.
This can be given to the support team to help debug non-trivial issues that may occur
    Example: "aa3d8e8e-462b-4476-9618-72db7f7b7009"

  - `errors` (array, required)
    The errors associated with the failed API call

  - `errors.error_source` (string, required)
    The source of the error, as indicated by the name this informs us if the API call failed because of the
carrier, the order source, or the ShipEngine API itself.
    Enum: "carrier", "order_source", "shipengine"

  - `errors.error_type` (string, required)
    The type of error
    Enum: "account_status", "business_rules", "validation", "security", "system", "integrations"

  - `errors.error_code` (string, required)
    The error code specified for the failed API Call
    Enum: "auto_fund_not_supported", "batch_cannot_be_modified", "carrier_conflict", "carrier_disconnected", "carrier_not_connected", "carrier_not_supported", "confirmation_not_supported", "default_warehouse_cannot_be_deleted", "field_conflict", "field_value_required", "forbidden", "identifier_conflict", "identifiers_must_match", "insufficient_funds", "invalid_address", "invalid_billing_plan", "invalid_field_value", "invalid_identifier", "invalid_status", "invalid_string_length", "label_images_not_supported", "meter_failure", "order_source_not_active", "rate_limit_exceeded", "refresh_not_supported", "request_body_required", "return_label_not_supported", "settings_not_supported", "subscription_inactive", "terms_not_accepted", "tracking_not_supported", "trial_expired", "unauthorized", "unknown", "unspecified", "verification_failure", "warehouse_conflict", "webhook_event_type_conflict", "customs_items_required", "incompatible_paired_labels", "invalid_charge_event", "invalid_object", "no_rates_returned", "file_not_found", "shipping_rule_not_found", "service_not_determined", "no_rates_returned", "funding_source_registration_in_progress", "insurance_failure", "funding_source_missing_configuration", "funding_source_error", "freight_connection_inactive", "freight_provider_id_required", "freight_provider_already_connected", "freight_shipment_not_found", "freight_tracking_not_available", "freight_tracking_not_found", "freight_shipment_not_batchable"

  - `errors.message` (string, required)
    An error message associated with the failed API call
    Example: "Body of request cannot be null."

  - `errors.carrier_id` (string)
    A string that uniquely identifies the carrier that generated the error.
    Example: "se-28529731"

  - `errors.carrier_code` (string)
    The name of the shipping carrier that generated the error, such as fedex, dhl_express, stamps_com, etc.
    Example: "dhl_express"

  - `errors.field_name` (string)
    The name of the field that caused the error
    Example: "shipment.ship_to.phone_number"


