GiphyClient 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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'