PHPackages                             roketin/connect - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. roketin/connect

ActiveLibrary[HTTP &amp; Networking](/categories/http)

roketin/connect
===============

Roketin Engine API Client

v0.0.9(8y ago)0414MITPHPPHP ^5.5.9 || ^7.0

Since Apr 27Pushed 7y ago4 watchersCompare

[ Source](https://github.com/roketin/connect)[ Packagist](https://packagist.org/packages/roketin/connect)[ RSS](/packages/roketin-connect/feed)WikiDiscussions master Synced yesterday

READMEChangelog (9)Dependencies (7)Versions (10)Used By (0)

Roketin Client Template
=======================

[](#roketin-client-template)

[![Latest Version](https://camo.githubusercontent.com/1774f33ff384fb9bc372aec17b1227e2410d7375a3bc4c78db4d0db9bfea43ec/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f726f6b6574696e2f636f6e6e6563742e7376673f7374796c653d666c61742d737175617265)](https://github.com/roketin/connect/releases)[![License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/laravel/framework)[![Total Downloads](https://camo.githubusercontent.com/fdf1f9882b472efb05e15ad8fd60e5385d67179b2156a62e58727ac1d29ff445/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f726f6b6574696e2f636f6e6e6563742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/roketin/connect)

RClient is standard client application to [Roketin API](http://www.roketin.com) to accelerate connecting and integrating basic feature of Roketin Engine API to client's website.

API Documentation
-----------------

[](#api-documentation)

Documentation for the Roketin API can be found on the [Documentation](http://docs.rengine.apiary.io/#).

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

[](#installation)

### Laravel 5

[](#laravel-5)

```
"require": {
    "laravel/framework": "5.0.*",
    "roketin/connect": "v0.0.9"
}
```

Next, run the Composer update command from the Terminal:

```
composer update

or

composer update "roketin/connect"

```

CONFIGURATION
-------------

[](#configuration)

1. Open config/app.php and addd this line to your Service Providers Array

```
  Roketin\Providers\RoketinServiceProvider::class,
```

2. Open config/app.php and addd this line to your Aliases

```
    'Roketin' => Roketin\Facades\RoketinFacade::class
```

3. Publish the config using the following command:

    $ php artisan vendor:publish --provider="Roketin\\Providers\\RoketinServiceProvider"
4. Create an .env file based on .env.example file and change the value based on client credentials

```
  ROKETIN_API=http://dev.roketin.com/api/v2.2/
  ROKETIN_PUBLIC=http://dev.roketin.com/

  ROKETIN_TOKEN=aBCd1234
  ROKETIN_USERNAME=roketin
  ROKETIN_RX=4241639264053293060625251241576152575759

```

HOW TO USE
----------

[](#how-to-use)

- [Basic Usage](#basic)
- [Conditions](#conditions)
- [Sorting](#sorting)
- [Grouping](#grouping)
- [Pagination](#pagination)
- [Tags](#tags)
- [Archives](#archives)
- [Shipping](#shipping)
- [Sales Order](#order)
- [Subscribe](#subscribe)
- [Message](#message)
- [B2b](#join)
- [Vouchers](#vouchers)
- [Users](#users)
- [Others](#others)

Basic
-----

[](#basic)

You can call a Roketin Object by using: **Roketin::model()-&gt;get()**

```
    use Roketin;

    $menus = Roketin::menus()->get();
    $posts = Roketin::posts()->get();
    $products = Roketin::products()->get();
    $variants = Roketin::variants()->get();
    etc..
```

Fethcing single object with id/slug/etc:

```
    /*
     * Same as fetching object, but in singular form (without 's')
     * the second argument can be id or slug or etc ..
     * this is dynamic function call to Roketin Engine API
     */

    $home = Roketin::menu('home')->get();
    $post = Roketin::post('latest-update')->get();
```

Conditions
----------

[](#conditions)

Fetching object with simple where conditions:

```
    /**
     * @param $field
     * @param $operation
     * @param $value
     */

    $posts = Roketin::posts()->where('title','like','vacation')->get();

    //NOTE :
    //It doesn't need to add % if using 'like' operator
```

Fetching object with simple orWhere conditions:

```
    /**
     * @param $field
     * @param $operation
     * @param $value
     */

    $posts = Roketin::posts()
                        ->where('title','like','vacation')
                        ->orWhere('title','like','holiday')
                        ->get();

    //NOTE :
    //It doesn't need to add % if using 'like' operator
```

Advance where orWhere grouping conditions:

```
    /**
     * @param $field
     * @param $operation
     * @param $value
     */

    $posts = Roketin::posts()
                        ->where('title','like','vacation')
                        ->orWhere('title','like','holiday')
                        ->where('date','>=','2016-04-10')
                        ->where('date','sortBy('created_at')->get();
    $posts = Roketin::posts()->sortBy('created_at','DESC')->get();
```

Grouping
--------

[](#grouping)

Fetch a Roketin Object API by grouping on it's field:

```
    /*
     * grouping object before fetch
     *
     * @param $field
     * /

    $posts = Roketin::posts()->groupBy('created_at')->get();
    $posts = Roketin::posts()->groupBy('id')->groupBy('created_at')->get();
```

Pagination
----------

[](#pagination)

Paginating fetch object

```
    /*
     * paginate object before fetch
     *
     * @param $size default value is 10
     * @param $page (optional)
     * /

    $posts = Roketin::posts()->paginate(10)->get();
    $posts = Roketin::posts()->paginate(10,2)->get();
```

Tags
----

[](#tags)

Get all tags post:

```
    $tags = Roketin::tags()->get()
```

Get all posts by tag:

```
    /*
     * @param $tag separated by ';'
     * @param $is_blog (optional) default value is false
     */
    $posts = Roketin::tags('tag_1;tag_2',false)->get()
```

Archives
--------

[](#archives)

Get archives by year:

```
    /*
     * @param $tags (optional) default value is '', multiple (; as separator)
     * @param $year (optional) default value is '2016'
     */
    $archive = Roketin::archives('tags;tags2;another tag','2016')->get()
```

Shipping
--------

[](#shipping)

Get all available countries:

```
    $countries = Roketin::shipping()->countries()
```

Get all available provinces (currently available in Indonesia only):

```
    $province = Roketin::shipping()->province()
```

Get all available city (currently available in Indonesia only):

```
    /*
     * @param $provinceid
     */

    $cities = Roketin::shipping()->province(9)->cities()
```

Calculate shipping costs:

```
    /*
     * @param $destination = city id
     * @param $courier = JNE/TIKI/POS
     * @param $weight = item weight in KG (optional) default value 1
     * @param $origin = city id
     */

    $costs = Roketin::shipping()->costs(23, 'JNE')
```

Order
-----

[](#order)

Create sales order:

```
    /*
     * @param array $generalData
     * @param array $customerData
     * @param array $products
     * @param $bcc(optional), default = null
     */

     $generalData = [
            "notes"         => "some string here",
            "is_email_only" => true, //default value false (for customer guest)
            "ship_cost"     => 10000,
            'ship_provider' => "JNE"
     ];

     $customerData = [
            "first_name" => "Roketin",
            "last_name"  => "User",
            "phone"      => "+628123456789",
            "email"      => "user@roketin.com",
     ];

     $products = [
         [
             "id"         => "2623",
             "qty"        => "1",
             "sku"        => "ADVHEL001",
             "price_type" => "retail_price",
         ],
     ];
    $order = Roketin::order()->create($generalData, $customerData, $products, 'test@mailinator.com')
```

> **Note:**
>
> - For detailed attribute, see sales order API documentation [HERE](http://docs.rengine.apiary.io/#reference/sales-order/sales-order)

---

Confirm payment order:

```
    /*
     * @param $invoice_number
     * @param $payment_type
     * @param $total
     * @param $customer_name
     * @param $customer_bank
     * @param $transaction_number
     * @param Image $image
     * @param $bank_account(optional), default = null
     * @param $paid_date(optional), default = null
     * @param $bcc(optional), default = null
     */

    //you can create image for bank transfer that
    //showing transfer is success
    //by using Image::make()
    $img = Image::make(Input::file('image'))

    $payment = Roketin::order()
                ->confirm('SI16041300058',
                          'TRANSFER',
                          '150000',
                          'Customer Roketin',
                          'Bank BCA',
                          'TRX-123',
                          $img,
                          '0853909090',
                          '2016-04-10',
                          'bcc@mailinator.com')
```

---

Void an Sales Order and it's invoice:

```
    /*
     * @param $invoice_number
     */

    $order = Roketin::order()->void('ASD02262016')
```

Subscribe
---------

[](#subscribe)

Submit a subscription email:

```
    /*
     * @param $email
     * @param $bcc(optional), default = null
     */

    $subscribe = Roketin::subscribe('somebody@anythin.com', 'bcc@mailinator.com')
```

Message
-------

[](#message)

Send a message to Roketin Engine Inbox:

```
    /*
     * @param $sender_name
     * @param $sender_email
     * @param $sender_phone
     * @param $message_title
     * @param $message_body
     * @param $bcc(optional), default = null
     */

    $msg = Roketin::message()
                    ->send(
                    'test',
                    'test@mailinator.com',
                    '123123',
                    'test mesage',
                    'hai',
                    'bcc@mailinator.com')
```

Message
-------

[](#message-1)

Send a message to Roketin Engine Inbox:

```
    /*
     * @param $sender_name
     * @param $sender_email
     * @param $sender_phone
     * @param $message_title
     * @param $message_body
     * @param $bcc(optional), default = null
     */

    $msg = Roketin::message()
                    ->send(
                    'test',
                    'test@mailinator.com',
                    '123123',
                    'test mesage',
                    'hai',
                    'bcc@mailinator.com')
```

Vouchers
--------

[](#vouchers)

Check validity of a voucher:

```
    /*
     * @param $code
     * @param $voucher_type (optional), default = null
     * voucher type can be giftvoucher (voucher in
     * exchange to money nominal) or
     * other (voucher to exchange to free product)
     * default is voucher_type is other
     */

    $check = Roketin::voucher()->check('AS123D')
```

---

invalidate a voucher (use voucher):

```
    /*
     * @param $voucher_code
     * @param $voucher_type (optional) default is other
     * @param $used_by (optional) default is logged in user
     */

    $check = Roketin::voucher()->invalidate('AS123D')
```

Users
=====

[](#users)

Register new user:

```
    /*
     * @param $first_name
     * @param $last_name
     * @param $email
     * @param $phone
     * @param $password
     * @param $password_confirmation
     * @param $bcc(optional), default = null
     * @return user object
     */

    $user = Roketin::user()->register('first_name', 'last_name', 'email', 'phone', 'password', 'password_confirmation', 'bcc');
```

User activation:

```
    /*
     * @param $token
     * @return true if success activation
     * @return error object if present
     */

    $activation = Roketin::user()->activate('token');
```

Resend activation code to email:

```
    /*
     * @param $email
     * @return true if success activation
     * @return error object if present
     */

    $resend = Roketin::user()->resendActivation('someone@somthing.com');
```

Forgot password (generate and send token to user email):

```
    /*
     * @param $email
     * @param $bcc(optional), default = null
     * @return true if success activation
     * @return error object if present
     */

    Roketin::user()->forgot('someone@somthing.com', 'bcc@mailinator.com');
```

Reset password:

```
    /*
     * @param $token
     * @param $password
     * @param $password_confirmation
     * @param $bcc(optional), default = null
     * @return true if success activation
     * @return error object if present
     */

    Roketin::user()->resetPassword('token','asdf','asdf', 'bcc@mailinator.com');
```

Login:

```
    /*
     * @param $email
     * @param $password
     * @param $type (optional) default = user, available = vendor
     * @return true if success activation
     * @return error object if present
     */

    Roketin::auth()->login('somebody@somthing.com','asdf');
```

Current User:

```
    /*
     * @return user object
     */

    Roketin::auth()->user();
```

Update user data:

```
    /*
     * @return user object
     */

    Roketin::user()->update(['first_name' => 'John']);
```

> **Note:**
>
> - For detailed attribute, see sales order API documentation [HERE](http://docs.rengine.apiary.io/#reference/users/update)

Get transaction history data:

```
    /*
     * @return user object
     */

    Roketin::user()->transactionHistory()->get();
```

> **Note:**
>
> - you can also use where(), orWhere(), etc query with this method

Logout:

```
    /*
     * @return boolean
     */

    Roketin::auth()->logout();
```

Others
------

[](#others)

Get Product Variants By Category:

```
    /*
     * @param $category_name
     * @return variants object
     */

    Roketin::variantsByCategory($category_name)->get();
```

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 50% 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.

###  Release Activity

Cadence

Every ~92 days

Recently: every ~162 days

Total

9

Last Release

2981d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1852931?v=4)[Albert Christanto](/maintainers/albertchristanto)[@albertchristanto](https://github.com/albertchristanto)

![](https://avatars.githubusercontent.com/u/17893427?v=4)[Roketin](/maintainers/roketin)[@roketin](https://github.com/roketin)

---

Top Contributors

[![sukorenomw](https://avatars.githubusercontent.com/u/11178302?v=4)](https://github.com/sukorenomw "sukorenomw (16 commits)")[![albertchristanto](https://avatars.githubusercontent.com/u/1852931?v=4)](https://github.com/albertchristanto "albertchristanto (15 commits)")[![ivanchen](https://avatars.githubusercontent.com/u/1555622?v=4)](https://github.com/ivanchen "ivanchen (1 commits)")

---

Tags

apiclientlaravelrestengineapiclient

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/roketin-connect/health.svg)

```
[![Health](https://phpackages.com/badges/roketin-connect/health.svg)](https://phpackages.com/packages/roketin-connect)
```

###  Alternatives

[laravel/socialite

Laravel wrapper around OAuth 1 &amp; OAuth 2 libraries.

5.7k108.5M855](/packages/laravel-socialite)[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M342](/packages/psalm-plugin-laravel)[unisharp/laravel-filemanager

A file upload/editor intended for use with Laravel 5 to 10 and CKEditor / TinyMCE

2.2k3.5M82](/packages/unisharp-laravel-filemanager)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9762.4M125](/packages/roots-acorn)[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1235.9k20](/packages/fleetbase-core-api)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)

PHPackages © 2026

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