The API is a WCF web service that hosts basic functionality for operations of the program.  Through this service, you can generate tracking numbers, submit mail pieces to be tracked, standardize addresses, and manage account information.

API location

The API is located at:

API Documentation

Documentation for the API is located at:

The following is the best starting point when navigating the documentation:

Code Samples

A sample project exists that consumes most, if not all, functionality provided by the API.  This code can be provided per request.  Optionally, code samples can be provided on a per request basis.

Basic Integration

Establish an API Connection

The first step toward integration with the API is to establish a basic connection.  Since there are multiple ways in which this can be done, the most feasible option will be determined and implemented by the customer.  The basic components needed to do this will be the API URL provided in this document and an account that has been granted access to the API.  For account creation and access, contact

Making Calls Against the API

Once a basic connection is established, you should be ready to start making calls against the API.  Of note, all API methods consist of an AuthHeader object and any other parameters that are required by the method.  This AuthHeader object will need to contain the username and password for the account that has access to the API.

The most basic integration to the API normally consists of getting a tracking number and uploading mail piece information into the system.

Retrieving Tracking Numbers

Retrieving a tracking number can be done by accessing the API's IIMPB interface and accessing the CreatePics method.

Some things to note about the IIMPB.CreatePics method:

  • Only certain combinations of Mail Class and Extra Services can be used.
    • In the event that you use an invalid combination, the API will return an exception detailing the reason validation failed.
    • You can get a reference of all currently available combinations through the IReferences.GetServiceTypesTable.
      • This will be an XML string.
  • Only 5 Extra Services can be provided.
  • You can only request between 1 and 5,000 PICs (tracking numbers) at a time.

Uploading Mail Piece Information

To upload your mail piece into our system (so you can track the mail piece as well as to help you qualify for presort discounts), you can access the API's IIMPB interface and use the CreateLabel method.

Some things to note concerning the IIMPB.CreateLabel method:

  • This method has many validation checks that take place.  As such, it may take several initial tries to succeed in using this method.
    • Most of these validations are USPS validations that are imposed on our services that send your mail piece data to the USPS.
  • You will need to use a PIC from the CreatePics method as part of the data sent to this method.
    • The PIC has the mail class and extra services embedded in it so that information will not need to be passed to us.
  • To only upload data and NOT get a PDF label as a response, you need to make sure the labelOption value is set to No_Label.
  • To make the piece live, thus making it trackable, make sure the Activate property of the MAILPieceDetails_IMPB object is set to true.
  • The UserID can be retrieved through:
    • API IUtilities interface, GetUserDetails method
    • NOTE:  If you are only planning to use one user account to do all your processing, you can simply contact Customer Support at (765) 250-4100 and ask for your UserID
      • Username and password must be provided before this information can be released
      • The UserID can then be hardcoded into the code

Other API Methods of Interest

  • IUtilities.GetTransactionCounts
    •  This method can be called to get current transaction counts for an account you specify.
  • IUtilities.StandardizeAddresses
    • This method can be called to perform address hygiene.