# Pickups

APIs to create and manage pickup requests, check availability, cancel scheduled pickups, and generate or retrieve pickup documents.

## Schedule Pickup

 - [POST /api/v1/pickups](https://docs.sendpro360.pitneycloud.com/openapi/shipping/pickups/schedulepickup.md): Pickups endpoint allows you to schedule pickups with USPS, DHL Express, UPS and FedEx carriers for eligible shipments. 
The pickup schedule scope is determined by what you provide in the request:
  - If pickupSummary is provided: a pickup is scheduled for the packages described in the summary.
  - If shipmentIds are provided: a pickup is scheduled for the specified shipments.
  - If both pickupSummary and shipmentIds are provided: a pickup is scheduled for all shipments including by both inputs.
  - If neither is provided: a pickup is scheduled for all shipments created on the given carrier account by that time of the day.
  - carrierAccountId handling: carrierAccountId is required to schedule a pickup. Either provide carrierAccountId in the request payload, or provide X-PB-LocationId with a location that has only one carrier account configured for the selected carrier. 
> Note: The sender's first name and last name are required for USPS. For example: "name": "John Doe"

## Get Pickups

 - [GET /api/v1/pickups](https://docs.sendpro360.pitneycloud.com/openapi/shipping/pickups/getpickups.md): Get Pickups

## Cancel Pickups

 - [PUT /api/v1/pickups/cancel](https://docs.sendpro360.pitneycloud.com/openapi/shipping/pickups/cancelpickups.md): Cancel Pickups.

## Get Pickup Document

 - [GET /api/v1/pickups/{pickupId}/document](https://docs.sendpro360.pitneycloud.com/openapi/shipping/pickups/getpickupdocument.md): The API retrieves the document for a scheduled pickup receipt using the pickupId, generated when the pickup is successfully scheduled.

## Cancelled Pickup Document

 - [POST /api/v1/pickups/document](https://docs.sendpro360.pitneycloud.com/openapi/shipping/pickups/cancelledpickupdocument.md): This operation generates a PDF receipt for pickup cancellations. It supports creating receipts for multiple cancelled pickups.

## Check Pickup Availability

 - [POST /api/v1/pickups/availability](https://docs.sendpro360.pitneycloud.com/openapi/shipping/pickups/checkpickupavailability.md): Validates if the requested carrier can perform a pickup at the provided address,
given the shipment details and requested pickup date/time.

The response also indicates:
- If pickup is available at the location.
- What types of pickup (residential, on-demand, scheduled) are supported.
- Cutoff times and valid pickup time windows.

