/Laravel-UPS-Api

A small Laravel's wrapper for the PHP UPS API library

Primary LanguagePHPMIT LicenseMIT

Laravel UPS Api

For Laravel 10 and 11

Build Status StyleCI Status Software License Packagist Downloads Latest Version

Laravel UPS Api was created by, and is maintained by Pierre Tondereau, and PHP UPS Api was created by, and is maintained by Gabriel Bull at PHP UPS API.

Installation

To get the latest version of Laravel UPS Api, simply require the project using Composer:

$ composer require ptondereau/laravel-ups-api

Instead, you may of course manually update your require block and run composer update if you so choose:

{
    "require": {
        "ptondereau/laravel-ups-api": "^1.0"
    }
}

The UpsApiServiceProvider is auto-discovered and registered by default. If needed, you may register it manually by opening up config/app.php and adding the following to the providers key.

  • 'Ptondereau\LaravelUpsApi\UpsApiServiceProvider'

You can register all or some of the Ups facades in the aliases key of your config/app.php file if you like.

  • 'UpsAddressValidation' => 'Ptondereau\LaravelUpsApi\Facades\UpsAddressValidation'
  • 'UpsLocator' => 'Ptondereau\LaravelUpsApi\Facades\UpsLocator'
  • 'UpsQuantumView' => 'Ptondereau\LaravelUpsApi\Facades\UpsQuantumView'
  • 'UpsRate' => 'Ptondereau\LaravelUpsApi\Facades\UpsRate'
  • 'UpsTimeInTransit' => 'Ptondereau\LaravelUpsApi\Facades\UpsTimeInTransit'
  • 'UpsTracking' => 'Ptondereau\LaravelUpsApi\Facades\UpsTracking'
  • 'UpsTradeability' => 'Ptondereau\LaravelUpsApi\Facades\UpsTradeability'
  • 'UpsShipping' => 'Ptondereau\LaravelUpsApi\Facades\UpsShipping'
  • 'UpsRateInTransit' => 'Ptondereau\LaravelUpsApi\Facades\UpsRateInTransit'

Configuration

Laravel UPS Api requires connection configuration.

To get started, you'll need to publish all vendor assets:

$ php artisan vendor:publish --provider="Ptondereau\LaravelUpsApi\UpsApiServiceProvider"

This will create a config/ups.php file in your app that you can modify to set your configuration. Also, make sure you check for changes to the original config file in this package between releases.

You also need to add env variables into your .env with your credentials:

UPS_ACCESS_KEY=key
UPS_USER_ID=userId
UPS_PASSWORD=password
UPS_SANDBOX=true

Usage

This package only inject and provide Facades for each class of PHP UPS API. You just have to read its documentation.

Further Information

There are other classes in this package that are not documented here. This is because they are not intended for public use and are used internally by this package.

Security

If you discover a security vulnerability within this package, please send an e-mail to Pierre Tondereau at pierre.tondereau@gmail.com. All security vulnerabilities will be promptly addressed.

License

Laravel Ups Api is licensed under The MIT License (MIT).