Envia.com Pickups API

Schedule package pickups with carriers

Operations 1

POST /ship/pickup/ Schedule a Pickup #

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/envia:envia-pickups-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

envia-pickups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Envia Shipping API — Complete Documentation Pickups API
  version: v2.3.0
  description: 'Shipping API to connect with over 100 couriers worldwide. Shipping made simple for e-commerces and enterprises. Envia''s Shipping Web Services offers solutions that applications can use to quote, create labels, request pickups, track packages, cancel shipments and many other logistics operations in USA, Mexico, Colombia, Brazil, India, Canada, Argentina, Chile, Guatemala, Spain, Italy and France. This API is built for e-commerce platforms, logistics teams, and enterprise applications that need a single integration to access multi-carrier shipping capabilities. Core features include real-time rate comparison, label generation, package tracking, pickup scheduling, shipment cancellation, and webhook-based event notifications.


    **Important Information:**

    - State codes must be 2 digits

    - Country codes must be 2 digits

    - Validate the shipping address structure

    - Make sure the zip code or locality are correct


    **Custom Keys:** Custom Keys are used when you have a direct account with a carrier. This way you create labels with your rates with an additional small fee for service.'
  contact:
    name: Envia API Support
    url: https://docs.envia.com/discuss
  license:
    name: Proprietary
    url: https://www.envia.com/terminos-y-condiciones
  termsOfService: https://www.envia.com/terminos-y-condiciones
servers:
- url: https://api-test.envia.com
  description: Sandbox/Test
- url: https://api.envia.com
  description: Production
security:
- bearerAuth: []
tags:
- name: Pickups
  description: Schedule package pickups with carriers
paths:
  /ship/pickup/:
    post:
      tags:
      - Pickups
      summary: Schedule a Pickup
      description: 'Schedule a carrier pickup at a specified address and time window so a driver collects your packages.


        **When to use:** Call this endpoint after generating labels when you need the carrier to pick up packages from your warehouse or location instead of dropping them off at a service point.


        **Prerequisites:**

        - Valid JWT authentication token (Bearer)

        - At least one generated shipment label (tracking number)

        - A pickup origin address

        - A preferred pickup date and time window


        **Key behaviors:**

        - Returns a pickup confirmation number on success

        - Pickup availability and time windows depend on the carrier and location

        - You can include multiple tracking numbers in a single pickup request

        - Some carriers require a minimum number of packages or weight for pickup eligibility

        - Pickup rules vary by carrier — consult the Pickups concept guide for details'
      operationId: schedule-pickup
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - origin
              - shipment
              properties:
                origin:
                  type: object
                  required:
                  - name
                  - phone
                  - street
                  - city
                  - state
                  - country
                  - postalCode
                  description: Pickup address information
                  properties:
                    category_id:
                      type: integer
                      description: Address category ID
                      example: 1
                    name:
                      type: string
                      description: Name of the person
                      example: Juan Pérez
                    company:
                      type: string
                      description: Company name
                      example: Envia Corp
                    phone:
                      type: string
                      description: Phone number
                      pattern: ^\+?[0-9\s\-()]+$
                      example: '8180000000'
                    phone_code:
                      type: string
                      description: Country phone code
                      example: '+52'
                    email:
                      type: string
                      description: Email address
                      format: email
                      example: juan.perez@example.com
                    country:
                      type: string
                      description: Country code
                      pattern: ^[A-Z]{2}$
                      minLength: 2
                      maxLength: 2
                      example: MX
                    district:
                      type: string
                      description: District or neighborhood
                      example: Centro
                    postal_code:
                      type: string
                      description: Postal code (legacy field)
                      minLength: 3
                      maxLength: 10
                      example: '64000'
                    postalCode:
                      type: string
                      description: Postal code
                      minLength: 3
                      maxLength: 10
                      example: '64000'
                    city:
                      type: string
                      description: City name
                      example: Monterrey
                    number:
                      type: string
                      description: Street number
                      example: '500'
                    street:
                      type: string
                      description: Street address
                      example: Av. Revolución 500
                    interior_number:
                      type: string
                      description: Interior number
                      example: 4B
                    state:
                      type: string
                      description: State code
                      minLength: 2
                      maxLength: 3
                      example: NL
                    category:
                      type: integer
                      description: Address category
                      example: 1
                    reference:
                      type: string
                      description: Reference information
                      example: Frente al parque
                    identificationNumber:
                      type: string
                      description: Tax identification number
                      example: XAXX010101000
                shipment:
                  type: object
                  required:
                  - type
                  - carrier
                  - pickup
                  description: Shipment information
                  properties:
                    type:
                      type: integer
                      description: Shipment type
                      example: 1
                    carrier:
                      type: string
                      description: Carrier name
                      example: fedex
                    pickup:
                      type: object
                      required:
                      - weightUnit
                      - totalWeight
                      - totalPackages
                      - date
                      - timeFrom
                      - timeTo
                      - carrier
                      - trackingNumbers
                      description: Pickup details
                      properties:
                        weightUnit:
                          type: string
                          enum:
                          - KG
                          - LB
                          description: Weight unit
                          example: KG
                        totalWeight:
                          type: number
                          description: Total weight
                          minimum: 0.01
                          example: 12.5
                        totalPackages:
                          type: integer
                          description: Total number of packages
                          minimum: 1
                          example: 5
                        date:
                          type: string
                          format: date
                          description: Pickup date
                          example: '2026-03-10'
                        timeFrom:
                          type: integer
                          description: Pickup time from (hour)
                          example: 9
                        timeTo:
                          type: integer
                          description: Pickup time to (hour)
                          example: 17
                        carrier:
                          type: string
                          description: Carrier name
                          example: fedex
                        instructions:
                          type: string
                          description: Special pickup instructions
                          example: Ring bell at loading dock B
                        trackingNumbers:
                          type: array
                          description: Array of tracking numbers to pickup
                          items:
                            type: string
                          example:
                          - '7520610403'
                          - '7520610404'
            example:
              origin:
                category_id: 1
                name: Pedro Garcia
                company: tendencys
                phone: '1234567890'
                phone_code: '52'
                email: pedro.garcia@tendencys.com
                country: MX
                district: San Simon
                postal_code: '03660'
                city: Ciudad de Mexico
                number: '123'
                street: calle 1
                interior_number: ''
                state: CX
                category: 1
                reference: ''
                postalCode: '03660'
                identificationNumber: XAXX010101000
              shipment:
                type: 1
                carrier: fedex
                pickup:
                  weightUnit: KG
                  totalWeight: 1.2
                  totalPackages: 2
                  date: '2025-10-14'
                  timeFrom: 9
                  timeTo: 18
                  carrier: fedex
                  instructions: ''
                  trackingNumbers:
                  - '794929929630'
                  - '794929929743'
      responses:
        '200':
          description: Pickup scheduled successfully
          content:
            application/json:
              example:
                meta: pickup
                data:
                - carrier: seur
                  pickupNumber: PRP-987654321
                  pickupDate: '2026-06-02'
                  pickupTimeFrom: 09:00
                  pickupTimeTo: '18:00'
                  pickupFee: 0
                  origin:
                    name: Remitente
                    company: Mi Tienda
                    street: Calle Falsa
                    number: '123'
                    district: Centro
                    city: Madrid
                    state: M
                    country: ES
                    postalCode: '28001'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
externalDocs:
  description: Full Envia API Documentation
  url: https://docs.envia.com
x-provenance:
  method: searched
  source: https://docs.envia.com/reference
  harvested: '2026-10-27'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://docs.envia.com/reference/cancel-shipment.md
  - https://docs.envia.com/reference/classify-hs-code.md
  - https://docs.envia.com/reference/create-commercial-invoice.md
  - https://docs.envia.com/reference/create-shipping-label.md
  - https://docs.envia.com/reference/create-shipping-manifest.md
  - https://docs.envia.com/reference/locatecolombiacity.md
  - https://docs.envia.com/reference/schedule-pickup.md
  - https://docs.envia.com/reference/shipping-rates.md
  - https://docs.envia.com/reference/test-webhook-endpoint.md
  - https://docs.envia.com/reference/track-shipments.md
  - https://docs.envia.com/reference/upload-customs-documents.md
  merge:
    pages: 11
    deduped: 10
    conflicts_kept_first: 0