GiphyClient 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (157) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/Gemfile.lock +69 -0
  4. data/GiphyClient.gemspec +44 -0
  5. data/README.md +152 -0
  6. data/Rakefile +7 -0
  7. data/config.json +18 -0
  8. data/docs/BaseChannelModel.md +36 -0
  9. data/docs/BaseChannelModelGifs.md +9 -0
  10. data/docs/Breadcrumb.md +10 -0
  11. data/docs/Category.md +11 -0
  12. data/docs/ChannelWithChildrenModel.md +37 -0
  13. data/docs/ChannelWithChildrenModelChildren.md +9 -0
  14. data/docs/DefaultApi.md +731 -0
  15. data/docs/Gif.md +36 -0
  16. data/docs/GifImages.md +27 -0
  17. data/docs/GifImagesDownsized.md +11 -0
  18. data/docs/GifImagesDownsizedLarge.md +11 -0
  19. data/docs/GifImagesDownsizedMedium.md +11 -0
  20. data/docs/GifImagesDownsizedSmall.md +11 -0
  21. data/docs/GifImagesDownsizedStill.md +10 -0
  22. data/docs/GifImagesFixedHeight.md +15 -0
  23. data/docs/GifImagesFixedHeightDownsampled.md +13 -0
  24. data/docs/GifImagesFixedHeightSmall.md +15 -0
  25. data/docs/GifImagesFixedHeightSmallStill.md +10 -0
  26. data/docs/GifImagesFixedHeightStill.md +10 -0
  27. data/docs/GifImagesFixedWidth.md +15 -0
  28. data/docs/GifImagesFixedWidthDownsampled.md +13 -0
  29. data/docs/GifImagesFixedWidthSmall.md +15 -0
  30. data/docs/GifImagesFixedWidthSmallStill.md +10 -0
  31. data/docs/GifImagesFixedWidthStill.md +10 -0
  32. data/docs/GifImagesLooping.md +8 -0
  33. data/docs/GifImagesOriginal.md +16 -0
  34. data/docs/GifImagesOriginalStill.md +10 -0
  35. data/docs/GifImagesPreview.md +11 -0
  36. data/docs/GifImagesPreviewGif.md +11 -0
  37. data/docs/InlineResponse200.md +10 -0
  38. data/docs/InlineResponse2001.md +9 -0
  39. data/docs/InlineResponse2002.md +9 -0
  40. data/docs/InlineResponse2003.md +10 -0
  41. data/docs/InlineResponse2004.md +10 -0
  42. data/docs/InlineResponse2005.md +10 -0
  43. data/docs/InlineResponse400.md +8 -0
  44. data/docs/LastChildModel.md +37 -0
  45. data/docs/LastChildModelChildren.md +9 -0
  46. data/docs/MetaContent.md +10 -0
  47. data/docs/MetaObject.md +8 -0
  48. data/docs/Pagination.md +10 -0
  49. data/docs/RandomGif.md +30 -0
  50. data/docs/ShallowTag.md +9 -0
  51. data/docs/Tag.md +9 -0
  52. data/docs/TrendingTag.md +10 -0
  53. data/docs/User.md +13 -0
  54. data/generate.sh +12 -0
  55. data/git_push.sh +55 -0
  56. data/lib/GiphyClient.rb +84 -0
  57. data/lib/GiphyClient/api/default_api.rb +952 -0
  58. data/lib/GiphyClient/api_client.rb +375 -0
  59. data/lib/GiphyClient/api_error.rb +37 -0
  60. data/lib/GiphyClient/configuration.rb +195 -0
  61. data/lib/GiphyClient/models/base_channel_model.rb +464 -0
  62. data/lib/GiphyClient/models/base_channel_model_gifs.rb +198 -0
  63. data/lib/GiphyClient/models/breadcrumb.rb +205 -0
  64. data/lib/GiphyClient/models/category.rb +220 -0
  65. data/lib/GiphyClient/models/channel_with_children_model.rb +473 -0
  66. data/lib/GiphyClient/models/channel_with_children_model_children.rb +198 -0
  67. data/lib/GiphyClient/models/gif.rb +473 -0
  68. data/lib/GiphyClient/models/gif_images.rb +358 -0
  69. data/lib/GiphyClient/models/gif_images_downsized.rb +218 -0
  70. data/lib/GiphyClient/models/gif_images_downsized_large.rb +218 -0
  71. data/lib/GiphyClient/models/gif_images_downsized_medium.rb +218 -0
  72. data/lib/GiphyClient/models/gif_images_downsized_small.rb +218 -0
  73. data/lib/GiphyClient/models/gif_images_downsized_still.rb +208 -0
  74. data/lib/GiphyClient/models/gif_images_fixed_height.rb +258 -0
  75. data/lib/GiphyClient/models/gif_images_fixed_height_downsampled.rb +238 -0
  76. data/lib/GiphyClient/models/gif_images_fixed_height_small.rb +258 -0
  77. data/lib/GiphyClient/models/gif_images_fixed_height_small_still.rb +208 -0
  78. data/lib/GiphyClient/models/gif_images_fixed_height_still.rb +208 -0
  79. data/lib/GiphyClient/models/gif_images_fixed_width.rb +258 -0
  80. data/lib/GiphyClient/models/gif_images_fixed_width_downsampled.rb +238 -0
  81. data/lib/GiphyClient/models/gif_images_fixed_width_small.rb +258 -0
  82. data/lib/GiphyClient/models/gif_images_fixed_width_small_still.rb +208 -0
  83. data/lib/GiphyClient/models/gif_images_fixed_width_still.rb +208 -0
  84. data/lib/GiphyClient/models/gif_images_looping.rb +188 -0
  85. data/lib/GiphyClient/models/gif_images_original.rb +268 -0
  86. data/lib/GiphyClient/models/gif_images_original_still.rb +208 -0
  87. data/lib/GiphyClient/models/gif_images_preview.rb +218 -0
  88. data/lib/GiphyClient/models/gif_images_preview_gif.rb +218 -0
  89. data/lib/GiphyClient/models/inline_response_200.rb +209 -0
  90. data/lib/GiphyClient/models/inline_response_200_1.rb +197 -0
  91. data/lib/GiphyClient/models/inline_response_200_2.rb +197 -0
  92. data/lib/GiphyClient/models/inline_response_200_3.rb +207 -0
  93. data/lib/GiphyClient/models/inline_response_200_4.rb +207 -0
  94. data/lib/GiphyClient/models/inline_response_200_5.rb +207 -0
  95. data/lib/GiphyClient/models/inline_response_400.rb +187 -0
  96. data/lib/GiphyClient/models/last_child_model.rb +473 -0
  97. data/lib/GiphyClient/models/last_child_model_children.rb +198 -0
  98. data/lib/GiphyClient/models/meta_content.rb +218 -0
  99. data/lib/GiphyClient/models/meta_object.rb +187 -0
  100. data/lib/GiphyClient/models/pagination.rb +208 -0
  101. data/lib/GiphyClient/models/random_gif.rb +401 -0
  102. data/lib/GiphyClient/models/shallow_tag.rb +198 -0
  103. data/lib/GiphyClient/models/tag.rb +198 -0
  104. data/lib/GiphyClient/models/trending_tag.rb +205 -0
  105. data/lib/GiphyClient/models/user.rb +238 -0
  106. data/lib/GiphyClient/version.rb +14 -0
  107. data/public.yaml +1638 -0
  108. data/spec/api/default_api_spec.rb +260 -0
  109. data/spec/api_client_spec.rb +225 -0
  110. data/spec/configuration_spec.rb +41 -0
  111. data/spec/models/base_channel_model_gifs_spec.rb +47 -0
  112. data/spec/models/base_channel_model_spec.rb +209 -0
  113. data/spec/models/breadcrumb_spec.rb +53 -0
  114. data/spec/models/category_spec.rb +59 -0
  115. data/spec/models/channel_with_children_model_children_spec.rb +47 -0
  116. data/spec/models/channel_with_children_model_spec.rb +215 -0
  117. data/spec/models/gif_images_downsized_large_spec.rb +59 -0
  118. data/spec/models/gif_images_downsized_medium_spec.rb +59 -0
  119. data/spec/models/gif_images_downsized_small_spec.rb +59 -0
  120. data/spec/models/gif_images_downsized_spec.rb +59 -0
  121. data/spec/models/gif_images_downsized_still_spec.rb +53 -0
  122. data/spec/models/gif_images_fixed_height_downsampled_spec.rb +71 -0
  123. data/spec/models/gif_images_fixed_height_small_spec.rb +83 -0
  124. data/spec/models/gif_images_fixed_height_small_still_spec.rb +53 -0
  125. data/spec/models/gif_images_fixed_height_spec.rb +83 -0
  126. data/spec/models/gif_images_fixed_height_still_spec.rb +53 -0
  127. data/spec/models/gif_images_fixed_width_downsampled_spec.rb +71 -0
  128. data/spec/models/gif_images_fixed_width_small_spec.rb +83 -0
  129. data/spec/models/gif_images_fixed_width_small_still_spec.rb +53 -0
  130. data/spec/models/gif_images_fixed_width_spec.rb +83 -0
  131. data/spec/models/gif_images_fixed_width_still_spec.rb +53 -0
  132. data/spec/models/gif_images_looping_spec.rb +41 -0
  133. data/spec/models/gif_images_original_spec.rb +89 -0
  134. data/spec/models/gif_images_original_still_spec.rb +53 -0
  135. data/spec/models/gif_images_preview_gif_spec.rb +59 -0
  136. data/spec/models/gif_images_preview_spec.rb +59 -0
  137. data/spec/models/gif_images_spec.rb +155 -0
  138. data/spec/models/gif_spec.rb +209 -0
  139. data/spec/models/inline_response_200_1_spec.rb +47 -0
  140. data/spec/models/inline_response_200_2_spec.rb +47 -0
  141. data/spec/models/inline_response_200_3_spec.rb +53 -0
  142. data/spec/models/inline_response_200_4_spec.rb +53 -0
  143. data/spec/models/inline_response_200_5_spec.rb +53 -0
  144. data/spec/models/inline_response_200_spec.rb +53 -0
  145. data/spec/models/inline_response_400_spec.rb +41 -0
  146. data/spec/models/last_child_model_children_spec.rb +47 -0
  147. data/spec/models/last_child_model_spec.rb +215 -0
  148. data/spec/models/meta_content_spec.rb +53 -0
  149. data/spec/models/meta_object_spec.rb +41 -0
  150. data/spec/models/pagination_spec.rb +53 -0
  151. data/spec/models/random_gif_spec.rb +173 -0
  152. data/spec/models/shallow_tag_spec.rb +47 -0
  153. data/spec/models/tag_spec.rb +47 -0
  154. data/spec/models/trending_tag_spec.rb +53 -0
  155. data/spec/models/user_spec.rb +71 -0
  156. data/spec/spec_helper.rb +110 -0
  157. metadata +428 -0
@@ -0,0 +1,238 @@
1
+ =begin
2
+ #giphy-api
3
+
4
+ #Giphy's public api.
5
+
6
+ OpenAPI spec version: 0.9.3
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module GiphyClient
15
+ # An object containing data about the user associated with this GIF, if applicable.
16
+ class User
17
+ # The URL for this user's avatar image.
18
+ attr_accessor :avatar_url
19
+
20
+ # The URL for the banner image that appears atop this user's profile page.
21
+ attr_accessor :banner_url
22
+
23
+ # The URL for this user's profile.
24
+ attr_accessor :profile_url
25
+
26
+ # The username associated with this user.
27
+ attr_accessor :username
28
+
29
+ # The display name associated with this user (contains formatting the base username might not).
30
+ attr_accessor :display_name
31
+
32
+ # The Twitter username associated with this user, if applicable.
33
+ attr_accessor :twitter
34
+
35
+
36
+ # Attribute mapping from ruby-style variable name to JSON key.
37
+ def self.attribute_map
38
+ {
39
+ :'avatar_url' => :'avatar_url',
40
+ :'banner_url' => :'banner_url',
41
+ :'profile_url' => :'profile_url',
42
+ :'username' => :'username',
43
+ :'display_name' => :'display_name',
44
+ :'twitter' => :'twitter'
45
+ }
46
+ end
47
+
48
+ # Attribute type mapping.
49
+ def self.swagger_types
50
+ {
51
+ :'avatar_url' => :'String',
52
+ :'banner_url' => :'String',
53
+ :'profile_url' => :'String',
54
+ :'username' => :'String',
55
+ :'display_name' => :'String',
56
+ :'twitter' => :'String'
57
+ }
58
+ end
59
+
60
+ # Initializes the object
61
+ # @param [Hash] attributes Model attributes in the form of hash
62
+ def initialize(attributes = {})
63
+ return unless attributes.is_a?(Hash)
64
+
65
+ # convert string to symbol for hash key
66
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
67
+
68
+ if attributes.has_key?(:'avatar_url')
69
+ self.avatar_url = attributes[:'avatar_url']
70
+ end
71
+
72
+ if attributes.has_key?(:'banner_url')
73
+ self.banner_url = attributes[:'banner_url']
74
+ end
75
+
76
+ if attributes.has_key?(:'profile_url')
77
+ self.profile_url = attributes[:'profile_url']
78
+ end
79
+
80
+ if attributes.has_key?(:'username')
81
+ self.username = attributes[:'username']
82
+ end
83
+
84
+ if attributes.has_key?(:'display_name')
85
+ self.display_name = attributes[:'display_name']
86
+ end
87
+
88
+ if attributes.has_key?(:'twitter')
89
+ self.twitter = attributes[:'twitter']
90
+ end
91
+
92
+ end
93
+
94
+ # Show invalid properties with the reasons. Usually used together with valid?
95
+ # @return Array for valid properies with the reasons
96
+ def list_invalid_properties
97
+ invalid_properties = Array.new
98
+ return invalid_properties
99
+ end
100
+
101
+ # Check to see if the all the properties in the model are valid
102
+ # @return true if the model is valid
103
+ def valid?
104
+ return true
105
+ end
106
+
107
+ # Checks equality by comparing each attribute.
108
+ # @param [Object] Object to be compared
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ avatar_url == o.avatar_url &&
113
+ banner_url == o.banner_url &&
114
+ profile_url == o.profile_url &&
115
+ username == o.username &&
116
+ display_name == o.display_name &&
117
+ twitter == o.twitter
118
+ end
119
+
120
+ # @see the `==` method
121
+ # @param [Object] Object to be compared
122
+ def eql?(o)
123
+ self == o
124
+ end
125
+
126
+ # Calculates hash code according to all attributes.
127
+ # @return [Fixnum] Hash code
128
+ def hash
129
+ [avatar_url, banner_url, profile_url, username, display_name, twitter].hash
130
+ end
131
+
132
+ # Builds the object from hash
133
+ # @param [Hash] attributes Model attributes in the form of hash
134
+ # @return [Object] Returns the model itself
135
+ def build_from_hash(attributes)
136
+ return nil unless attributes.is_a?(Hash)
137
+ self.class.swagger_types.each_pair do |key, type|
138
+ if type =~ /\AArray<(.*)>/i
139
+ # check to ensure the input is an array given that the the attribute
140
+ # is documented as an array but the input is not
141
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
142
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
143
+ end
144
+ elsif !attributes[self.class.attribute_map[key]].nil?
145
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
146
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
147
+ end
148
+
149
+ self
150
+ end
151
+
152
+ # Deserializes the data based on type
153
+ # @param string type Data type
154
+ # @param string value Value to be deserialized
155
+ # @return [Object] Deserialized data
156
+ def _deserialize(type, value)
157
+ case type.to_sym
158
+ when :DateTime
159
+ DateTime.parse(value)
160
+ when :Date
161
+ Date.parse(value)
162
+ when :String
163
+ value.to_s
164
+ when :Integer
165
+ value.to_i
166
+ when :Float
167
+ value.to_f
168
+ when :BOOLEAN
169
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
170
+ true
171
+ else
172
+ false
173
+ end
174
+ when :Object
175
+ # generic object (usually a Hash), return directly
176
+ value
177
+ when /\AArray<(?<inner_type>.+)>\z/
178
+ inner_type = Regexp.last_match[:inner_type]
179
+ value.map { |v| _deserialize(inner_type, v) }
180
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
181
+ k_type = Regexp.last_match[:k_type]
182
+ v_type = Regexp.last_match[:v_type]
183
+ {}.tap do |hash|
184
+ value.each do |k, v|
185
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
186
+ end
187
+ end
188
+ else # model
189
+ temp_model = GiphyClient.const_get(type).new
190
+ temp_model.build_from_hash(value)
191
+ end
192
+ end
193
+
194
+ # Returns the string representation of the object
195
+ # @return [String] String presentation of the object
196
+ def to_s
197
+ to_hash.to_s
198
+ end
199
+
200
+ # to_body is an alias to to_hash (backward compatibility)
201
+ # @return [Hash] Returns the object in the form of hash
202
+ def to_body
203
+ to_hash
204
+ end
205
+
206
+ # Returns the object in the form of hash
207
+ # @return [Hash] Returns the object in the form of hash
208
+ def to_hash
209
+ hash = {}
210
+ self.class.attribute_map.each_pair do |attr, param|
211
+ value = self.send(attr)
212
+ next if value.nil?
213
+ hash[param] = _to_hash(value)
214
+ end
215
+ hash
216
+ end
217
+
218
+ # Outputs non-array value in the form of hash
219
+ # For object, use to_hash. Otherwise, just return the value
220
+ # @param [Object] value Any valid value
221
+ # @return [Hash] Returns the value in the form of hash
222
+ def _to_hash(value)
223
+ if value.is_a?(Array)
224
+ value.compact.map{ |v| _to_hash(v) }
225
+ elsif value.is_a?(Hash)
226
+ {}.tap do |hash|
227
+ value.each { |k, v| hash[k] = _to_hash(v) }
228
+ end
229
+ elsif value.respond_to? :to_hash
230
+ value.to_hash
231
+ else
232
+ value
233
+ end
234
+ end
235
+
236
+ end
237
+
238
+ end
@@ -0,0 +1,14 @@
1
+ =begin
2
+ #giphy-api
3
+
4
+ #Giphy's public api.
5
+
6
+ OpenAPI spec version: 0.9.3
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ =end
11
+
12
+ module GiphyClient
13
+ VERSION = "1.0.0"
14
+ end
data/public.yaml ADDED
@@ -0,0 +1,1638 @@
1
+ # public.yaml -- describes endpoints associated with the public GIPHY API.
2
+
3
+ ---
4
+ swagger: '2.0'
5
+ info:
6
+ version: '0.9.3'
7
+ title: giphy-api
8
+ description: Giphy's public api.
9
+ host: api.giphy.com
10
+ basePath: /v1
11
+ schemes:
12
+ - http
13
+ - https
14
+ consumes:
15
+ - application/json
16
+ produces:
17
+ - application/json
18
+ paths:
19
+ /gifs/search:
20
+ x-gelato-group: '/gifs'
21
+ get:
22
+ summary: Search Endpoint
23
+ description: Search all Giphy GIFs for a word or phrase. Punctuation will be stripped and ignored. Use a plus or url encode for phrases. Example paul+rudd, ryan+gosling or american+psycho.
24
+ parameters:
25
+ - $ref: '#/parameters/ApiKeyParam'
26
+ - $ref: '#/parameters/QueryParam'
27
+ - $ref: '#/parameters/LimitParam'
28
+ - $ref: '#/parameters/OffsetParam'
29
+ - $ref: '#/parameters/RatingParam'
30
+ - $ref: '#/parameters/LangParam'
31
+ - $ref: '#/parameters/FormatParam'
32
+ responses:
33
+ 200:
34
+ description: GIF Search Results
35
+ schema:
36
+ type: object
37
+ properties:
38
+ data:
39
+ type: array
40
+ description: ''
41
+ minItems: 0
42
+ maxItems: 100
43
+ uniqueItems: true
44
+ items:
45
+ $ref: '#/definitions/Gif'
46
+ pagination:
47
+ $ref: '#/definitions/Pagination'
48
+ meta:
49
+ description: ''
50
+ $ref: '#/definitions/MetaContent'
51
+ 400:
52
+ $ref: '#/responses/BadRequestResponse'
53
+
54
+ 403:
55
+ $ref: '#/responses/ForbiddenResponse'
56
+
57
+ 404:
58
+ $ref: '#/responses/NotFoundResponse'
59
+
60
+ 429:
61
+ $ref: '#/responses/TooManyRequestResponse'
62
+
63
+ default:
64
+ $ref: '#/responses/DefaultResponse'
65
+ /gifs/translate:
66
+ x-gelato-group: '/gifs'
67
+ get:
68
+ summary: Translate Endpoint
69
+ description: The translate API draws on search, but uses the Giphy `special sauce` to handle translating from one vocabulary to another. In this case, words and phrases to GIFs.
70
+ parameters:
71
+ - $ref: '#/parameters/ApiKeyParam'
72
+ - $ref: '#/parameters/SearchParam'
73
+ responses:
74
+ 200:
75
+ description: GIF Search Results
76
+ schema:
77
+ type: object
78
+ properties:
79
+ data:
80
+ $ref: '#/definitions/Gif'
81
+ meta:
82
+ description: ''
83
+ $ref: '#/definitions/MetaContent'
84
+ 400:
85
+ $ref: '#/responses/BadRequestResponse'
86
+
87
+ 403:
88
+ $ref: '#/responses/ForbiddenResponse'
89
+
90
+ 404:
91
+ $ref: '#/responses/NotFoundResponse'
92
+
93
+ 429:
94
+ $ref: '#/responses/TooManyRequestResponse'
95
+
96
+ default:
97
+ $ref: '#/responses/DefaultResponse'
98
+ /gifs/trending:
99
+ x-gelato-group: '/gifs'
100
+ get:
101
+ summary: Trending GIFs Endpoint
102
+ description: 'Fetch GIFs currently trending online. Hand curated by the GIPHY editorial team. The data returned mirrors the GIFs showcased on the <a href = "http://www.giphy.com">GIPHY homepage</a>. Returns 25 results by default.'
103
+ parameters:
104
+ - $ref: '#/parameters/ApiKeyParam'
105
+ - $ref: '#/parameters/LimitParam'
106
+ - $ref: '#/parameters/RatingParam'
107
+ - $ref: '#/parameters/FormatParam'
108
+ responses:
109
+ 200:
110
+ description: GIF Search Results
111
+ schema:
112
+ type: object
113
+ properties:
114
+ data:
115
+ type: array
116
+ description: ''
117
+ minItems: 0
118
+ maxItems: 100
119
+ uniqueItems: true
120
+ items:
121
+ $ref: '#/definitions/Gif'
122
+ pagination:
123
+ $ref: '#/definitions/Pagination'
124
+ meta:
125
+ description: ''
126
+ $ref: '#/definitions/MetaContent'
127
+ 400:
128
+ $ref: '#/responses/BadRequestResponse'
129
+
130
+ 403:
131
+ $ref: '#/responses/ForbiddenResponse'
132
+
133
+ 404:
134
+ $ref: '#/responses/NotFoundResponse'
135
+
136
+ 429:
137
+ $ref: '#/responses/TooManyRequestResponse'
138
+
139
+ default:
140
+ $ref: '#/responses/DefaultResponse'
141
+ /gifs/random:
142
+ x-gelato-group: '/gifs'
143
+ get:
144
+ summary: Random Endpoint
145
+ description: 'Returns a random GIF, limited by tag. Excluding the tag parameter will return a random GIF from the GIPHY catalog.'
146
+ parameters:
147
+ - $ref: '#/parameters/ApiKeyParam'
148
+ - $ref: '#/parameters/TagParam'
149
+ - $ref: '#/parameters/RatingParam'
150
+ - $ref: '#/parameters/FormatParam'
151
+ responses:
152
+ 200:
153
+ description: GIF Search Results
154
+ schema:
155
+ type: object
156
+ properties:
157
+ data:
158
+ $ref: '#/definitions/RandomGif'
159
+ meta:
160
+ description: ''
161
+ $ref: '#/definitions/MetaContent'
162
+ 400:
163
+ $ref: '#/responses/BadRequestResponse'
164
+
165
+ 403:
166
+ $ref: '#/responses/ForbiddenResponse'
167
+
168
+ 404:
169
+ $ref: '#/responses/NotFoundResponse'
170
+
171
+ 429:
172
+ $ref: '#/responses/TooManyRequestResponse'
173
+
174
+ default:
175
+ $ref: '#/responses/DefaultResponse'
176
+ '/gifs/{gif_id}':
177
+ x-gelato-group: '/gifs'
178
+ get:
179
+ summary: Get GIF by ID Endpoint
180
+ description: "Returns a GIF given that GIF's unique ID"
181
+ parameters:
182
+ - $ref: '#/parameters/ApiKeyParam'
183
+ - $ref: '#/parameters/GifIDParam'
184
+ responses:
185
+ 200:
186
+ description: GIF Search Results
187
+ schema:
188
+ type: object
189
+ properties:
190
+ data:
191
+ $ref: '#/definitions/Gif'
192
+ meta:
193
+ description: ''
194
+ $ref: '#/definitions/MetaContent'
195
+ 400:
196
+ $ref: '#/responses/BadRequestResponse'
197
+
198
+ 403:
199
+ $ref: '#/responses/ForbiddenResponse'
200
+
201
+ 404:
202
+ $ref: '#/responses/NotFoundResponse'
203
+
204
+ 429:
205
+ $ref: '#/responses/TooManyRequestResponse'
206
+
207
+ default:
208
+ $ref: '#/responses/DefaultResponse'
209
+ '/gifs':
210
+ x-gelato-group: '/gifs'
211
+ get:
212
+ summary: Get GIFs by ID Endpoint
213
+ description: "A multiget version of the get GIF by ID endpoint."
214
+ parameters:
215
+ - $ref: '#/parameters/ApiKeyParam'
216
+ - name: ids
217
+ in: query
218
+ description: Filters results by specified GIF IDs, separated by commas.
219
+ x-example: 'feqkVgjJpYtjy,7rzbxdu0ZEXLy'
220
+ required: true
221
+ type: string
222
+ responses:
223
+ 200:
224
+ description: GIF Search Results
225
+ schema:
226
+ type: object
227
+ properties:
228
+ data:
229
+ type: array
230
+ description: ''
231
+ minItems: 0
232
+ maxItems: 100
233
+ uniqueItems: true
234
+ items:
235
+ $ref: '#/definitions/Gif'
236
+ pagination:
237
+ $ref: '#/definitions/Pagination'
238
+ meta:
239
+ description: ''
240
+ $ref: '#/definitions/MetaContent'
241
+ 400:
242
+ $ref: '#/responses/BadRequestResponse'
243
+
244
+ 403:
245
+ $ref: '#/responses/ForbiddenResponse'
246
+
247
+ 404:
248
+ $ref: '#/responses/NotFoundResponse'
249
+
250
+ 429:
251
+ $ref: '#/responses/TooManyRequestResponse'
252
+
253
+ default:
254
+ $ref: '#/responses/DefaultResponse'
255
+ /gifs/categories:
256
+ x-gelato-group: '/gifs'
257
+ get:
258
+ summary: Categories Endpoint.
259
+ description: Returns a list of categories.
260
+ parameters:
261
+ - $ref: '#/parameters/ApiKeyParam'
262
+ - $ref: '#/parameters/LimitParam'
263
+ responses:
264
+ 200:
265
+ description: Categories Results
266
+ schema:
267
+ type: object
268
+ properties:
269
+ data:
270
+ type: array
271
+ items:
272
+ $ref: '#/definitions/Category'
273
+ pagination:
274
+ $ref: '#/definitions/Pagination'
275
+ meta:
276
+ $ref: '#/definitions/MetaContent'
277
+ '/gifs/categories/{category}':
278
+ x-gelato-group: '/gifs'
279
+ get:
280
+ summary: Category Tags Endpoint.
281
+ description: Returns a list of tags for a given category. NOTE `limit` and `offset` must both be set; otherwise they're ignored.
282
+ parameters:
283
+ - $ref: '#/parameters/ApiKeyParam'
284
+ - $ref: '#/parameters/CategoryPathParam'
285
+ - $ref: '#/parameters/LimitParam'
286
+ - $ref: '#/parameters/OffsetParam'
287
+ responses:
288
+ 200:
289
+ description: ''
290
+ schema:
291
+ type: object
292
+ properties:
293
+ data:
294
+ type: array
295
+ items:
296
+ $ref: '#/definitions/Tag'
297
+ pagination:
298
+ $ref: '#/definitions/Pagination'
299
+ meta:
300
+ $ref: '#/definitions/MetaContent'
301
+ '/gifs/categories/{category}/{tag}':
302
+ x-gelato-group: '/gifs'
303
+ get:
304
+ summary: Tagged Gifs Endpoint.
305
+ description: Returns a list of gifs for a given tag (alias to `/gif/search`).
306
+ parameters:
307
+ - $ref: '#/parameters/ApiKeyParam'
308
+ - $ref: '#/parameters/CategoryPathParam'
309
+ - $ref: '#/parameters/TagPathParam'
310
+ - $ref: '#/parameters/LimitParam'
311
+ - $ref: '#/parameters/OffsetParam'
312
+ responses:
313
+ 200:
314
+ description: ''
315
+ schema:
316
+ type: object
317
+ properties:
318
+ data:
319
+ type: array
320
+ items:
321
+ $ref: '#/definitions/Gif'
322
+ pagination:
323
+ $ref: '#/definitions/Pagination'
324
+ meta:
325
+ $ref: '#/definitions/MetaContent'
326
+ /stickers/search:
327
+ x-gelato-group: '/stickers'
328
+ get:
329
+ summary: Sticker Search Endpoint
330
+ description: Replicates the functionality and requirements of the classic GIPHY search, but returns animated stickers rather than GIFs.
331
+ parameters:
332
+ - $ref: '#/parameters/ApiKeyParam'
333
+ - $ref: '#/parameters/QueryParam'
334
+ - $ref: '#/parameters/LimitParam'
335
+ - $ref: '#/parameters/OffsetParam'
336
+ - $ref: '#/parameters/RatingParam'
337
+ - $ref: '#/parameters/LangParam'
338
+ - $ref: '#/parameters/FormatParam'
339
+ responses:
340
+ 200:
341
+ description: GIF Search Results
342
+ schema:
343
+ type: object
344
+ properties:
345
+ data:
346
+ type: array
347
+ description: ''
348
+ minItems: 0
349
+ maxItems: 100
350
+ uniqueItems: true
351
+ items:
352
+ $ref: '#/definitions/Gif'
353
+ pagination:
354
+ $ref: '#/definitions/Pagination'
355
+ meta:
356
+ description: ''
357
+ $ref: '#/definitions/MetaContent'
358
+ 400:
359
+ $ref: '#/responses/BadRequestResponse'
360
+
361
+ 403:
362
+ $ref: '#/responses/ForbiddenResponse'
363
+
364
+ 404:
365
+ $ref: '#/responses/NotFoundResponse'
366
+
367
+ 429:
368
+ $ref: '#/responses/TooManyRequestResponse'
369
+
370
+ default:
371
+ $ref: '#/responses/DefaultResponse'
372
+ /stickers/translate:
373
+ x-gelato-group: '/stickers'
374
+ get:
375
+ summary: Sticker Translate Endpoint
376
+ description: The translate API draws on search, but uses the Giphy `special sauce` to handle translating from one vocabulary to another. In this case, words and phrases to GIFs.
377
+ parameters:
378
+ - $ref: '#/parameters/ApiKeyParam'
379
+ - $ref: '#/parameters/SearchParam'
380
+ responses:
381
+ 200:
382
+ description: GIF Search Results
383
+ schema:
384
+ type: object
385
+ properties:
386
+ data:
387
+ $ref: '#/definitions/Gif'
388
+ meta:
389
+ description: ''
390
+ $ref: '#/definitions/MetaContent'
391
+ 400:
392
+ $ref: '#/responses/BadRequestResponse'
393
+
394
+ 403:
395
+ $ref: '#/responses/ForbiddenResponse'
396
+
397
+ 404:
398
+ $ref: '#/responses/NotFoundResponse'
399
+
400
+ 429:
401
+ $ref: '#/responses/TooManyRequestResponse'
402
+
403
+ default:
404
+ $ref: '#/responses/DefaultResponse'
405
+ /stickers/trending:
406
+ x-gelato-group: '/stickers'
407
+ get:
408
+ summary: Trending Stickers Endpoint
409
+ description: 'Fetch GIFs currently trending online. Hand curated by the GIPHY editorial team. The data returned mirrors the GIFs showcased on the <a href = "http://www.giphy.com">GIPHY homepage</a>. Returns 25 results by default.'
410
+ parameters:
411
+ - $ref: '#/parameters/ApiKeyParam'
412
+ - $ref: '#/parameters/LimitParam'
413
+ - $ref: '#/parameters/RatingParam'
414
+ - $ref: '#/parameters/FormatParam'
415
+ responses:
416
+ 200:
417
+ description: GIF Search Results
418
+ schema:
419
+ type: object
420
+ properties:
421
+ data:
422
+ type: array
423
+ description: ''
424
+ minItems: 0
425
+ maxItems: 100
426
+ uniqueItems: true
427
+ items:
428
+ $ref: '#/definitions/Gif'
429
+ pagination:
430
+ $ref: '#/definitions/Pagination'
431
+ meta:
432
+ description: ''
433
+ $ref: '#/definitions/MetaContent'
434
+ 400:
435
+ $ref: '#/responses/BadRequestResponse'
436
+
437
+ 403:
438
+ $ref: '#/responses/ForbiddenResponse'
439
+
440
+ 404:
441
+ $ref: '#/responses/NotFoundResponse'
442
+
443
+ 429:
444
+ $ref: '#/responses/TooManyRequestResponse'
445
+
446
+ default:
447
+ $ref: '#/responses/DefaultResponse'
448
+ /stickers/random:
449
+ x-gelato-group: '/stickers'
450
+ get:
451
+ summary: Random Sticker Endpoint
452
+ description: 'Returns a random GIF, limited by tag. Excluding the tag parameter will return a random GIF from the GIPHY catalog.'
453
+ parameters:
454
+ - $ref: '#/parameters/ApiKeyParam'
455
+ - $ref: '#/parameters/TagParam'
456
+ - $ref: '#/parameters/RatingParam'
457
+ - $ref: '#/parameters/FormatParam'
458
+ responses:
459
+ 200:
460
+ description: GIF Search Results
461
+ schema:
462
+ type: object
463
+ properties:
464
+ data:
465
+ $ref: '#/definitions/RandomGif'
466
+ meta:
467
+ description: ''
468
+ $ref: '#/definitions/MetaContent'
469
+ 400:
470
+ $ref: '#/responses/BadRequestResponse'
471
+
472
+ 403:
473
+ $ref: '#/responses/ForbiddenResponse'
474
+
475
+ 404:
476
+ $ref: '#/responses/NotFoundResponse'
477
+
478
+ 429:
479
+ $ref: '#/responses/TooManyRequestResponse'
480
+
481
+ default:
482
+ $ref: '#/responses/DefaultResponse'
483
+
484
+ #################################
485
+ # PARAMETERS OBJECTS
486
+ #################################
487
+ parameters:
488
+ ApiKeyParam:
489
+ name: api_key
490
+ in: query
491
+ description: Giphy API Key.
492
+ x-example: dc6zaTOxFJmzC
493
+ type: string
494
+ required: true
495
+
496
+ SlugParam:
497
+ name: slug
498
+ in: path
499
+ description: Filters results by specified channel identifier.
500
+ required: true
501
+ type: string
502
+
503
+ GifIDParam:
504
+ name: gif_id
505
+ in: path
506
+ description: Filters results by specified GIF ID.
507
+ required: true
508
+ type: string
509
+
510
+ CategoryPathParam:
511
+ name: category
512
+ in: path
513
+ description: Filters results by category.
514
+ required: true
515
+ type: string
516
+
517
+ TagPathParam:
518
+ name: tag
519
+ in: path
520
+ description: Filters results by tag.
521
+ required: true
522
+ type: string
523
+
524
+ LimitParam:
525
+ name: limit
526
+ in: query
527
+ description: The maximum number of records to return.
528
+ x-example: 20
529
+ required: false
530
+ type: integer
531
+ format: int32
532
+ default: 25
533
+ minimum: 1
534
+ maximum: 100
535
+
536
+ LangParam:
537
+ name: lang
538
+ in: query
539
+ description: 'Specify default country for regional content; use a 2-letter ISO 639-1 country code. See list of supported languages <a href = "../language-support">here</a>.'
540
+ x-example: en
541
+ required: false
542
+ type: string
543
+
544
+ OffsetParam:
545
+ name: offset
546
+ in: query
547
+ description: An optional results offset. Defaults to 0.
548
+ x-example: 5
549
+ required: false
550
+ type: integer
551
+ format: int32
552
+ default: 0
553
+ minimum: 0
554
+ maximum: 100
555
+
556
+ SortParam:
557
+ name: sort
558
+ in: query
559
+ description: Used for sorting channel, default is descending timestamp.
560
+ required: false
561
+ type: string
562
+ enum:
563
+ - asc
564
+ - desc
565
+ default: desc
566
+
567
+ FormatParam:
568
+ name: fmt
569
+ in: query
570
+ description: Used to indicate the expected response format. Default is Json.
571
+ x-example: html
572
+ required: false
573
+ type: string
574
+ enum:
575
+ - json
576
+ - html
577
+ default: json
578
+
579
+ QueryParam:
580
+ name: q
581
+ in: query
582
+ description: Search query term or prhase.
583
+ required: true
584
+ type: string
585
+ x-example: cheeseburgers
586
+
587
+ SearchParam:
588
+ name: s
589
+ in: query
590
+ description: Search term.
591
+ required: true
592
+ type: string
593
+ x-example: ryan gosling
594
+
595
+ UsernameParam:
596
+ name: username
597
+ in: query
598
+ description: Filters channels by specified username.
599
+ required: false
600
+ type: string
601
+
602
+ IsPrivateParam:
603
+ name: is_private
604
+ in: query
605
+ description: Filters results by is_private flag.
606
+ required: false
607
+ type: boolean
608
+
609
+ IsIndexableParam:
610
+ name: is_indexable
611
+ in: query
612
+ description: Filters results by is_indexable flag. Giphy only.
613
+ required: false
614
+ type: boolean
615
+
616
+ TagParam:
617
+ name: tag
618
+ in: query
619
+ description: Filters results by specified tag.
620
+ x-example: burrito
621
+ required: false
622
+ type: string
623
+
624
+ RatingParam:
625
+ name: rating
626
+ in: query
627
+ description: Filters results by specified rating.
628
+ x-example: g
629
+ required: false
630
+ type: string
631
+
632
+ CallbackParam:
633
+ name: callback
634
+ in: query
635
+ description: Json callback that is returned with the response.
636
+ required: false
637
+ type: string
638
+
639
+ #################################
640
+ # RESPONSES OBJECTS
641
+ #################################
642
+ responses:
643
+ BadRequestResponse:
644
+ description: Bad Request
645
+ schema:
646
+ type: object
647
+ properties:
648
+ meta:
649
+ $ref: '#/definitions/MetaContent'
650
+
651
+ ForbiddenResponse:
652
+ description: Forbidden
653
+ schema:
654
+ $ref: '#/definitions/MetaObject'
655
+
656
+ NotFoundResponse:
657
+ description: Not Found
658
+ schema:
659
+ $ref: '#/definitions/MetaObject'
660
+
661
+ TooManyRequestResponse:
662
+ description: Too many requests
663
+ schema:
664
+ $ref: '#/definitions/MetaObject'
665
+
666
+ DefaultResponse:
667
+ description: Unexpected error
668
+ schema:
669
+ $ref: '#/definitions/MetaObject'
670
+
671
+ #################################
672
+ # DEFINITION OBJECTS
673
+ #################################
674
+ definitions:
675
+ BaseChannelModel:
676
+ type: object
677
+ properties:
678
+ type:
679
+ type: string
680
+ description: Always "channel"
681
+ default: 'channel'
682
+ id:
683
+ type: integer
684
+ format: int32
685
+ description: '123'
686
+ parent:
687
+ type: string
688
+ description: parent's slug
689
+ create_datetime:
690
+ type: string
691
+ description: 'xyz'
692
+ breadcrumbs:
693
+ type: array
694
+ minItems: 0
695
+ maxItems: 4
696
+ uniqueItems: true
697
+ items:
698
+ $ref: '#/definitions/Breadcrumb'
699
+ username:
700
+ type: string
701
+ description: 'xyz'
702
+ slug:
703
+ type: string
704
+ example: 'parent-child-grandchild-greatgrandchild'
705
+ title:
706
+ type: string
707
+ description: 'xyz'
708
+ short_title:
709
+ type: string
710
+ description: 'xyz'
711
+ description:
712
+ type: string
713
+ description: 'xyz'
714
+ featured_gif:
715
+ $ref: '#/definitions/Gif'
716
+ banner_image:
717
+ type: string
718
+ description: 'xyz'
719
+ avatar_image:
720
+ type: string
721
+ description: 'xyz'
722
+ screensaver_gif:
723
+ $ref: '#/definitions/Gif'
724
+ is_private:
725
+ type: boolean
726
+ is_live:
727
+ type: boolean
728
+ event_start_datetime:
729
+ type: string
730
+ description: 'xyz'
731
+ event_end_datetime:
732
+ type: string
733
+ description: 'xyz'
734
+ has_children:
735
+ type: boolean
736
+ url:
737
+ type: string
738
+ description: 'xyz'
739
+ website_url:
740
+ type: string
741
+ description: 'xyz'
742
+ instagram_url:
743
+ type: string
744
+ description: 'xyz'
745
+ twitter_url:
746
+ type: string
747
+ description: 'xyz'
748
+ facebook_url:
749
+ type: string
750
+ description: 'xyz'
751
+ pinterest_url:
752
+ type: string
753
+ description: 'xyz'
754
+ tumblr_url:
755
+ type: string
756
+ description: 'xyz'
757
+ user:
758
+ $ref: '#/definitions/User'
759
+ trending_tags:
760
+ type: array
761
+ minItems: 0
762
+ maxItems: 10
763
+ uniqueItems: true
764
+ items:
765
+ $ref: '#/definitions/TrendingTag'
766
+ gifs:
767
+ type: object
768
+ properties:
769
+ data:
770
+ type: array
771
+ minItems: 0
772
+ maxItems: 25
773
+ uniqueItems: true
774
+ items:
775
+ $ref: '#/definitions/Gif'
776
+ pagination:
777
+ $ref: '#/definitions/Pagination'
778
+
779
+ ChannelWithChildrenModel:
780
+ allOf:
781
+ - $ref: '#/definitions/BaseChannelModel'
782
+ - type: object
783
+ properties:
784
+ children:
785
+ type: object
786
+ properties:
787
+ data:
788
+ type: array
789
+ minItems: 0
790
+ maxItems: 10
791
+ uniqueItems: true
792
+ items:
793
+ $ref: '#/definitions/LastChildModel'
794
+ pagination:
795
+ $ref: '#/definitions/Pagination'
796
+
797
+ LastChildModel:
798
+ allOf:
799
+ - $ref: '#/definitions/BaseChannelModel'
800
+ - type: object
801
+ properties:
802
+ children:
803
+ type: object
804
+ properties:
805
+ data:
806
+ type: array
807
+ minItems: 0
808
+ maxItems: 10
809
+ uniqueItems: true
810
+ items:
811
+ $ref: '#/definitions/BaseChannelModel'
812
+ pagination:
813
+ $ref: '#/definitions/Pagination'
814
+
815
+ User:
816
+ type: object
817
+ description: An object containing data about the user associated with this GIF, if applicable.
818
+ properties:
819
+ avatar_url:
820
+ type: string
821
+ description: The URL for this user's avatar image.
822
+ example: 'https://media1.giphy.com/avatars/election2016/XwYrZi5H87o6.gif'
823
+ banner_url:
824
+ type: string
825
+ description: The URL for the banner image that appears atop this user's profile page.
826
+ example: 'https://media4.giphy.com/avatars/cheezburger/XkuejOhoGLE6.jpg'
827
+ profile_url:
828
+ type: string
829
+ description: The URL for this user's profile.
830
+ example: 'https://giphy.com/cheezburger/'
831
+ username:
832
+ type: string
833
+ description: The username associated with this user.
834
+ example: 'joecool4000'
835
+ display_name:
836
+ type: string
837
+ description: The display name associated with this user (contains formatting the base username might not).
838
+ example: 'JoeCool4000'
839
+ twitter:
840
+ type: string
841
+ description: The Twitter username associated with this user, if applicable.
842
+ example: '@joecool4000'
843
+
844
+ TrendingTag:
845
+ type: object
846
+ properties:
847
+ id:
848
+ type: integer
849
+ format: int32
850
+ name_encoded:
851
+ type: string
852
+ example: 'presidential-debate-2016'
853
+ name:
854
+ type: string
855
+ example: 'presidential debate 2016'
856
+
857
+ Pagination:
858
+ type: object
859
+ properties:
860
+ offset:
861
+ type: integer
862
+ format: int32
863
+ description: Position in pagination.
864
+ example: 0
865
+ total_count:
866
+ type: integer
867
+ format: int32
868
+ description: Total number of items available.
869
+ example: 2591
870
+ count:
871
+ type: integer
872
+ format: int32
873
+ description: Total number of items returned.
874
+ example: 25
875
+ # has_next:
876
+ # type: boolean
877
+
878
+ Breadcrumb:
879
+ type: object
880
+ properties:
881
+ url:
882
+ type: string
883
+ example: '/election2016'
884
+ id:
885
+ type: integer
886
+ format: int32
887
+ name:
888
+ type: string
889
+ example: 'Election 2016'
890
+
891
+ Gif:
892
+ type: object
893
+ description: An object containing data that describes GIFs returned by the query.
894
+ properties:
895
+ type:
896
+ type: string
897
+ description: By default, this is almost always gif
898
+ default: 'gif'
899
+ example: 'gif'
900
+ id:
901
+ type: string
902
+ example: 'YsTs5ltWtEhnq'
903
+ description: This GIF's unique ID
904
+ slug:
905
+ type: string
906
+ example: 'confused-flying-YsTs5ltWtEhnq'
907
+ description: The unique slug used in this GIF's URL
908
+ url:
909
+ type: string
910
+ example: 'http://giphy.com/gifs/confused-flying-YsTs5ltWtEhnq'
911
+ description: The unique URL for this GIF
912
+ bitly_gif_url:
913
+ type: string
914
+ example: 'http://gph.is/1gsWDcL'
915
+ description: The unique bit.ly URL for this GIF
916
+ bitly_url:
917
+ type: string
918
+ example: 'http://gph.is/1gsWDcL'
919
+ description: The unique bit.ly URL for this GIF
920
+ embed_url:
921
+ type: string
922
+ example: 'http://giphy.com/embed/YsTs5ltWtEhnq'
923
+ description: A URL used for embedding this GIF
924
+ username:
925
+ type: string
926
+ example: 'JoeCool4000'
927
+ description: The username this GIF is attached to, if applicable
928
+ source:
929
+ type: string
930
+ example: 'http://www.reddit.com/r/reactiongifs/comments/1xpyaa/superman_goes_to_hollywood/'
931
+ description: The page on which this GIF was found
932
+ rating:
933
+ type: string
934
+ example: 'g'
935
+ description: The MPAA-style rating for this content. Examples include Y, G, PG, PG-13 and R
936
+ content_url:
937
+ type: string
938
+ example: ''
939
+ description: Currently unused
940
+ tags:
941
+ type: array
942
+ description: 'An array of tags for this GIF (Note\: Not available when using the Public Beta Key)'
943
+ items:
944
+ type: string
945
+ minItems: 0
946
+ example: ['cat', 'dog', 'pets']
947
+ # TODO: is this correct?
948
+ maxItems: 10
949
+ uniqueItems: true
950
+ featured_tags:
951
+ type: array
952
+ description: 'An array of featured tags for this GIF (Note\: Not available when using the Public Beta Key)'
953
+ items:
954
+ type: string
955
+ minItems: 0
956
+ example: ['cat', 'dog', 'pets']
957
+ # TODO: is this correct?
958
+ maxItems: 10
959
+ uniqueItems: true
960
+ user:
961
+ description: An object containing data about the user associated with this GIF, if applicable.
962
+ $ref: '#/definitions/User'
963
+ source_tld:
964
+ type: string
965
+ example: 'cheezburger.com'
966
+ description: The top level domain of the source URL.
967
+ source_post_url:
968
+ type: string
969
+ example: 'http://cheezburger.com/5282328320'
970
+ description: The URL of the webpage on which this GIF was found.
971
+ is_hidden:
972
+ type: boolean
973
+ description: Denotes whether or not this GIF is private.
974
+ is_removed:
975
+ type: boolean
976
+ description: Denotes whether or not this GIF has been deleted.
977
+ is_community:
978
+ type: boolean
979
+ description: Denotes whether or not this GIF has been uploaded by a GIPHY user.
980
+ is_anonymous:
981
+ type: boolean
982
+ description: Denotes whether or not this GIF has been uploaded to GIPHY by an anonymous user.
983
+ is_featured:
984
+ type: boolean
985
+ description: Denotes whether or not this GIF is featured on giphy.com (deprecated).
986
+ is_realtime:
987
+ type: boolean
988
+ description: Denotes whether or not this GIF has been sourced from a realtime crawl.
989
+ is_indexable:
990
+ type: boolean
991
+ description: Denotes whether or not this GIF is indexable.
992
+ is_sticker:
993
+ type: boolean
994
+ description: Denotes whether this GIF is a sticker (has a transparent background).
995
+ update_datetime:
996
+ type: string
997
+ example: '2013-08-01 12:41:48'
998
+ description: The date on which this GIF was last updated.
999
+ create_datetime:
1000
+ type: string
1001
+ example: '2013-08-01 12:41:48'
1002
+ description: The date this GIF was added to the GIPHY database.
1003
+ import_datetime:
1004
+ type: string
1005
+ example: '2013-08-01 12:41:48'
1006
+ description: The creation or upload date from this GIF's source.
1007
+ trending_datetime:
1008
+ type: string
1009
+ example: '2013-08-01 12:41:48'
1010
+ description: The date on which this gif was marked trending, if applicable.
1011
+ images:
1012
+ type: object
1013
+ description: An object containing data for various available formats and sizes of this GIF.
1014
+ properties:
1015
+ fixed_height:
1016
+ type: object
1017
+ description: Data surrounding versions of this GIF with a fixed height of 200 pixels. Good for mobile use.
1018
+ properties:
1019
+ url:
1020
+ type: string
1021
+ description: The publicly-accessible direct URL for this GIF.
1022
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200.gif'
1023
+ width:
1024
+ type: string
1025
+ description: The width of this GIF in pixels.
1026
+ example: "320"
1027
+ height:
1028
+ type: string
1029
+ description: The height of this GIF in pixels.
1030
+ example: "200"
1031
+ size:
1032
+ type: string
1033
+ description: The size of this GIF in bytes.
1034
+ example: "32381"
1035
+ mp4:
1036
+ type: string
1037
+ description: The URL for this GIF in .MP4 format.
1038
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200.mp4'
1039
+ mp4_size:
1040
+ type: string
1041
+ description: The size in bytes of the .MP4 file corresponding to this GIF.
1042
+ example: '25123'
1043
+ webp:
1044
+ description: The URL for this GIF in .webp format.
1045
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200.webp'
1046
+ type: string
1047
+ webp_size:
1048
+ description: The size in bytes of the .webp file corresponding to this GIF.
1049
+ example: '12321'
1050
+ type: string
1051
+ fixed_height_still:
1052
+ type: object
1053
+ description: Data surrounding a static image of this GIF with a fixed height of 200 pixels.
1054
+ properties:
1055
+ url:
1056
+ type: string
1057
+ description: The publicly-accessible direct URL for this GIF.
1058
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200_s.gif'
1059
+ width:
1060
+ type: string
1061
+ description: The width of this GIF in pixels.
1062
+ example: "320"
1063
+ height:
1064
+ type: string
1065
+ description: The height of this GIF in pixels.
1066
+ example: "200"
1067
+ fixed_height_downsampled:
1068
+ type: object
1069
+ description: Data surrounding versions of this GIF with a fixed height of 200 pixels and the number of frames reduced to 6.
1070
+ properties:
1071
+ url:
1072
+ type: string
1073
+ description: The publicly-accessible direct URL for this GIF.
1074
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200_d.gif'
1075
+ width:
1076
+ type: string
1077
+ description: The width of this GIF in pixels.
1078
+ example: "320"
1079
+ height:
1080
+ type: string
1081
+ description: The height of this GIF in pixels.
1082
+ example: "200"
1083
+ size:
1084
+ type: string
1085
+ description: The size of this GIF in bytes.
1086
+ example: "32381"
1087
+ webp:
1088
+ description: The URL for this GIF in .webp format.
1089
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200_d.webp'
1090
+ type: string
1091
+ webp_size:
1092
+ description: The size in bytes of the .webp file corresponding to this GIF.
1093
+ example: '12321'
1094
+ type: string
1095
+ fixed_width:
1096
+ type: object
1097
+ description: Data surrounding versions of this GIF with a fixed width of 200 pixels. Good for mobile use.
1098
+ properties:
1099
+ url:
1100
+ type: string
1101
+ description: The publicly-accessible direct URL for this GIF.
1102
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200w.gif'
1103
+ width:
1104
+ type: string
1105
+ description: The width of this GIF in pixels.
1106
+ example: "320"
1107
+ height:
1108
+ type: string
1109
+ description: The height of this GIF in pixels.
1110
+ example: "200"
1111
+ size:
1112
+ type: string
1113
+ description: The size of this GIF in bytes.
1114
+ example: "32381"
1115
+ mp4:
1116
+ type: string
1117
+ description: The URL for this GIF in .MP4 format.
1118
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200w.mp4'
1119
+ mp4_size:
1120
+ type: string
1121
+ description: The size in bytes of the .MP4 file corresponding to this GIF.
1122
+ example: '25123'
1123
+ webp:
1124
+ description: The URL for this GIF in .webp format.
1125
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200w.webp'
1126
+ type: string
1127
+ webp_size:
1128
+ description: The size in bytes of the .webp file corresponding to this GIF.
1129
+ example: '12321'
1130
+ type: string
1131
+ fixed_width_still:
1132
+ type: object
1133
+ description: Data surrounding a static image of this GIF with a fixed height of 200 pixels.
1134
+ properties:
1135
+ url:
1136
+ type: string
1137
+ description: The publicly-accessible direct URL for this GIF.
1138
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200w_s.gif'
1139
+ width:
1140
+ type: string
1141
+ description: The width of this GIF in pixels.
1142
+ example: "320"
1143
+ height:
1144
+ type: string
1145
+ description: The height of this GIF in pixels.
1146
+ example: "200"
1147
+ fixed_width_downsampled:
1148
+ type: object
1149
+ description: Data surrounding versions of this GIF with a fixed width of 200 pixels and the number of frames reduced to 6.
1150
+ properties:
1151
+ url:
1152
+ type: string
1153
+ description: The publicly-accessible direct URL for this GIF.
1154
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200w_d.gif'
1155
+ width:
1156
+ type: string
1157
+ description: The width of this GIF in pixels.
1158
+ example: "320"
1159
+ height:
1160
+ type: string
1161
+ description: The height of this GIF in pixels.
1162
+ example: "200"
1163
+ size:
1164
+ type: string
1165
+ description: The size of this GIF in bytes.
1166
+ example: "32381"
1167
+ webp:
1168
+ description: The URL for this GIF in .webp format.
1169
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/200w_d.webp'
1170
+ type: string
1171
+ webp_size:
1172
+ description: The size in bytes of the .webp file corresponding to this GIF.
1173
+ example: '12321'
1174
+ type: string
1175
+ fixed_height_small:
1176
+ type: object
1177
+ description: Data surrounding versions of this GIF with a fixed height of 100 pixels. Good for mobile keyboards.
1178
+ properties:
1179
+ url:
1180
+ type: string
1181
+ description: The publicly-accessible direct URL for this GIF.
1182
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100.gif'
1183
+ width:
1184
+ type: string
1185
+ description: The width of this GIF in pixels.
1186
+ example: "320"
1187
+ height:
1188
+ type: string
1189
+ description: The height of this GIF in pixels.
1190
+ example: "100"
1191
+ size:
1192
+ type: string
1193
+ description: The size of this GIF in bytes.
1194
+ example: "32381"
1195
+ mp4:
1196
+ type: string
1197
+ description: The URL for this GIF in .MP4 format.
1198
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100.mp4'
1199
+ mp4_size:
1200
+ type: string
1201
+ description: The size in bytes of the .MP4 file corresponding to this GIF.
1202
+ example: '25123'
1203
+ webp:
1204
+ description: The URL for this GIF in .webp format.
1205
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100.webp'
1206
+ type: string
1207
+ webp_size:
1208
+ description: The size in bytes of the .webp file corresponding to this GIF.
1209
+ example: '12321'
1210
+ type: string
1211
+ fixed_height_small_still:
1212
+ type: object
1213
+ description: Data surrounding a static image of this GIF with a fixed height of 100 pixels.
1214
+ properties:
1215
+ url:
1216
+ type: string
1217
+ description: The publicly-accessible direct URL for this GIF.
1218
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100_s.gif'
1219
+ width:
1220
+ type: string
1221
+ description: The width of this GIF in pixels.
1222
+ example: "320"
1223
+ height:
1224
+ type: string
1225
+ description: The height of this GIF in pixels.
1226
+ example: "100"
1227
+ fixed_width_small:
1228
+ type: object
1229
+ description: Data surrounding versions of this GIF with a fixed width of 100 pixels. Good for mobile keyboards.
1230
+ properties:
1231
+ url:
1232
+ type: string
1233
+ description: The publicly-accessible direct URL for this GIF.
1234
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100w.gif'
1235
+ width:
1236
+ type: string
1237
+ description: The width of this GIF in pixels.
1238
+ example: "100"
1239
+ height:
1240
+ type: string
1241
+ description: The height of this GIF in pixels.
1242
+ example: "200"
1243
+ size:
1244
+ type: string
1245
+ description: The size of this GIF in bytes.
1246
+ example: "32381"
1247
+ mp4:
1248
+ type: string
1249
+ description: The URL for this GIF in .MP4 format.
1250
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100w.mp4'
1251
+ mp4_size:
1252
+ type: string
1253
+ description: The size in bytes of the .MP4 file corresponding to this GIF.
1254
+ example: '25123'
1255
+ webp:
1256
+ description: The URL for this GIF in .webp format.
1257
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100w.webp'
1258
+ type: string
1259
+ webp_size:
1260
+ description: The size in bytes of the .webp file corresponding to this GIF.
1261
+ example: '12321'
1262
+ type: string
1263
+ fixed_width_small_still:
1264
+ type: object
1265
+ description: Data surrounding a static image of this GIF with a fixed width of 100 pixels.
1266
+ properties:
1267
+ url:
1268
+ type: string
1269
+ description: The publicly-accessible direct URL for this GIF.
1270
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/100w_s.gif'
1271
+ width:
1272
+ type: string
1273
+ description: The width of this GIF in pixels.
1274
+ example: "100"
1275
+ height:
1276
+ type: string
1277
+ description: The height of this GIF in pixels.
1278
+ example: "200"
1279
+ downsized:
1280
+ type: object
1281
+ description: Data surrounding a version of this GIF downsized to be under 2mb.
1282
+ properties:
1283
+ url:
1284
+ type: string
1285
+ description: The publicly-accessible direct URL for this GIF.
1286
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy-downsized.gif'
1287
+ width:
1288
+ type: string
1289
+ description: The width of this GIF in pixels.
1290
+ example: "320"
1291
+ height:
1292
+ type: string
1293
+ description: The height of this GIF in pixels.
1294
+ example: "200"
1295
+ size:
1296
+ type: string
1297
+ description: The size of this GIF in bytes.
1298
+ example: "12381"
1299
+ downsized_still:
1300
+ type: object
1301
+ description: Data surrounding a static preview image of the downsized version of this GIF.
1302
+ properties:
1303
+ url:
1304
+ type: string
1305
+ description: The publicly-accessible direct URL for this GIF.
1306
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy-downsized_s.gif'
1307
+ width:
1308
+ type: string
1309
+ description: The width of this GIF in pixels.
1310
+ example: "320"
1311
+ height:
1312
+ type: string
1313
+ description: The height of this GIF in pixels.
1314
+ example: "200"
1315
+ downsized_large:
1316
+ type: object
1317
+ description: Data surrounding a version of this GIF downsized to be under 8mb.
1318
+ properties:
1319
+ url:
1320
+ type: string
1321
+ description: The publicly-accessible direct URL for this GIF.
1322
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy-downsized_l.gif'
1323
+ width:
1324
+ type: string
1325
+ description: The width of this GIF in pixels.
1326
+ example: "320"
1327
+ height:
1328
+ type: string
1329
+ description: The height of this GIF in pixels.
1330
+ example: "200"
1331
+ size:
1332
+ type: string
1333
+ description: The size of this GIF in bytes.
1334
+ example: "32381"
1335
+ downsized_medium:
1336
+ type: object
1337
+ description: Data surrounding a version of this GIF downsized to be under 5mb.
1338
+ properties:
1339
+ url:
1340
+ type: string
1341
+ description: The publicly-accessible direct URL for this GIF.
1342
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy-downsized_m.gif'
1343
+ width:
1344
+ type: string
1345
+ description: The width of this GIF in pixels.
1346
+ example: "320"
1347
+ height:
1348
+ type: string
1349
+ description: The height of this GIF in pixels.
1350
+ example: "200"
1351
+ size:
1352
+ type: string
1353
+ description: The size of this GIF in bytes.
1354
+ example: "32381"
1355
+ downsized_small:
1356
+ type: object
1357
+ description: Data surrounding a version of this GIF downsized to be under 200kb.
1358
+ properties:
1359
+ mp4:
1360
+ type: string
1361
+ description: The publicly-accessible direct URL for this GIF.
1362
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy-downsized_small.gif'
1363
+ width:
1364
+ type: string
1365
+ description: The width of this GIF in pixels.
1366
+ example: "320"
1367
+ height:
1368
+ type: string
1369
+ description: The height of this GIF in pixels.
1370
+ example: "200"
1371
+ mp4_size:
1372
+ type: string
1373
+ description: The size of this GIF in bytes.
1374
+ example: "122381"
1375
+ original:
1376
+ type: object
1377
+ description: Data surrounding the original version of this GIF. Good for desktop use.
1378
+ properties:
1379
+ url:
1380
+ type: string
1381
+ description: The publicly-accessible direct URL for this GIF.
1382
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy.gif'
1383
+ width:
1384
+ type: string
1385
+ description: The width of this GIF in pixels.
1386
+ example: "320"
1387
+ height:
1388
+ type: string
1389
+ description: The height of this GIF in pixels.
1390
+ example: "200"
1391
+ size:
1392
+ type: string
1393
+ description: The size of this GIF in bytes.
1394
+ example: "32381"
1395
+ frames:
1396
+ type: string
1397
+ description: The number of frames in this GIF.
1398
+ example: "15"
1399
+ mp4:
1400
+ type: string
1401
+ description: The URL for this GIF in .MP4 format.
1402
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy.mp4'
1403
+ mp4_size:
1404
+ type: string
1405
+ description: The size in bytes of the .MP4 file corresponding to this GIF.
1406
+ example: '25123'
1407
+ webp:
1408
+ description: The URL for this GIF in .webp format.
1409
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy.webp'
1410
+ type: string
1411
+ webp_size:
1412
+ description: The size in bytes of the .webp file corresponding to this GIF.
1413
+ example: '12321'
1414
+ type: string
1415
+ original_still:
1416
+ type: object
1417
+ description: Data surrounding a static preview image of the original GIF.
1418
+ properties:
1419
+ url:
1420
+ type: string
1421
+ description: The publicly-accessible direct URL for this GIF.
1422
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy_s.gif'
1423
+ width:
1424
+ type: string
1425
+ description: The width of this GIF in pixels.
1426
+ example: "320"
1427
+ height:
1428
+ type: string
1429
+ description: The height of this GIF in pixels.
1430
+ example: "200"
1431
+ looping:
1432
+ type: object
1433
+ description: Data surrounding a version of this GIF set to loop for 15 seconds.
1434
+ properties:
1435
+ mp4:
1436
+ type: string
1437
+ description: The URL for this GIF in .MP4 format.
1438
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/looping.mp4'
1439
+ preview:
1440
+ type: object
1441
+ description: Data surrounding a version of this GIF in .MP4 format limited to 50kb that displays the first 1-2 seconds of the GIF.
1442
+ properties:
1443
+ mp4:
1444
+ type: string
1445
+ description: The URL for this GIF in .MP4 format.
1446
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy-preview.mp4'
1447
+ mp4_size:
1448
+ type: string
1449
+ description: The size of this file in bytes.
1450
+ example: "20241"
1451
+ width:
1452
+ type: string
1453
+ description: The width of this file in pixels.
1454
+ example: "320"
1455
+ height:
1456
+ type: string
1457
+ description: The height of this file in pixels.
1458
+ example: "200"
1459
+ preview_gif:
1460
+ type: object
1461
+ description: Data surrounding a version of this GIF limited to 50kb that displays the first 1-2 seconds of the GIF.
1462
+ properties:
1463
+ url:
1464
+ type: string
1465
+ description: The URL for this preview GIF.
1466
+ example: 'https://media1.giphy.com/media/cZ7rmKfFYOvYI/giphy-preview.gif'
1467
+ width:
1468
+ type: string
1469
+ description: The width of this GIF in pixels.
1470
+ example: "320"
1471
+ height:
1472
+ type: string
1473
+ description: The height of this GIF in pixels.
1474
+ example: "200"
1475
+ size:
1476
+ type: string
1477
+ description: The size of this file in bytes.
1478
+ example: "10291"
1479
+
1480
+ RandomGif:
1481
+ type: object
1482
+ description: An object containing data that describes GIFs returned by the query.
1483
+ properties:
1484
+ type:
1485
+ type: string
1486
+ description: By default, this is almost always gif
1487
+ default: "gif"
1488
+ example: "gif"
1489
+ id:
1490
+ type: string
1491
+ description: This GIF's unique ID
1492
+ example: "Ggjwvmqktuvf2"
1493
+ url:
1494
+ type: string
1495
+ description: The URL for this preview GIF.
1496
+ example: "http://giphy.com/gifs/american-psycho-christian-bale-Ggjwvmqktuvf2"
1497
+ image_original_url:
1498
+ type: string
1499
+ description: The URL for the original preview GIF.
1500
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/giphy.gif"
1501
+ image_url:
1502
+ type: string
1503
+ description: The URL for this preview GIF.
1504
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/giphy.gif"
1505
+ image_mp4_url:
1506
+ type: string
1507
+ description: The URL for this preview GIF.
1508
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/giphy.mp4"
1509
+ image_frames:
1510
+ type: string
1511
+ description: The number of frames in this GIF.
1512
+ example: "11"
1513
+ image_width:
1514
+ type: string
1515
+ description: The width of this GIF.
1516
+ example: "500"
1517
+ image_height:
1518
+ type: string
1519
+ description: The height of this GIF.
1520
+ example: "256"
1521
+ fixed_height_downsampled_url:
1522
+ type: string
1523
+ description: A version of this GIF with a fixed height of 200 pixels and the number of frames reduced to 6.
1524
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/200_d.gif"
1525
+ fixed_height_downsampled_width:
1526
+ type: string
1527
+ example: "391"
1528
+ fixed_height_downsampled_height:
1529
+ type: string
1530
+ example: "200"
1531
+ fixed_width_downsampled_url:
1532
+ type: string
1533
+ description: A version of this GIF with a fixed width of 200 pixels and the number of frames reduced to 6.
1534
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/200w_d.gif"
1535
+ fixed_width_downsampled_width:
1536
+ type: string
1537
+ example: "200"
1538
+ fixed_width_downsampled_height:
1539
+ type: string
1540
+ example: "102"
1541
+ fixed_height_small_url:
1542
+ type: string
1543
+ description: A version of this GIF with a fixed height of 100 pixels and the number of frames reduced to 6.
1544
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/100.gif"
1545
+ fixed_height_small_still_url:
1546
+ type: string
1547
+ description: A still version of this gif.
1548
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/100_s.gif"
1549
+ fixed_height_small_width:
1550
+ type: string
1551
+ example: "195"
1552
+ fixed_height_small_height:
1553
+ type: string
1554
+ example: "100"
1555
+ fixed_width_small_url:
1556
+ type: string
1557
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/100w.gif"
1558
+ fixed_width_small_still_url:
1559
+ type: string
1560
+ description: A still version of this GIF with a fixed width of 100 pixels.
1561
+ example: "http://s3.amazonaws.com/giphygifs/media/Ggjwvmqktuvf2/100w_s.gif"
1562
+ fixed_width_small_width:
1563
+ type: string
1564
+ example: "100"
1565
+ fixed_width_small_height:
1566
+ type: string
1567
+ example: "51"
1568
+
1569
+ Category:
1570
+ type: object
1571
+ properties:
1572
+ name:
1573
+ type: string
1574
+ example: 'finger guns'
1575
+ description: Category name
1576
+ name_encoded:
1577
+ type: string
1578
+ example: 'finger-guns'
1579
+ description: Category name, with dashes '-' instead of spaces ' '.
1580
+ subcategories:
1581
+ type: array
1582
+ description: subcategories are tags for a given category. Use them with the `/gifs/categories/:category/:tag` endpoint
1583
+ items:
1584
+ $ref: '#/definitions/ShallowTag'
1585
+ gif:
1586
+ $ref: '#/definitions/Gif'
1587
+ description: A gif which can be used as the icon for this category.
1588
+
1589
+ Tag:
1590
+ type: object
1591
+ properties:
1592
+ name:
1593
+ type: string
1594
+ example: 'finger guns'
1595
+ description: Category name
1596
+ name_encoded:
1597
+ example: 'finger-guns'
1598
+ description: Category name, with dashes instead of spaces.
1599
+ gif:
1600
+ $ref: '#/definitions/Gif'
1601
+ description: A gif which can be used as the icon for this category.
1602
+
1603
+ ShallowTag:
1604
+ type: object
1605
+ properties:
1606
+ name:
1607
+ type: string
1608
+ example: 'finger guns'
1609
+ description: Category name
1610
+ name_encoded:
1611
+ type: string
1612
+ example: 'finger-guns'
1613
+ description: Category name, with dashes instead of spaces.
1614
+
1615
+ MetaContent:
1616
+ type: object
1617
+ required:
1618
+ - status
1619
+ - msg
1620
+ properties:
1621
+ msg:
1622
+ type: string
1623
+ example: 'OK'
1624
+ description: HTTP Response Message
1625
+ status:
1626
+ type: integer
1627
+ format: int32
1628
+ description: HTTP Response Code
1629
+ response_id:
1630
+ type: string
1631
+ example: '57eea03c72381f86e05c35d2'
1632
+ description: A unique ID paired with this response from the API.
1633
+
1634
+ MetaObject:
1635
+ type: object
1636
+ properties:
1637
+ meta:
1638
+ $ref: '#/definitions/MetaContent'