PHPackages                             romeroqe/giphy-and-stickers - 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. romeroqe/giphy-and-stickers

ActiveLibrary[API Development](/categories/api)

romeroqe/giphy-and-stickers
===========================

A package that provides an interface between Laravel and Giphy API, includes Gifs and Stickers.

58.3k↓33.3%5PHP

Since Mar 16Pushed 8y ago1 watchersCompare

[ Source](https://github.com/romeroqe/giphy-and-stickers)[ Packagist](https://packagist.org/packages/romeroqe/giphy-and-stickers)[ RSS](/packages/romeroqe-giphy-and-stickers/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Giphy and Stickers
==================

[](#giphy-and-stickers)

[![Latest Stable Version](https://camo.githubusercontent.com/b36033610d29383edbbe7b0017900ccb9e74dcf4f99a10ba6e5df66d5b2ea7b4/68747470733a2f2f706f7365722e707567782e6f72672f726f6d65726f71652f67697068792d616e642d737469636b6572732f762f737461626c65)](https://packagist.org/packages/romeroqe/giphy-and-stickers) [![Total Downloads](https://camo.githubusercontent.com/92dceba3a6bf7d60938e0baedcdccd0a4da713ded0302143bf47e4ac6bc1c0cc/68747470733a2f2f706f7365722e707567782e6f72672f726f6d65726f71652f67697068792d616e642d737469636b6572732f646f776e6c6f616473)](https://packagist.org/packages/romeroqe/giphy-and-stickers) [![Latest Unstable Version](https://camo.githubusercontent.com/8812c73d1eaf6134d86409a294fc618ccc29705e8877a951de1f36344d02b3a0/68747470733a2f2f706f7365722e707567782e6f72672f726f6d65726f71652f67697068792d616e642d737469636b6572732f762f756e737461626c65)](https://packagist.org/packages/romeroqe/giphy-and-stickers) [![License](https://camo.githubusercontent.com/0aefcd8ceec9e04486667c275eaecebdc67ef4ceed50541c69156e93e140f681/68747470733a2f2f706f7365722e707567782e6f72672f726f6d65726f71652f67697068792d616e642d737469636b6572732f6c6963656e7365)](https://packagist.org/packages/romeroqe/giphy-and-stickers)

A package that provides an interface between [Laravel](https://laravel.com/docs/5.3/) and [Giphy API](http://api.giphy.com/), includes Gifs and Stickers.

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

[](#installation)

- [Giphy and Stickers on Packagist](https://packagist.org/packages/romeroqe/giphy-and-stickers)
- [Giphy and Stickers on GitHub](https://github.com/romeroqe/giphy-and-stickers)

### Composer

[](#composer)

First, pull in the package through Composer.

```
“require”: {
    ...
    "romeroqe/giphy-and-stickers": "dev-master"
}
```

And run composer:

```
$ composer update

```

### Provider

[](#provider)

Once installed you need to register the service provider with the application. Open up `config/app.php` and find the `providers` key.

```
'providers' => [
	...
	Romeroqe\Giphy\GiphyServiceProvider::class,
	Romeroqe\Giphy\StickersServiceProvider::class,

]
```

### Facade

[](#facade)

This package also ships with a facade which provides the static syntax. You can register the facade in the aliases key of your `config/app.php` file.

```
'aliases' => [
	...
	'Giphy' => Romeroqe\Giphy\GiphyFacade::class,
	'Stickers' => Romeroqe\Giphy\StickersFacade::class,
]
```

Quick Examples
--------------

[](#quick-examples)

You can see [the documentation](https://github.com/giphy/GiphyAPI#giphy-api-documentation) for more information.

###### Parameters

[](#parameters)

- q - search query term or phrase
- s - search query term or phrase
- limit - (optional) number of results to return, maximum 100. Default 25.
- offset - (optional) results offset, defaults to 0.
- rating - (optional) limit results to those rated (y,g, pg, pg-13 or r).
- lang - (optional) specify default country for regional content; format is 2-letter ISO 639-1 country code. See list of supported langauges [here](https://github.com/Giphy/GiphyAPI#language-support)

### Endpoints

[](#endpoints)

- [Gifs](#gifs)
    - [Search](#search)
    - [Translate](#translate)
    - [Trending](#trending)
    - [Random](#random)
    - [By id](#by-id)
    - [By id](#by-ids)
- [Stickers](#stickers)
    - [Sticker Search](#sticker-search)
    - [Sticker Translate](#sticker-translate)
    - [Sticker Trending](#sticker-trending)
    - [Sticker Random](#sticker-random)

### Gifs

[](#gifs)

#### Search

[](#search)

Search all Giphy GIFs for a word or phrase. Punctuation will be stripped and ignored. On this case, `$giphys` is an array.

Method: Giphy::search($query, $limit = 25, $offset = 0, $rating = null, $lang = null)

```
$giphys = Giphy::search('cat');

foreach ($giphys->data as $giphy) {
    // Get id
	$giphy->id;

	// Get image original url
	$giphy->images->original->url;

	// Get image original mp4 url
	$giphy->images->original->mp4;

	//etc
}
```

You can do a `dd($giphys)` to see all attributes:

```
{#162 ▼
  +"data": array:25 [▼
    0 => {#163 ▼
      +"type": "gif"
      +"id": "W80Y9y1XwiL84"
      +"slug": "gift-W80Y9y1XwiL84"
      +"url": "http://giphy.com/gifs/gift-W80Y9y1XwiL84"
      ...
    }
    1 => {#182 ▶}
    2 => {#202 ▶}
    ...
```

#### Translate

[](#translate)

The translate API draws on search, but uses the Giphy "special sauce" to handle translating from one vocabulary to another.

Method: Giphy::translate($query, $rating = null, $lang = null)

```
$giphy= Giphy::translate('cat');

// Get id
$giphy->data->id;

// Get image original url
$giphy->data->images->original->url;

// Get image original mp4 url
$giphy->data->images->original->mp4;

//etc
```

You can do a `dd($giphy)` to see all attributes:

```
{#162 ▼
  +"data": {#163 ▼
    +"type": "gif"
    +"id": "3oz8xQQP4ahKiyuxHy"
    ...
    +"images": {#165 ▼
      ...
      +"original": {#180 ▼
        +"url": "http://media3.giphy.com/media/3oz8xQQP4ahKiyuxHy/giphy.gif"
        +"width": "480"
        +"height": "352"
        +"size": "3795005"
        +"frames": "33"
        +"mp4": "http://media3.giphy.com/media/3oz8xQQP4ahKiyuxHy/giphy.mp4"
        +"mp4_size": "132229"
        +"webp": "http://media3.giphy.com/media/3oz8xQQP4ahKiyuxHy/giphy.webp"
        +"webp_size": "756840"
      }
      ...
```

#### Trending

[](#trending)

Fetch GIFs currently trending online. On this case, `$giphys` is an array.

Method: Giphy::trending($limit = 25, $rating = null)

```
$giphys = Giphy::trending();

foreach ($giphys->data as $giphy) {
    // Get id
	$giphy->id;

	// Get image original url
	$giphy->images->original->url;

	// Get image original mp4 url
	$giphy->images->original->mp4;

	//etc
}
```

You can do a `dd($giphys)` to see all attributes:

```
{#162 ▼
  +"data": array:25 [▼
    0 => {#163 ▼
      +"type": "gif"
      +"id": "l2SqiAELInKQ8rF0Q"
      +"slug": "2dopequeens-podcast-2-dope-queens-l2SqiAELInKQ8rF0Q"
      +"url": "http://giphy.com/gifs/2dopequeens-podcast-2-dope-queens-l2SqiAELInKQ8rF0Q"
      ...
    }
    1 => {#183 ▶}
    2 => {#203 ▶}
    ...
```

#### Random

[](#random)

Returns a random GIF, limited by tag.

Method: Giphy::random($query, $rating = null)

```
$giphy = Giphy::random('cat');

// Get id
$giphy->data->id;

// Get image original url
$giphy->data->image_original_url;

// Get image mp4 url
$giphy->data->image_mp4_url;

//etc
```

You can do a `dd($giphy)` to see all attributes:

```
{#162 ▼
  +"data": {#163 ▼
    +"type": "gif"
    +"id": "qbpRDgYI5JoKk"
    +"url": "http://giphy.com/gifs/cat-qbpRDgYI5JoKk"
    +"image_original_url": "https://media0.giphy.com/media/qbpRDgYI5JoKk/giphy.gif"
    ...
  }
  +"meta": {#164 ▼
    +"status": 200
    +"msg": "OK"
  }
}
```

#### By ID

[](#by-id)

Returns meta data about a GIF, by GIF id.

Method: Giphy::getByID($id)

```
$giphy= Giphy::getByID('qbpRDgYI5JoKk');

// Get id
$giphy->data->id;

// Get image original url
$giphy->data->images->original->url;

// Get image original mp4 url
$giphy->data->images->original->mp4;

//etc
```

You can do a `dd($giphy)` to see all attributes:

```
{#162 ▼
  +"data": {#163 ▼
    +"type": "gif"
    +"id": "qbpRDgYI5JoKk"
    ...
    +"images": {#164 ▼
      ...
      +"original": {#179 ▼
        +"url": "https://media1.giphy.com/media/qbpRDgYI5JoKk/giphy.gif"
        +"width": "500"
        ...
```

#### By IDs

[](#by-ids)

A multiget version of the get GIF by ID endpoint. On this case, `$giphys` is an array.

Method: Giphy::getByIDs(array $ids)

```
$giphys = Giphy::getByIDs(['qbpRDgYI5JoKk','FiGiRei2ICzzG']);

foreach ($giphys->data as $giphy) {
    // Get id
	$giphy->id;

	// Get image original url
	$giphy->images->original->url;

	// Get image original mp4 url
	$giphy->images->original->mp4;

	//etc
}
```

You can do a `dd($giphys)` to see all attributes:

```
{#162 ▼
  +"data": array:2 [▼
    0 => {#163 ▼
      +"type": "gif"
      +"id": "qbpRDgYI5JoKk"
      +"slug": "cat-qbpRDgYI5JoKk"
      ...
    }
    1 => {#182 ▼
      +"type": "gif"
      +"id": "FiGiRei2ICzzG"
      +"slug": "funny-cat-FiGiRei2ICzzG"
      ...
```

### Stickers

[](#stickers)

The methods of Stickers are similar to the methods Giphy, so I will omit the examples of `dd()`, but also you can use it to view all the attributes of objects.

#### Sticker Search

[](#sticker-search)

Search all Sticker for a word or phrase. Punctuation will be stripped and ignored. On this case, `$stickers` is an array.

Method: Stickers::search($query, $limit = 25, $offset = 0, $rating = null, $lang = null)

```
$stickers = Stickers::search('dog');

foreach ($stickers->data as $sticker) {
    // Get id
	$sticker->id;

	// Get image original url
	$sticker->images->original->url;

	// Get image original mp4 url
	$sticker->images->original->mp4;

	//etc
}
```

#### Sticker Translate

[](#sticker-translate)

The translate API draws on search, but uses the Stickers "special sauce" to handle translating from one vocabulary to another.

Method: Stickers::translate($query, $rating = null, $lang = null)

```
$sticker= Stickers::translate('cat');

// Get id
$sticker->data->id;

// Get image original url
$sticker->data->images->original->url;

// Get image original mp4 url
$sticker->data->images->original->mp4;

//etc
```

#### Sticker Trending

[](#sticker-trending)

Fetch Stickers currently trending online. On this case, `$stickers` is an array.

Method: Stickers::trending($limit = 25, $rating = null)

```
$stickers = Stickers::trending();

foreach ($stickers->data as $sticker) {
    // Get id
	$sticker->id;

	// Get image original url
	$sticker->images->original->url;

	// Get image original mp4 url
	$sticker->images->original->mp4;

	//etc
}
```

#### Sticker Random

[](#sticker-random)

Returns a random Sticker, limited by tag.

Method: Stickers::random($query, $rating = null)

```
$sticker = Stickers::random('cat');

// Get id
$sticker->data->id;

// Get image original url
$sticker->data->image_original_url;

// Get image mp4 url
$sticker->data->image_mp4_url;

//etc
```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity30

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 96.4% 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://www.gravatar.com/avatar/7763f097d3351f46647d4d3456e13fe132b9a4f7e69c0e8a72c202f84697eec9?d=identicon)[Romeroqe](/maintainers/Romeroqe)

---

Top Contributors

[![romeroqe](https://avatars.githubusercontent.com/u/13074238?v=4)](https://github.com/romeroqe "romeroqe (27 commits)")[![bcm-au](https://avatars.githubusercontent.com/u/264286944?v=4)](https://github.com/bcm-au "bcm-au (1 commits)")

### Embed Badge

![Health badge](/badges/romeroqe-giphy-and-stickers/health.svg)

```
[![Health](https://phpackages.com/badges/romeroqe-giphy-and-stickers/health.svg)](https://phpackages.com/packages/romeroqe-giphy-and-stickers)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M480](/packages/stripe-stripe-php)[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M272](/packages/twilio-sdk)[knplabs/github-api

GitHub API v3 client

2.2k15.8M187](/packages/knplabs-github-api)[facebook/php-business-sdk

PHP SDK for Facebook Business

90121.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

73813.7M114](/packages/meilisearch-meilisearch-php)[google/gax

Google API Core for PHP

263103.1M454](/packages/google-gax)

PHPackages © 2026

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