PHPackages                             bryanjamesdelaluya/shipbob-laravel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. bryanjamesdelaluya/shipbob-laravel

ActiveLibrary[API Development](/categories/api)

bryanjamesdelaluya/shipbob-laravel
==================================

Laravel wrapper package for Shipbob API

061PHP

Since Mar 14Pushed 4y ago1 watchersCompare

[ Source](https://github.com/bryanjamesdelaluya/shipbob-laravel)[ Packagist](https://packagist.org/packages/bryanjamesdelaluya/shipbob-laravel)[ RSS](/packages/bryanjamesdelaluya-shipbob-laravel/feed)WikiDiscussions main Synced 2d ago

READMEChangelogDependenciesVersions (1)Used By (0)

shipbob-laravel
===============

[](#shipbob-laravel)

Laravel wrapper package for Shipbob API

Installation
------------

[](#installation)

1. run this to terminal

```
composer require bryanjamesdelaluya/shipbob-laravel

```

2. add this to .env

```
SB_API_URL=https://api.shipbob.com/1.0/
SB_PAT_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
SB_CHANNEL_ID=XXXXX
SB_APP_ID=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

```

3. run this to terminal

```
php artisan vendor:publish --provider="Bryanjamesdelaluya\ShipbobLaravel\ShipbobServiceProvider"

```

4. run this to terminal

```
php artisan route:cache

```

Usage
-----

[](#usage)

- Sample code at app\\Http\\Controllers\\API\\ShipbobController.php
- Use this sample routes, add to routes\\api.php

```
Route::prefix('shipbob')->group(function () {

    Route::prefix('orders')->group(function () {
        Route::post('/estimate_fulfillment', [
            'as' => 'shipbob.orders.estimate_fulfillment',
            'uses' => '\App\Http\Controllers\API\ShipbobController@estimateFulfillment']
        );

        Route::get('/get/{orderId}', [
            'as' => 'shipbob.orders.get',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getOrder']
        );

        Route::get('/all', [
            'as' => 'shipbob.orders.all',
            'uses' => '\App\Http\Controllers\API\ShipbobController@fetchAllOrders']
        );

        Route::post('/create_order', [
            'as' => 'shipbob.orders.create_order',
            'uses' => '\App\Http\Controllers\API\ShipbobController@createOrder']
        );

        Route::post('/cancel_order/{orderId}', [
            'as' => 'shipbob.orders.cancel_order',
            'uses' => '\App\Http\Controllers\API\ShipbobController@cancelOrder']
        );

        Route::get('/get_order_store_json/{orderId}', [
            'as' => 'shipbob.orders.get_order_store_json',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getOrderStoreJson']
        );

        Route::post('/save_order_store_json/{orderId}', [
            'as' => 'shipbob.orders.save_order_store_json',
            'uses' => '\App\Http\Controllers\API\ShipbobController@addOrderStoreJson']
        );

        Route::get('/get_shipment_by_order/{orderId}/{shipmentId}', [
            'as' => 'shipbob.orders.get_shipment_by_order',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getShipmentByOrderId']
        );

        Route::post('/cancel_shipment/{shipmentId}/{orderId}', [
            'as' => 'shipbob.orders.cancel_shipment',
            'uses' => '\App\Http\Controllers\API\ShipbobController@cancelShipmentByOrderId']
        );

        Route::get('/get_shipment_status_timeline/{orderId}/{shipmentId}', [
            'as' => 'shipbob.orders.get_shipment_status_timeline',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getShipmentStatusTimeline']
        );

        Route::get('/get_all_shipments_for_order/{orderId}', [
            'as' => 'shipbob.orders.get_all_shipments_for_order',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getAllShipmentsForOrder']
        );

        Route::get('/get_logs_for_shipment/{orderId}/{shipmentId}', [
            'as' => 'shipbob.orders.get_logs_for_shipment',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getLogsForShipment']
        );
    });

    Route::prefix('shipment')->group(function () {
        Route::get('/get/{shipmentId}', [
            'as' => 'shipbob.shipment.get',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getShipment']
        );

        Route::get('/cancel/{shipmentId}', [
            'as' => 'shipbob.shipment.cancel',
            'uses' => '\App\Http\Controllers\API\ShipbobController@cancelShipment']
        );

        Route::post('/cancel_multiple/{shipmentId}', [
            'as' => 'shipbob.shipment.cancel_multiple',
            'uses' => '\App\Http\Controllers\API\ShipbobController@cancelMultipleShipment']
        );

        Route::get('/get_shipment_timeline/{shipmentId}', [
            'as' => 'shipbob.shipment.get_shipment_timeline',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getShipmentTimeline']
        );

        Route::get('/get_shipment_logs/{shipmentId}', [
            'as' => 'shipbob.shipment.get_shipment_logs',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getShipmentLogs']
        );

        Route::get('/get_shipping_methods', [
            'as' => 'shipbob.shipment.get_shipping_methods',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getShippingMethods']
        );
    });

    Route::prefix('products')->group(function () {
        Route::get('/all', [
            'as' => 'shipbob.products.all',
            'uses' => '\App\Http\Controllers\API\ShipbobController@fetchAllProducts']
        );

        Route::post('/add', [
            'as' => 'shipbob.products.add',
            'uses' => '\App\Http\Controllers\API\ShipbobController@addProduct']
        );

        Route::get('/get/{productId}', [
            'as' => 'shipbob.products.get',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getProduct']
        );

        Route::put('/edit/{productId}', [
            'as' => 'shipbob.products.edit',
            'uses' => '\App\Http\Controllers\API\ShipbobController@editProduct']
        );

        Route::post('/add_multiple', [
            'as' => 'shipbob.products.add_multiple',
            'uses' => '\App\Http\Controllers\API\ShipbobController@addMultipleProduct']
        );
    });

    Route::prefix('inventory')->group(function () {
        Route::get('/get/{inventoryId}', [
            'as' => 'shipbob.inventory.get',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getInventory']
        );

        Route::get('/all', [
            'as' => 'shipbob.inventory.all',
            'uses' => '\App\Http\Controllers\API\ShipbobController@fetchAllInventory']
        );

        Route::get('/get_by_product_id/{productId}', [
            'as' => 'shipbob.inventory.get_by_product_id',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getInventoryByProductId']
        );
    });

    Route::prefix('channel')->group(function () {
        Route::get('/', [
            'as' => 'shipbob.channel.request',
            'uses' => '\App\Http\Controllers\API\ShipbobController@channel']
        );
    });

    Route::prefix('return')->group(function () {
        Route::get('/get/{id}', [
            'as' => 'shipbob.return.get',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getReturn']
        );

        Route::put('/edit/{id}', [
            'as' => 'shipbob.return.edit',
            'uses' => '\App\Http\Controllers\API\ShipbobController@editReturnOrder']
        );

        Route::get('/all', [
            'as' => 'shipbob.return.all',
            'uses' => '\App\Http\Controllers\API\ShipbobController@fetchReturnOrders']
        );

        Route::post('/create_return_order', [
            'as' => 'shipbob.return.add',
            'uses' => '\App\Http\Controllers\API\ShipbobController@addReturnOrder']
        );

        Route::post('/cancel_order/{id}', [
            'as' => 'shipbob.return.cancel',
            'uses' => '\App\Http\Controllers\API\ShipbobController@cancelReturnOrder']
        );

        Route::get('/status_history/{id}', [
            'as' => 'shipbob.return.status_history',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getReturnStatusHistory']
        );
    });

    Route::prefix('fulfillment_center')->group(function () {
        Route::get('/', [
            'as' => 'shipbob.channel.fulfillment_center',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getFulFillmentCenter']
        );
    });

    Route::prefix('receiving')->group(function () {
        Route::get('/get_warehouse_receiving_order/{id}', [
            'as' => 'shipbob.channel.get_warehouse_receiving_order',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getWarehouseReceivingOrder']
        );

        Route::get('/get_warehouse_receiving_box_labels/{id}', [
            'as' => 'shipbob.channel.get_warehouse_receiving_box_labels',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getWarehouseReceivingOrderBoxLabels']
        );

        Route::post('/create_warehouse_receiving_order', [
            'as' => 'shipbob.channel.create_warehouse_receiving_order',
            'uses' => '\App\Http\Controllers\API\ShipbobController@addWarehouseReceivingOrder']
        );

        Route::post('/cancel_warehouse_receiving_order/{id}', [
            'as' => 'shipbob.channel.cancel_warehouse_receiving_order',
            'uses' => '\App\Http\Controllers\API\ShipbobController@cancelWarehouseReceivingOrder']
        );
    });

    Route::prefix('webhook')->group(function () {
        Route::get('/', [
            'as' => 'shipbob.channel.get_webhooks',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getWebHooks']
        );

        Route::post('/create_subscription', [
            'as' => 'shipbob.channel.create_subscription',
            'uses' => '\App\Http\Controllers\API\ShipbobController@addWebHookSubscription']
        );

        Route::post('/delete_subscription', [
            'as' => 'shipbob.channel.delete_subscription',
            'uses' => '\App\Http\Controllers\API\ShipbobController@deleteWebHookSubscription']
        );
    });

    Route::prefix('location')->group(function () {
        Route::get('/', [
            'as' => 'shipbob.channel.get_locations',
            'uses' => '\App\Http\Controllers\API\ShipbobController@getLocations']
        );
    });
});

```

Author
------

[](#author)

- Bryan James Dela Luya

###  Health Score

17

—

LowBetter than 6% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity27

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/61488658?v=4)[Bryan James Dela Luya](/maintainers/bryanjamesdelaluya)[@bryanjamesdelaluya](https://github.com/bryanjamesdelaluya)

---

Top Contributors

[![bryanjamesdelaluya](https://avatars.githubusercontent.com/u/61488658?v=4)](https://github.com/bryanjamesdelaluya "bryanjamesdelaluya (13 commits)")

### Embed Badge

![Health badge](/badges/bryanjamesdelaluya-shipbob-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/bryanjamesdelaluya-shipbob-laravel/health.svg)](https://phpackages.com/packages/bryanjamesdelaluya-shipbob-laravel)
```

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35916.4M7](/packages/exsyst-swagger)[hubspot/api-client

Hubspot API client

24016.2M20](/packages/hubspot-api-client)[pocketmine/bedrock-protocol

An implementation of the Minecraft: Bedrock Edition protocol in PHP

172445.0k16](/packages/pocketmine-bedrock-protocol)[botman/driver-telegram

Telegram driver for BotMan

93459.5k6](/packages/botman-driver-telegram)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
