openapi: 3.1.0 info: title: GIPHY Analytics Channels API description: 'The GIPHY API provides programmatic access to the world''s largest library of GIFs, stickers, animated emoji and Clips (GIFs with sound). Search, trending, translate, random, and category endpoints all return rich media objects with multiple image renditions optimized for any surface. Authentication is via API key. New developers receive a rate-limited Beta key; a Production key is granted after application review. ' version: '1.0' contact: name: GIPHY Developers url: https://developers.giphy.com/ email: support@giphy.com termsOfService: https://developers.giphy.com/terms/ license: name: GIPHY API Terms of Service url: https://developers.giphy.com/terms/ servers: - url: https://api.giphy.com description: Production API - url: https://upload.giphy.com description: Upload API security: - ApiKeyAuth: [] tags: - name: Channels description: Channel discovery and metadata. paths: /v1/channels/search: get: tags: - Channels operationId: searchChannels summary: Search Channels description: Find GIPHY channels matching the supplied query. parameters: - $ref: '#/components/parameters/ApiKey' - name: q in: query required: true schema: type: string - $ref: '#/components/parameters/Limit' - $ref: '#/components/parameters/Offset' responses: '200': description: Paginated list of channels. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Channel' pagination: $ref: '#/components/schemas/Pagination' meta: $ref: '#/components/schemas/Meta' components: schemas: Channel: type: object description: GIPHY content channel. properties: id: type: integer slug: type: string url: type: string display_name: type: string short_display_name: type: string description: type: string type: type: string enum: - community - editorial content_type: type: string enum: - gif - sticker - mixed banner_image: type: string format: uri is_private: type: boolean user: $ref: '#/components/schemas/User' featured_gif: $ref: '#/components/schemas/Gif' ancestors: type: array items: $ref: '#/components/schemas/Channel' tags: type: array items: type: object properties: channel: type: integer rank: type: integer tag: type: string Images: type: object description: Map of rendition keys to rendition metadata. Available renditions include fixed_height, fixed_height_still, fixed_height_downsampled, fixed_height_small, fixed_height_small_still, fixed_width, fixed_width_still, fixed_width_downsampled, fixed_width_small, fixed_width_small_still, downsized, downsized_still, downsized_large, downsized_medium, downsized_small, original, original_still, looping, preview, preview_gif. additionalProperties: $ref: '#/components/schemas/Rendition' Meta: type: object properties: msg: type: string status: type: integer response_id: type: string Rendition: type: object properties: url: type: string format: uri width: type: string description: Width in pixels (string in API). height: type: string description: Height in pixels (string in API). size: type: string description: File size in bytes (string in API). mp4: type: string format: uri mp4_size: type: string webp: type: string format: uri webp_size: type: string frames: type: string hash: type: string Gif: type: object description: Standard GIPHY GIF object returned by most endpoints. properties: type: type: string enum: - gif - sticker - emoji description: Type of media object. id: type: string description: GIPHY ID for the object. slug: type: string description: URL slug used in giphy.com URLs. url: type: string format: uri description: Canonical GIPHY URL. bitly_gif_url: type: string format: uri bitly_url: type: string format: uri embed_url: type: string format: uri username: type: string source: type: string rating: type: string enum: - g - pg - pg-13 - r - y content_url: type: string user: $ref: '#/components/schemas/User' source_tld: type: string source_post_url: type: string format: uri update_datetime: type: string format: date-time create_datetime: type: string format: date-time import_datetime: type: string format: date-time trending_datetime: type: string format: date-time images: $ref: '#/components/schemas/Images' title: type: string alt_text: type: string is_low_contrast: type: boolean analytics_response_payload: type: string analytics: $ref: '#/components/schemas/Analytics' Pagination: type: object properties: offset: type: integer total_count: type: integer count: type: integer User: type: object description: GIPHY user / channel associated with content. properties: avatar_url: type: string format: uri banner_image: type: string format: uri banner_url: type: string format: uri profile_url: type: string format: uri username: type: string display_name: type: string description: type: string instagram_url: type: string format: uri website_url: type: string format: uri is_verified: type: boolean Analytics: type: object description: Pingback URLs returned alongside each GIF for measuring user engagement. properties: onload: type: object properties: url: type: string format: uri onclick: type: object properties: url: type: string format: uri onsent: type: object properties: url: type: string format: uri parameters: ApiKey: name: api_key in: query required: true description: GIPHY API key (Beta or Production). schema: type: string Limit: name: limit in: query required: false description: Maximum number of items to return per page. schema: type: integer default: 25 maximum: 50 Offset: name: offset in: query required: false description: Position in the result set for pagination. schema: type: integer default: 0 securitySchemes: ApiKeyAuth: type: apiKey in: query name: api_key description: API key issued via the GIPHY developer dashboard.