PHPackages                             ziming/laravel-crisp - 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. ziming/laravel-crisp

ActiveLibrary[API Development](/categories/api)

ziming/laravel-crisp
====================

Wrapper Library for Crisp Chat Rest Api

1.2(2mo ago)79.4k↓30%1[1 PRs](https://github.com/ziming/laravel-crisp/pulls)MITPHPPHP ^8.2CI passing

Since Jun 22Pushed 3mo agoCompare

[ Source](https://github.com/ziming/laravel-crisp)[ Packagist](https://packagist.org/packages/ziming/laravel-crisp)[ Docs](https://github.com/ziming/laravel-crisp)[ GitHub Sponsors](https://github.com/ziming)[ RSS](/packages/ziming-laravel-crisp/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (32)Versions (21)Used By (0)

Laravel Crisp
=============

[](#laravel-crisp)

[![Latest Version on Packagist](https://camo.githubusercontent.com/d5b031d61cf0371c2a33a452903fa6969c04677fe19da3f1703b185ebffebdd3/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7a696d696e672f6c61726176656c2d63726973702e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ziming/laravel-crisp)[![GitHub Tests Action Status](https://camo.githubusercontent.com/a24714286b80e6ed2df63af25d50d5cd6cc2f942a73051dccceae115cf50a891/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f7a696d696e672f6c61726176656c2d63726973702f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/ziming/laravel-crisp/actions?query=workflow%3Arun-tests+branch%3Amain)[![GitHub Code Style Action Status](https://camo.githubusercontent.com/b815bdc66ef7f980deeed288a585acbcc4a047383abbc1a67866fcffdbe2f74f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f7a696d696e672f6c61726176656c2d63726973702f6669782d7068702d636f64652d7374796c652d6973737565732e796d6c3f6272616e63683d6d61696e266c6162656c3d636f64652532307374796c65267374796c653d666c61742d737175617265)](https://github.com/ziming/laravel-crisp/actions?query=workflow%3A%22Fix+PHP+code+style+issues%22+branch%3Amain)[![Total Downloads](https://camo.githubusercontent.com/0ef3abca5cdcae8cff23d945816e920ffdf3be45e9eb382a95813ba6ae98eaa8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7a696d696e672f6c61726176656c2d63726973702e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/ziming/laravel-crisp)

A laravel Crisp library for [Crisp Chat](https://crisp.chat/?track=9fH4AdXJwg) API.

Some example of things you can more easily do with this library:

- Showing your customer last Crisp chat message in your own admin, which you can then click on to go straight to their profile or chat in Crisp
- A cron job to delete very old messages from your Crisp workspace
- A free/paid plugin in the Crisp Marketplace
- Schedule reminders to your customers via Crisp Chat
- Build your own chat bot to reply to your customers on Crisp Chat
- and much more!

Support Me
----------

[](#support-me)

You can use my [referral link to sign up for a Crisp Chat free account. I get a small reward if you upgrade to the Essentials or Plus Plan in the future.](https://crisp.chat/?track=9fH4AdXJwg)

I highly recommend Crisp Chat if you are looking for a chat support SaaS for your website. As it charges a flat monthly fee per workspace instead of charging by per seat.

At the Essentials Plan &amp; above, you also get features like: Sites Monitoring, Status Pages, AI Bot Builder, Knowledge Base, WhatsApp Integration &amp; more!

Side Note: Looking to send WhatsApp messages with Crisp Chat? Check out my [Laravel Crisp WhatsApp package](https://github.com/ziming/laravel-crisp-whatsapp) too!

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

[](#installation)

You can install the package via composer:

```
composer require ziming/laravel-crisp
```

You can publish the config file with:

```
php artisan vendor:publish --tag="crisp-config"
```

This is the contents of the published config file:

```
return [
    'website_id' => env('CRISP_WEBSITE_ID'),
    'tier' => env('CRISP_TIER', 'plugin'),
    'access_key_id' => env('CRISP_ACCESS_KEY_ID'),
    'secret_access_key' => env('CRISP_SECRET_ACCESS_KEY'),
];
```

Usage
-----

[](#usage)

So what are the differences between the Crisp's official PHP SDK and this package?

The 1st main difference is that you don't have to set the tier &amp; api credentials every time after instantiating

You also do not have to pass in the `website_id` every time.

I hope through the examples below, you can see how much more convenient this brings for those of us who only have a single Crisp workspace.

But 1st you need to create your plugin at the [Crisp Marketplace](https://marketplace.crisp.chat/) 1st.

With that done, you may continue with the examples below or check out the source code in the [src/Resources folder](https://github.com/ziming/laravel-crisp/tree/main/src/Resources).

```
// Official PHP Crisp SDK
use Crisp\CrispClient;
$officialCrisp = new CrispClient();
$officialCrisp->setTier('plugin');
$officialCrisp->authenticate(
    config('crisp.access_key_id'),
    config('crisp.secret_access_key')
);

$officialCrisp->websitePeople->findByEmail(config('crisp.website_id'), 'abc@example.com');

// This Package
$laravelCrisp = new Ziming\LaravelCrisp();
$laravelCrisp->websitePeople->findByEmail('abc@example.com');

// If you prefer the laravel facade approach you can just do this
\Ziming\LaravelCrisp\Facades\LaravelCrisp::websitePeople()
    ->findByEmail('abc@example.com');

// If for some reason you want to use a different website_id,
// the official Crisp client is always available too
$laravelCrisp->officialClient->websitePeople->findByEmail(
    config('crisp.website_id'),
    'abc@example.com'
);
```

The 2nd main difference are extra methods that I think are useful but are not in Crisp official SDK when I 1st added them.

```
// Gives you the Crisp Profile Link in Crisp. You can put it in your laravel admin to easier go to the customer profile in Crisp for example.
\Ziming\LaravelCrisp\Resources\WebsitePeople::getProfileLink('people-id');

// Gives you the conversation link in Crisp. You can put it in your laravel admin to easier go to the customer chat in Crisp for example.
\Ziming\LaravelCrisp\Resources\WebsiteConversations::getConversationLink('session-id');

// Get the first people id that matches the search text if 1 or more results are returned
$laravelCrisp = new Ziming\LaravelCrisp();
$laravelCrisp->websitePeople->getFirstPeopleIdBySearchText('Some Phone Number as Crisp does not have an exact filter by phone feature yet (but coming soon)');

// Get you the last message of a conversation to show in admin for example
$laravelCrisp->websiteConversations->getOneLastMessage('session-id');

// Gives you a nice DTO object for a crisp conversation. Which give really nice hints to your IDEs
$crispConversation = $laravelCrisp->websiteConversations->getOneCrispConversation('session-id');

// Because it is a DTO object, you can access all the various properties
// of the object with IDE hints!
$crispConversation->is_verified;
```

The 3rd main difference is a few methods' signatures are changed to be more user-friendly compared to

```
// The official Crisp PHP sdk takes in a params array, mine takes in the 2 required arguments directly
$laravelCrisp->websiteConversations->create('website name', 'website.domain');

// The official Crisp PHP sdk takes in a params array, where the date key need to be in ISO 8601 string format,
// Mine takes in a Carbon instance directly and do the conversion for you. You can also pass in a ISO 8601 string for the $date
// argument if you prefer. You can use this to send a reminder to your customer via Crisp Chat for example
$laravelCrisp->websiteConversations->scheduleReminder($sessionId, now()->addDay(), 'Note');
```

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [ziming](https://github.com/ziming)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

49

—

FairBetter than 95% of packages

Maintenance82

Actively maintained with recent releases

Popularity32

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 91% 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 ~15 days

Recently: every ~54 days

Total

18

Last Release

62d ago

Major Versions

0.7.2 → 1.02025-08-08

PHP version history (2 changes)0.1PHP ^8.4

0.7.2PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/20bbe714df709bd31994360fbba65adce9f28fd930c5590265d4d58c452fe32e?d=identicon)[ziming.opensource](/maintainers/ziming.opensource)

---

Top Contributors

[![ziming](https://avatars.githubusercontent.com/u/679513?v=4)](https://github.com/ziming "ziming (81 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (6 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (2 commits)")

---

Tags

aichatbotcrispcrisp-apicrisp-chathacktoberfestlaravellibrarypackagephplaravelziminglaravel-crisplaravel-crisp-chat

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/ziming-laravel-crisp/health.svg)

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

###  Alternatives

[scalar/laravel

Render your OpenAPI-based API reference

6183.9k2](/packages/scalar-laravel)[ryangjchandler/bearer

Minimalistic token-based authentication for Laravel API endpoints.

8129.8k](/packages/ryangjchandler-bearer)[combindma/laravel-facebook-pixel

Meta pixel integration for Laravel

4956.9k](/packages/combindma-laravel-facebook-pixel)[stechstudio/laravel-hubspot

A Laravel SDK for the HubSpot CRM Api

2971.0k](/packages/stechstudio-laravel-hubspot)[njoguamos/laravel-plausible

A laravel package for interacting with plausible analytics api.

208.8k](/packages/njoguamos-laravel-plausible)[tapp/filament-webhook-client

Add a Filament resource and a policy for Spatie Webhook client

1120.2k](/packages/tapp-filament-webhook-client)

PHPackages © 2026

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