
Research
/Security News
9 Malicious NuGet Packages Deliver Time-Delayed Destructive Payloads
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.
@giphy/js-fetch-api
Advanced tools
Javascript API to fetch gifs and stickers from the GIPHY API.
Get started with your own api key: https://developers.giphy.com/docs/
import { GiphyFetch } from '@giphy/js-fetch-api'
const gf = new GiphyFetch('your api key')
// fetch 10 gifs
const { data: gifs } = await gf.trending({ limit: 10 })
Search all Giphy GIFs for a word or phrase. Punctuation will be stripped and ignored.
search(term: string, options?: SearchOptions): Promise<GifsResult>
| option | type | description | default |
|---|---|---|---|
| lang | string | See list of supported languages here. | en |
| sort | number | Specifies the starting position of the results. | recent |
Other Options: Type Option, Rating Option, Pagination Options
const { data: gifs } = await gf.search('dogs', { sort: 'relevant', lang: 'es', limit: 10, type: 'stickers' })
Fetch GIFs currently trending online. Hand curated by the Giphy editorial team. The data returned mirrors the GIFs showcased on the Giphy homepage.
trending(options?: TrendingOptions): Promise<GifsResult>
Trending Options: Type Option, Rating Option, Pagination Options
const { data: gifs } = await gf.trending({ limit: 10, offset: 25, rating: 'g' })
Fetch a gif by id
gif(id: string): Promise<GifResult>
const { data: gif } = await gf.gif('3oEjHGr1Fhz0kyv8Ig')
// by id
gifs(ids: string[]): Promise<GifsResult>
// by category and subcategory
gifs(category: string, subcategory: string): Promise<GifsResult>
// by id
const { data: gifs } = await gf.gifs(['3oEjHGr1Fhz0kyv8Ig'])
// by category and subcategory
const { data: gifs } = await gf.gifs('tv', 'arrested-development')
Create animated text gifs dynamicaly based on the text input. This endpoint will require you to create a new SDK key
animate(text: string, options?: PaginationOptions): Promise<GifsResult>
Options: Pagination Options
const { data: gifs } = await gf.animate('some text to animate!', { limit: 5 })
Fetch related gifs based on the id of a gif
related(id: string, options?: RelatedOptions): Promise<GifsResult>
Options: Pagination Options, Type Option
const { data: gifs } = await gf.related('3oEjHGr1Fhz0kyv8Ig', { limit: 10 })
Fetch emoji. Emoji are stickers from a currated channel. There's no search or trending emoji.
emoji(options?: PaginationOptions): Promise<GifsResult>
Emoji Options: Pagination Options
const { data: gifs } = await gf.emoji()
Returns a list of all the default emoji variations.
emojiDefaultVariations(options?: PaginationOptions): Promise<GifsResult>
Options: Pagination Options
const { data: gifs } = await gf.emojiDefaultVariations()
Returns a list of gifs representing all the variations for the emoji.
emojiVariations(id: GifID): Promise<NonPaginatedGifsResult>
const { data: gifs } = await gf.emojiVariations('iigp4VDyf5dCLRlGkm')
Returns a random single GIF
random(options?: RandomOptions): Promise<GifResult>
| option | type | description | default |
|---|---|---|---|
| tag | string | The GIF tag to limit randomness by. | undefined |
Options: Type Option
const { data: gif } = await gf.random({ tag: 'beer', type: 'stickers' })
categories(options?: CategoriesOptions): Promise<CategoriesResult>
const { data: categories } = await gf.categories()
categories.forEach((category) => {
console.log(category) // ICategory
})
Options: Pagination Options
subcategories(category: string, options?: SubcategoriesOptions): Promise<CategoriesResult>
// Example:
const { data: categories } = await gf.subcategories('tv', { limit: 10, offset: 25, rating: 'g' })
categories.forEach((category) => {
console.log(category) // ICategory
})
Options: Pagination Options
| option | type | description | default |
|---|---|---|---|
| limit | number | Number of results to return, maximum 100 | 25 |
| offset | number | Specifies the starting position of the results. | 0 |
| option | type | description | default |
|---|---|---|---|
| rating | string | limit results by rating: y, g, pg, pg-13, r. | g |
| option | type | description | default |
|---|---|---|---|
| type | string | gifs / stickers / text / videos | gifs |
FAQs
Javascript API to fetch gifs and stickers from the GIPHY API.
We found that @giphy/js-fetch-api demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.