blob: 978da3cb1f97932eef46f75d8bd068de0330319a [file] [log] [blame]
Joe Gregorio2379ecc2010-10-26 10:51:28 -04001{
Joe Gregoriof4153422011-03-18 22:45:18 -04002 "kind": "discovery#describeItem",
Joe Gregorio2379ecc2010-10-26 10:51:28 -04003 "name": "zoo",
4 "version": "v1",
Joe Gregoriobb8677e2012-08-21 14:26:02 -04005 "description": "Zoo API used for testing",
Joe Gregorio6a63a762011-05-02 22:36:05 -04006 "basePath": "/zoo/",
Pepper Lebeck-Jobe860836f2015-06-12 20:42:23 -04007 "batchPath": "batchZoo",
Joe Gregorioa2838152012-07-16 11:52:17 -04008 "rootUrl": "https://www.googleapis.com/",
arithmetic1728981eadf2020-06-02 10:20:10 -07009 "mtlsRootUrl": "https://www.mtls.googleapis.com/",
Joe Gregorioa2838152012-07-16 11:52:17 -040010 "servicePath": "zoo/v1/",
Joe Gregorio2379ecc2010-10-26 10:51:28 -040011 "rpcPath": "/rpc",
Joe Gregorioc8e421c2012-06-06 14:03:13 -040012 "parameters": {
13 "alt": {
14 "type": "string",
15 "description": "Data format for the response.",
16 "default": "json",
17 "enum": [
18 "json"
19 ],
20 "enumDescriptions": [
21 "Responses with Content-Type of application/json"
22 ],
23 "location": "query"
24 },
25 "fields": {
26 "type": "string",
27 "description": "Selector specifying which fields to include in a partial response.",
28 "location": "query"
29 },
30 "key": {
31 "type": "string",
32 "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
33 "location": "query"
34 },
35 "oauth_token": {
36 "type": "string",
37 "description": "OAuth 2.0 token for the current user.",
38 "location": "query"
39 },
40 "prettyPrint": {
41 "type": "boolean",
42 "description": "Returns response with indentations and line breaks.",
43 "default": "true",
44 "location": "query"
45 },
46 "quotaUser": {
47 "type": "string",
48 "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.",
49 "location": "query"
50 },
51 "userIp": {
52 "type": "string",
53 "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.",
54 "location": "query"
55 }
56 },
Joe Gregoriof4153422011-03-18 22:45:18 -040057 "features": [
58 "dataWrapper"
59 ],
60 "schemas": {
61 "Animal": {
62 "id": "Animal",
63 "type": "object",
64 "properties": {
65 "etag": {
66 "type": "string"
67 },
68 "kind": {
69 "type": "string",
70 "default": "zoo#animal"
71 },
72 "name": {
73 "type": "string"
74 },
75 "photo": {
76 "type": "object",
77 "properties": {
78 "filename": {
79 "type": "string"
80 },
81 "hash": {
82 "type": "string"
83 },
84 "hashAlgorithm": {
85 "type": "string"
86 },
87 "size": {
88 "type": "integer"
89 },
90 "type": {
91 "type": "string"
92 }
93 }
94 }
95 }
96 },
97 "Animal2": {
98 "id": "Animal2",
99 "type": "object",
100 "properties": {
101 "kind": {
102 "type": "string",
103 "default": "zoo#animal"
104 },
105 "name": {
106 "type": "string"
107 }
108 }
109 },
110 "AnimalFeed": {
111 "id": "AnimalFeed",
112 "type": "object",
113 "properties": {
114 "etag": {
115 "type": "string"
116 },
117 "items": {
118 "type": "array",
119 "items": {
120 "$ref": "Animal"
121 }
122 },
123 "kind": {
124 "type": "string",
125 "default": "zoo#animalFeed"
126 }
127 }
128 },
Joe Gregorio7f371e12012-07-12 16:04:33 -0400129 "AnimalMap": {
130 "id": "AnimalMap",
131 "type": "object",
132 "properties": {
133 "etag": {
134 "type": "string"
135 },
136 "animals": {
137 "type": "object",
138 "description": "Map of animal id to animal data",
139 "additionalProperties": {
140 "$ref": "Animal"
141 }
142 },
143 "kind": {
144 "type": "string",
145 "default": "zoo#animalMap"
146 }
147 }
148 },
Joe Gregoriof4153422011-03-18 22:45:18 -0400149 "LoadFeed": {
150 "id": "LoadFeed",
151 "type": "object",
152 "properties": {
153 "items": {
154 "type": "array",
155 "items": {
156 "type": "object",
157 "properties": {
158 "doubleVal": {
159 "type": "number"
160 },
Joe Gregorio2b781282011-12-08 12:00:25 -0500161 "nullVal": {
162 "type": "null"
163 },
164 "booleanVal": {
165 "type": "boolean",
166 "description": "True or False."
167 },
168 "anyVal": {
169 "type": "any",
170 "description": "Anything will do."
171 },
Joe Gregoriof4153422011-03-18 22:45:18 -0400172 "enumVal": {
173 "type": "string"
174 },
175 "kind": {
176 "type": "string",
177 "default": "zoo#loadValue"
178 },
179 "longVal": {
180 "type": "integer"
181 },
182 "stringVal": {
183 "type": "string"
184 }
185 }
186 }
187 },
188 "kind": {
189 "type": "string",
190 "default": "zoo#loadFeed"
191 }
192 }
193 }
194 },
Joe Gregorio7a6df3a2011-01-31 21:55:21 -0500195 "methods": {
196 "query": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400197 "path": "query",
198 "id": "bigquery.query",
Joe Gregorio7a6df3a2011-01-31 21:55:21 -0500199 "httpMethod": "GET",
200 "parameters": {
201 "q": {
Joe Gregoriobee86832011-02-22 10:00:19 -0500202 "type": "string",
Joe Gregorio6a63a762011-05-02 22:36:05 -0400203 "location": "query",
Joe Gregorio7a6df3a2011-01-31 21:55:21 -0500204 "required": false,
205 "repeated": false
Joe Gregoriobee86832011-02-22 10:00:19 -0500206 },
207 "i": {
208 "type": "integer",
Joe Gregorio6a63a762011-05-02 22:36:05 -0400209 "location": "query",
Joe Gregoriobee86832011-02-22 10:00:19 -0500210 "required": false,
211 "repeated": false,
212 "minimum": "0",
213 "maximum": "4294967295",
214 "default": "20"
215 },
216 "n": {
217 "type": "number",
Joe Gregorio6a63a762011-05-02 22:36:05 -0400218 "location": "query",
Joe Gregoriobee86832011-02-22 10:00:19 -0500219 "required": false,
220 "repeated": false
221 },
222 "b": {
223 "type": "boolean",
Joe Gregorio6a63a762011-05-02 22:36:05 -0400224 "location": "query",
Joe Gregoriobee86832011-02-22 10:00:19 -0500225 "required": false,
226 "repeated": false
227 },
228 "a": {
229 "type": "any",
Joe Gregorio6a63a762011-05-02 22:36:05 -0400230 "location": "query",
Joe Gregoriobee86832011-02-22 10:00:19 -0500231 "required": false,
232 "repeated": false
233 },
234 "o": {
235 "type": "object",
Joe Gregorio6a63a762011-05-02 22:36:05 -0400236 "location": "query",
Joe Gregoriobee86832011-02-22 10:00:19 -0500237 "required": false,
238 "repeated": false
239 },
240 "e": {
241 "type": "string",
Joe Gregorio6a63a762011-05-02 22:36:05 -0400242 "location": "query",
Joe Gregoriobee86832011-02-22 10:00:19 -0500243 "required": false,
244 "repeated": false,
245 "enum": [
246 "foo",
247 "bar"
248 ]
Joe Gregorio6804c7a2011-11-18 14:30:32 -0500249 },
Craig Citro1e742822012-03-01 12:59:22 -0800250 "er": {
251 "type": "string",
252 "location": "query",
253 "required": false,
254 "repeated": true,
255 "enum": [
256 "one",
257 "two",
258 "three"
259 ]
260 },
Joe Gregorio6804c7a2011-11-18 14:30:32 -0500261 "rr": {
262 "type": "string",
263 "location": "query",
264 "required": false,
265 "repeated": true,
266 "pattern": "[a-z]+"
Joe Gregorio7a6df3a2011-01-31 21:55:21 -0500267 }
268 }
269 }
270 },
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400271 "resources": {
Joe Gregorio3fada332011-01-07 17:07:45 -0500272 "my": {
273 "resources": {
274 "favorites": {
275 "methods": {
276 "list": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400277 "path": "favorites/@me/mine",
278 "id": "zoo.animals.mine",
Joe Gregorio3fada332011-01-07 17:07:45 -0500279 "httpMethod": "GET",
280 "parameters": {
281 "max-results": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400282 "location": "query",
Joe Gregorio3fada332011-01-07 17:07:45 -0500283 "required": false
284 }
285 }
286 }
287 }
288 }
289 }
290 },
Joe Gregoriod92897c2011-07-07 11:44:56 -0400291 "global": {
292 "resources": {
293 "print": {
294 "methods": {
295 "assert": {
296 "path": "global/print/assert",
297 "id": "zoo.animals.mine",
298 "httpMethod": "GET",
299 "parameters": {
300 "max-results": {
301 "location": "query",
302 "required": false
303 }
304 }
305 }
306 }
307 }
308 }
309 },
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400310 "animals": {
311 "methods": {
312 "crossbreed": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400313 "path": "animals/crossbreed",
314 "id": "zoo.animals.crossbreed",
Joe Gregoriof4153422011-03-18 22:45:18 -0400315 "httpMethod": "POST",
316 "description": "Cross-breed animals",
317 "response": {
318 "$ref": "Animal2"
Joe Gregorio84d3c1f2011-07-25 10:39:45 -0400319 },
320 "mediaUpload": {
321 "accept": [
322 "image/png"
323 ],
324 "protocols": {
325 "simple": {
326 "multipart": true,
327 "path": "upload/activities/{userId}/@self"
328 },
329 "resumable": {
330 "multipart": true,
331 "path": "upload/activities/{userId}/@self"
332 }
333 }
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400334 }
335 },
336 "delete": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400337 "path": "animals/{name}",
338 "id": "zoo.animals.delete",
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400339 "httpMethod": "DELETE",
Joe Gregoriof4153422011-03-18 22:45:18 -0400340 "description": "Delete animals",
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400341 "parameters": {
342 "name": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400343 "location": "path",
Joe Gregoriof4153422011-03-18 22:45:18 -0400344 "required": true,
345 "description": "Name of the animal to delete",
346 "type": "string"
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400347 }
Joe Gregoriof4153422011-03-18 22:45:18 -0400348 },
349 "parameterOrder": [
350 "name"
351 ]
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400352 },
353 "get": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400354 "path": "animals/{name}",
355 "id": "zoo.animals.get",
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400356 "httpMethod": "GET",
Joe Gregoriof4153422011-03-18 22:45:18 -0400357 "description": "Get animals",
Joe Gregorio708388c2012-06-15 13:43:04 -0400358 "supportsMediaDownload": true,
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400359 "parameters": {
360 "name": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400361 "location": "path",
Joe Gregoriof4153422011-03-18 22:45:18 -0400362 "required": true,
363 "description": "Name of the animal to load",
364 "type": "string"
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400365 },
366 "projection": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400367 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400368 "type": "string",
369 "enum": [
370 "full"
371 ],
372 "enumDescriptions": [
373 "Include everything"
374 ]
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400375 }
Joe Gregoriof4153422011-03-18 22:45:18 -0400376 },
377 "parameterOrder": [
378 "name"
379 ],
380 "response": {
381 "$ref": "Animal"
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400382 }
383 },
Joe Gregorioe08a1662011-12-07 09:48:22 -0500384 "getmedia": {
385 "path": "animals/{name}",
386 "id": "zoo.animals.get",
387 "httpMethod": "GET",
388 "description": "Get animals",
389 "parameters": {
390 "name": {
391 "location": "path",
392 "required": true,
393 "description": "Name of the animal to load",
394 "type": "string"
395 },
396 "projection": {
397 "location": "query",
398 "type": "string",
399 "enum": [
400 "full"
401 ],
402 "enumDescriptions": [
403 "Include everything"
404 ]
405 }
406 },
407 "parameterOrder": [
408 "name"
409 ]
410 },
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400411 "insert": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400412 "path": "animals",
413 "id": "zoo.animals.insert",
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400414 "httpMethod": "POST",
Joe Gregoriof4153422011-03-18 22:45:18 -0400415 "description": "Insert animals",
416 "request": {
417 "$ref": "Animal"
418 },
419 "response": {
420 "$ref": "Animal"
Joe Gregoriofdf7c802011-06-30 12:33:38 -0400421 },
422 "mediaUpload": {
423 "accept": [
424 "image/png"
425 ],
426 "maxSize": "1KB",
427 "protocols": {
428 "simple": {
429 "multipart": true,
430 "path": "upload/activities/{userId}/@self"
431 },
432 "resumable": {
433 "multipart": true,
434 "path": "upload/activities/{userId}/@self"
435 }
436 }
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400437 }
438 },
439 "list": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400440 "path": "animals",
441 "id": "zoo.animals.list",
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400442 "httpMethod": "GET",
Joe Gregoriof4153422011-03-18 22:45:18 -0400443 "description": "List animals",
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400444 "parameters": {
445 "max-results": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400446 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400447 "description": "Maximum number of results to return",
448 "type": "integer",
449 "minimum": "0"
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400450 },
451 "name": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400452 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400453 "description": "Restrict result to animals with this name",
454 "type": "string"
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400455 },
456 "projection": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400457 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400458 "type": "string",
459 "enum": [
460 "full"
461 ],
462 "enumDescriptions": [
463 "Include absolutely everything"
464 ]
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400465 },
466 "start-token": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400467 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400468 "description": "Pagination token",
469 "type": "string"
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400470 }
Joe Gregoriof4153422011-03-18 22:45:18 -0400471 },
472 "response": {
473 "$ref": "AnimalFeed"
474 }
475 },
476 "patch": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400477 "path": "animals/{name}",
478 "id": "zoo.animals.patch",
Joe Gregoriof4153422011-03-18 22:45:18 -0400479 "httpMethod": "PATCH",
480 "description": "Update animals",
481 "parameters": {
482 "name": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400483 "location": "path",
Joe Gregoriof4153422011-03-18 22:45:18 -0400484 "required": true,
485 "description": "Name of the animal to update",
486 "type": "string"
487 }
488 },
489 "parameterOrder": [
490 "name"
491 ],
492 "request": {
493 "$ref": "Animal"
494 },
495 "response": {
496 "$ref": "Animal"
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400497 }
498 },
499 "update": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400500 "path": "animals/{name}",
501 "id": "zoo.animals.update",
Joe Gregoriof4153422011-03-18 22:45:18 -0400502 "httpMethod": "PUT",
503 "description": "Update animals",
504 "parameters": {
505 "name": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400506 "location": "path",
Joe Gregoriof4153422011-03-18 22:45:18 -0400507 "description": "Name of the animal to update",
508 "type": "string"
509 }
510 },
511 "parameterOrder": [
512 "name"
513 ],
514 "request": {
515 "$ref": "Animal"
516 },
517 "response": {
518 "$ref": "Animal"
519 }
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400520 }
521 }
522 },
523 "load": {
524 "methods": {
525 "list": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400526 "path": "load",
527 "id": "zoo.load.list",
Joe Gregoriof4153422011-03-18 22:45:18 -0400528 "httpMethod": "GET",
529 "response": {
530 "$ref": "LoadFeed"
531 }
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400532 }
533 }
534 },
535 "loadNoTemplate": {
536 "methods": {
537 "list": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400538 "path": "loadNoTemplate",
539 "id": "zoo.loadNoTemplate.list",
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400540 "httpMethod": "GET"
541 }
542 }
Joe Gregoriof4153422011-03-18 22:45:18 -0400543 },
544 "scopedAnimals": {
545 "methods": {
546 "list": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400547 "path": "scopedanimals",
548 "id": "zoo.scopedAnimals.list",
Joe Gregoriof4153422011-03-18 22:45:18 -0400549 "httpMethod": "GET",
550 "description": "List animals (scoped)",
551 "parameters": {
552 "max-results": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400553 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400554 "description": "Maximum number of results to return",
555 "type": "integer",
556 "minimum": "0"
557 },
558 "name": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400559 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400560 "description": "Restrict result to animals with this name",
561 "type": "string"
562 },
563 "projection": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400564 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400565 "type": "string",
566 "enum": [
567 "full"
568 ],
569 "enumDescriptions": [
570 "Include absolutely everything"
571 ]
572 },
573 "start-token": {
Joe Gregorio6a63a762011-05-02 22:36:05 -0400574 "location": "query",
Joe Gregoriof4153422011-03-18 22:45:18 -0400575 "description": "Pagination token",
576 "type": "string"
577 }
578 },
579 "response": {
580 "$ref": "AnimalFeed"
581 }
582 }
583 }
Joe Gregorio2379ecc2010-10-26 10:51:28 -0400584 }
585 }
586}