Giphy website screenshot

Giphy

GIPHY is the world's largest library of GIFs, stickers, animated emoji, and Clips (GIFs with sound), with a developer API used by messaging apps, social platforms, productivity tools, ads, and creator products. GIPHY is owned by Meta. Authentication is via API key (Beta or Production tier) and all surfaces share the same envelope (data + meta + pagination) with rich, multi-rendition media payloads.

1 APIs 9 Features
PhotographyMediaGIFsStickersEmojiVideoMessagingSocialMeta

APIs

GIPHY API

The GIPHY REST API. Search, trending, translate, random, lookup, categories, autocomplete, related/trending terms, channels, animated emoji, animated text, Clips, analytics ping...

Collections

GIPHY API

OPEN

Pricing Plans

Giphy Plans Pricing

3 plans

PLANS

Rate Limits

Giphy Rate Limits

0 limits

RATE LIMITS

FinOps

Giphy Finops

FINOPS

Features

Search & Trending

Query millions of GIFs/stickers/emoji or fetch curated trending content.

Translate

Convert any phrase to a single contextually relevant GIF or sticker.

Random

Surface a random GIF or sticker, optionally tag-filtered.

Animate

Programmatically generate animated text GIFs.

Clips

Short-form videos with sound, gated behind approval.

Multi-Rendition Assets

Every result includes 20+ pre-encoded renditions (GIF, MP4, WebP) for any surface.

Analytics Pingbacks

Per-result onload/onclick/onsent URLs power view/click/share telemetry.

Programmatic Upload

Upload GIFs or videos to GIPHY (up to 100 MB) via upload.giphy.com.

First-Party SDKs

Native iOS, Android, React Native, Flutter, and Web SDKs ship UI-ready pickers.

Use Cases

Messaging GIF Picker

Drop-in GIF/sticker picker for chat apps using the GIPHY SDKs.

Story / Post Stickers

Animated stickers and emoji for stories and posts.

Content Discovery

Trending and search-driven discovery for GIF-led products.

Brand & Ad Creative

Branded stickers and channels for marketing campaigns.

Video Editor Integrations

Clips and stickers embedded in mobile video editors.

Productivity / Reactions

Reactions, lightweight expressions in productivity software.

Integrations

Meta (Facebook, Instagram, Messenger, WhatsApp)

GIPHY is the GIF search backbone across Meta surfaces.

Slack, Discord, Microsoft Teams

GIPHY powers in-chat GIF reactions across major chat platforms.

iMessage / Telegram / Signal

Native and third-party stickers via the SDKs.

Twitter / X

GIF picker integration.

Adobe Express / Canva / Mobile Editors

Stickers and clips in creative-tool integrations.

Solutions

Beta Key

Free, rate-limited API access for development.

Production Key

Reviewed access with higher throughput, custom pricing.

Clips Access

Gated access to GIFs-with-sound endpoints.

Semantic Vocabularies

Giphy Context

17 classes · 20 properties

JSON-LD

API Governance Rules

Giphy API Rules

7 rules · 4 errors 3 warnings

SPECTRAL

JSON Structure

Giphy Channel Structure

13 properties

JSON STRUCTURE

Giphy Clip Structure

1 properties

JSON STRUCTURE

Giphy Gif Structure

22 properties

JSON STRUCTURE

Giphy Images Structure

0 properties

JSON STRUCTURE

Example Payloads

Giphy Get Gif By Id Example

2 fields

EXAMPLE

Giphy Get Random Gif Example

2 fields

EXAMPLE

Giphy List Emoji Example

2 fields

EXAMPLE

Giphy Search Clips Example

2 fields

EXAMPLE

Giphy Search Gifs Example

2 fields

EXAMPLE

Giphy Translate Gif Example

2 fields

EXAMPLE

Giphy Upload Gif Example

2 fields

EXAMPLE

Resources

🔗
Website
Website
🌐
DeveloperPortal
DeveloperPortal
🔗
Documentation
Documentation
🌐
Console
Console
📝
Signup
Signup
🔗
Login
Login
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🔗
Branding
Branding
💬
Support
Support
👥
GitHubOrganization
GitHubOrganization
👥
Historical API Reference (archived)
GitHubRepository
📰
Blog
Blog
🔗
X
X
🔧
GIPHY Bandwidth Saver (reference implementation)
Tools
🔧
Cloudflare CDN Config Reference
Tools
🔧
Fastly Compute Reference
Tools
🔗
SpectralRules
SpectralRules
🔗
Vocabulary
Vocabulary
🔗
JSONLD
JSONLD
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps Cost Tracking Profile
Resources

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: GIPHY API
  version: '1.0'
request:
  auth:
    type: apikey
    key: api_key
    value: '{{api_key}}'
    placement: query
items:
- info:
    name: GIFs
    type: folder
  items:
  - info:
      name: Search GIFs
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs/search
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: q
        value: ''
        type: query
        description: Search query term or phrase, URL-encoded, max 50 characters.
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
      - name: lang
        value: ''
        type: query
        description: Default language (ISO 639-1) for regional content.
      - name: bundle
        value: ''
        type: query
        description: Reduce response payload by requesting only the rendition bundle you need.
      - name: random_id
        value: ''
        type: query
        description: Privacy-preserving user identifier produced by /v1/randomid.
      - name: country_code
        value: ''
        type: query
        description: ISO 3166-1 alpha-2 country code used to localize results.
    docs: Search GIPHY's library of millions of GIFs by keyword.
  - info:
      name: Get Trending GIFs
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs/trending
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
      - name: bundle
        value: ''
        type: query
        description: Reduce response payload by requesting only the rendition bundle you need.
      - name: random_id
        value: ''
        type: query
        description: Privacy-preserving user identifier produced by /v1/randomid.
      - name: country_code
        value: ''
        type: query
        description: ISO 3166-1 alpha-2 country code used to localize results.
    docs: Return the most relevant and engaging GIFs each day.
  - info:
      name: Translate Term to GIF
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs/translate
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: s
        value: ''
        type: query
        description: Search term to translate to a GIF.
      - name: weirdness
        value: ''
        type: query
        description: Translate weirdness (0 conservative ... 10 most weird).
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
      - name: random_id
        value: ''
        type: query
        description: Privacy-preserving user identifier produced by /v1/randomid.
    docs: Convert words and phrases to a single, contextually relevant GIF.
  - info:
      name: Get Random GIF
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs/random
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: tag
        value: ''
        type: query
        description: Filter results by tag.
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
      - name: random_id
        value: ''
        type: query
        description: Privacy-preserving user identifier produced by /v1/randomid.
    docs: Return a single random GIF, optionally filtered by tag.
  - info:
      name: Get GIF by ID
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs/:gif_id
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: gif_id
        value: ''
        type: path
        description: GIPHY ID of the GIF.
    docs: Retrieve metadata for a single GIF.
  - info:
      name: Get GIFs by ID
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: ids
        value: ''
        type: query
        description: Comma-separated list of GIF IDs (max 100).
    docs: Fetch metadata for up to 100 GIFs at once, by comma-separated IDs.
- info:
    name: Categories
    type: folder
  items:
  - info:
      name: List GIF Categories
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs/categories
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
    docs: Return the list of GIF categories.
- info:
    name: Search Discovery
    type: folder
  items:
  - info:
      name: Autocomplete Search Tags
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/gifs/search/tags
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: q
        value: ''
        type: query
        description: Partial search term.
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
    docs: Return tag suggestions for a partial search term.
  - info:
      name: Get Related Search Terms
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/tags/related/:term
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: term
        value: ''
        type: path
    docs: Return related search terms for a given query.
  - info:
      name: Get Trending Search Terms
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/trending/searches
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
    docs: Return the most popular search terms across GIPHY.
- info:
    name: Stickers
    type: folder
  items:
  - info:
      name: Search Stickers
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/stickers/search
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: q
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
      - name: lang
        value: ''
        type: query
        description: Default language (ISO 639-1) for regional content.
    docs: Search GIPHY's library of stickers (transparent-background animations).
  - info:
      name: Get Trending Stickers
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/stickers/trending
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
    docs: Return the most relevant and engaging stickers each day.
  - info:
      name: Translate Term to Sticker
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/stickers/translate
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: s
        value: ''
        type: query
      - name: weirdness
        value: ''
        type: query
        description: Translate weirdness (0 conservative ... 10 most weird).
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
    docs: Convert words and phrases to a single contextually relevant sticker.
  - info:
      name: Get Random Sticker
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/stickers/random
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: tag
        value: ''
        type: query
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
    docs: Return a single random sticker, optionally filtered by tag.
- info:
    name: Emoji
    type: folder
  items:
  - info:
      name: List Animated Emoji
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v2/emoji
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
    docs: Return GIPHY's animated emoji library.
  - info:
      name: Get Emoji Variations
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v2/emoji/:gif_id/variations
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: gif_id
        value: ''
        type: path
    docs: Return all variations of a single animated emoji.
- info:
    name: Clips
    type: folder
  items:
  - info:
      name: Search Clips
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/clips/search
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: q
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
      - name: lang
        value: ''
        type: query
        description: Default language (ISO 639-1) for regional content.
      - name: country_code
        value: ''
        type: query
        description: ISO 3166-1 alpha-2 country code used to localize results.
    docs: Search the GIPHY Clips library (GIFs with sound).
  - info:
      name: Get Trending Clips
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/clips/trending
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
      - name: rating
        value: ''
        type: query
        description: Filter results by MPAA-style rating.
      - name: country_code
        value: ''
        type: query
        description: ISO 3166-1 alpha-2 country code used to localize results.
    docs: Return the most popular Clips of the day.
- info:
    name: Animate
    type: folder
  items:
  - info:
      name: Animate Text
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/animate
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: m
        value: ''
        type: query
        description: Text or phrase to animate.
      - name: style
        value: ''
        type: query
        description: Optional animation style identifier.
    docs: Programmatically generate an animated text GIF from a phrase.
- info:
    name: Channels
    type: folder
  items:
  - info:
      name: Search Channels
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/channels/search
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      - name: q
        value: ''
        type: query
      - name: limit
        value: ''
        type: query
        description: Maximum number of items to return per page.
      - name: offset
        value: ''
        type: query
        description: Position in the result set for pagination.
    docs: Find GIPHY channels matching the supplied query.
- info:
    name: Utilities
    type: folder
  items:
  - info:
      name: Create Random ID
      type: http
    http:
      method: GET
      url: https://api.giphy.com/v1/randomid
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
    docs: Generate a unique, privacy-preserving identifier for tracking users in a session.
- info:
    name: Analytics
    type: folder
  items:
  - info:
      name: Register Search Action
      type: http
    http:
      method: POST
      url: https://api.giphy.com/v1/gifs/search/actions
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      body:
        type: json
        data: '{}'
    docs: 'Register an action (view, click, share) on a GIF using the analytics pingback URLs

      included in search responses. Endpoint is fire-and-forget; HTTP 200 indicates the

      event was accepted.

      '
- info:
    name: Upload
    type: folder
  items:
  - info:
      name: Upload GIF
      type: http
    http:
      method: POST
      url: https://api.giphy.com/v1/gifs
      params:
      - name: api_key
        value: ''
        type: query
        description: GIPHY API key (Beta or Production).
      body:
        type: multipart-form
        data:
        - name: api_key
          type: text
          value: ''
        - name: file
          type: text
          value: ''
        - name: source_image_url
          type: text
          value: ''
        - name: username
          type: text
          value: ''
        - name: tags
          type: text
          value: ''
        - name: source_post_url
          type: text
          value: ''
        - name: is_hidden
          type: text
          value: ''
    docs: 'Upload a GIF or video file to GIPHY at `upload.giphy.com/v1/gifs`. Maximum file

      size is 100 MB. This operation runs against the `upload.giphy.com` host (overrides

      the default server).

      '
bundled: true