Skip to content

Repository files navigation

ParcelForce ExpressLink API Client

A Python client for the ParcelForce ExpressLink API.

Uses Combadge to handle SOAP requests via Pydantic models.

Installation

pip install parcelforce-expresslink

Settings

Required:

  • API Username
  • API Password
  • Account Number
  • Contract Number

Optional:

Get settings from EITHER:

Env File (direct)

ParcelforceSettings.from_env_file(path: str)

Env File (indirect)

ParcelforceSettings.from_env(env:str) (where env is the environment variable pointing to the env file)

Args

ParcelForceSettings.from_args(*, usrname: str, password: str, contract_num: str, account_num: str):

Usage

Create a client

    settings = ParcelforceSettings()
    client = ParcelforceClient(settings=settings)

Create a Recipient Contact

    recip_contact = Contact(
        contact_name="A Name",
        email_address="anaddress@adomain.com",
        mobile_phone="07123456789",
        business_name="A Business Name",
    )

Create a Recipient Address

    recip_address = AddressRecipient(
        address_line1="An AddressLine",
        town="A Town",
        postcode="AA1BB2",
        )

Create a Shipment

    shipment = Shipment(
        recipient_address=recip_address,
        recipient_contact=recip_contact,
        total_number_of_parcels=1,
        shipping_date=date.today(),
        )
    response: ShipmentResponse = client.request_shipment(shipment)
    print(f"Shipment Number: {response.shipment_num}, Status: {response.status}")

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages