• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "basePath": "/discovery/v1/",
3  "baseUrl": "https://www.googleapis.com/discovery/v1/",
4  "batchPath": "batch/discovery/v1",
5  "description": "Provides information about other Google APIs, such as what APIs are available, the resource, and method details for each API.",
6  "discoveryVersion": "v1",
7  "documentationLink": "https://developers.google.com/discovery/",
8  "etag": "\"-2NioU2H8y8siEzrBOV_qzRI6kQ/vabF8Q1ADCm_Bt9EBq9rkrRawQA\"",
9  "icons": {
10    "x16": "http://www.google.com/images/icons/feature/filing_cabinet_search-g16.png",
11    "x32": "http://www.google.com/images/icons/feature/filing_cabinet_search-g32.png"
12  },
13  "id": "discovery:v1",
14  "kind": "discovery#restDescription",
15  "name": "discovery",
16  "ownerDomain": "google.com",
17  "ownerName": "Google",
18  "parameters": {
19    "alt": {
20      "default": "json",
21      "description": "Data format for the response.",
22      "enum": [
23        "json"
24      ],
25      "enumDescriptions": [
26        "Responses with Content-Type of application/json"
27      ],
28      "location": "query",
29      "type": "string"
30    },
31    "fields": {
32      "description": "Selector specifying which fields to include in a partial response.",
33      "location": "query",
34      "type": "string"
35    },
36    "key": {
37      "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.",
38      "location": "query",
39      "type": "string"
40    },
41    "oauth_token": {
42      "description": "OAuth 2.0 token for the current user.",
43      "location": "query",
44      "type": "string"
45    },
46    "prettyPrint": {
47      "default": "true",
48      "description": "Returns response with indentations and line breaks.",
49      "location": "query",
50      "type": "boolean"
51    },
52    "quotaUser": {
53      "description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.",
54      "location": "query",
55      "type": "string"
56    },
57    "userIp": {
58      "description": "Deprecated. Please use quotaUser instead.",
59      "location": "query",
60      "type": "string"
61    }
62  },
63  "protocol": "rest",
64  "resources": {
65    "apis": {
66      "methods": {
67        "getRest": {
68          "description": "Retrieve the description of a particular version of an api.",
69          "httpMethod": "GET",
70          "id": "discovery.apis.getRest",
71          "parameterOrder": [
72            "api",
73            "version"
74          ],
75          "parameters": {
76            "api": {
77              "description": "The name of the API.",
78              "location": "path",
79              "required": true,
80              "type": "string"
81            },
82            "version": {
83              "description": "The version of the API.",
84              "location": "path",
85              "required": true,
86              "type": "string"
87            }
88          },
89          "path": "apis/{api}/{version}/rest",
90          "response": {
91            "$ref": "RestDescription"
92          }
93        },
94        "list": {
95          "description": "Retrieve the list of APIs supported at this endpoint.",
96          "httpMethod": "GET",
97          "id": "discovery.apis.list",
98          "parameters": {
99            "name": {
100              "description": "Only include APIs with the given name.",
101              "location": "query",
102              "type": "string"
103            },
104            "preferred": {
105              "default": "false",
106              "description": "Return only the preferred version of an API.",
107              "location": "query",
108              "type": "boolean"
109            }
110          },
111          "path": "apis",
112          "response": {
113            "$ref": "DirectoryList"
114          }
115        }
116      }
117    }
118  },
119  "revision": "20200806",
120  "rootUrl": "https://www.googleapis.com/",
121  "schemas": {
122    "DirectoryList": {
123      "id": "DirectoryList",
124      "properties": {
125        "discoveryVersion": {
126          "default": "v1",
127          "description": "Indicate the version of the Discovery API used to generate this doc.",
128          "type": "string"
129        },
130        "items": {
131          "description": "The individual directory entries. One entry per api/version pair.",
132          "items": {
133            "properties": {
134              "description": {
135                "description": "The description of this API.",
136                "type": "string"
137              },
138              "discoveryLink": {
139                "description": "A link to the discovery document.",
140                "type": "string"
141              },
142              "discoveryRestUrl": {
143                "description": "The URL for the discovery REST document.",
144                "type": "string"
145              },
146              "documentationLink": {
147                "description": "A link to human readable documentation for the API.",
148                "type": "string"
149              },
150              "icons": {
151                "description": "Links to 16x16 and 32x32 icons representing the API.",
152                "properties": {
153                  "x16": {
154                    "description": "The URL of the 16x16 icon.",
155                    "type": "string"
156                  },
157                  "x32": {
158                    "description": "The URL of the 32x32 icon.",
159                    "type": "string"
160                  }
161                },
162                "type": "object"
163              },
164              "id": {
165                "description": "The id of this API.",
166                "type": "string"
167              },
168              "kind": {
169                "default": "discovery#directoryItem",
170                "description": "The kind for this response.",
171                "type": "string"
172              },
173              "labels": {
174                "description": "Labels for the status of this API, such as labs or deprecated.",
175                "items": {
176                  "type": "string"
177                },
178                "type": "array"
179              },
180              "name": {
181                "description": "The name of the API.",
182                "type": "string"
183              },
184              "preferred": {
185                "description": "True if this version is the preferred version to use.",
186                "type": "boolean"
187              },
188              "title": {
189                "description": "The title of this API.",
190                "type": "string"
191              },
192              "version": {
193                "description": "The version of the API.",
194                "type": "string"
195              }
196            },
197            "type": "object"
198          },
199          "type": "array"
200        },
201        "kind": {
202          "default": "discovery#directoryList",
203          "description": "The kind for this response.",
204          "type": "string"
205        }
206      },
207      "type": "object"
208    },
209    "JsonSchema": {
210      "id": "JsonSchema",
211      "properties": {
212        "$ref": {
213          "description": "A reference to another schema. The value of this property is the \"id\" of another schema.",
214          "type": "string"
215        },
216        "additionalProperties": {
217          "$ref": "JsonSchema",
218          "description": "If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object."
219        },
220        "annotations": {
221          "description": "Additional information about this property.",
222          "properties": {
223            "required": {
224              "description": "A list of methods for which this property is required on requests.",
225              "items": {
226                "type": "string"
227              },
228              "type": "array"
229            }
230          },
231          "type": "object"
232        },
233        "default": {
234          "description": "The default value of this property (if one exists).",
235          "type": "string"
236        },
237        "description": {
238          "description": "A description of this object.",
239          "type": "string"
240        },
241        "enum": {
242          "description": "Values this parameter may take (if it is an enum).",
243          "items": {
244            "type": "string"
245          },
246          "type": "array"
247        },
248        "enumDescriptions": {
249          "description": "The descriptions for the enums. Each position maps to the corresponding value in the \"enum\" array.",
250          "items": {
251            "type": "string"
252          },
253          "type": "array"
254        },
255        "format": {
256          "description": "An additional regular expression or key that helps constrain the value. For more details see: http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.23",
257          "type": "string"
258        },
259        "id": {
260          "description": "Unique identifier for this schema.",
261          "type": "string"
262        },
263        "items": {
264          "$ref": "JsonSchema",
265          "description": "If this is a schema for an array, this property is the schema for each element in the array."
266        },
267        "location": {
268          "description": "Whether this parameter goes in the query or the path for REST requests.",
269          "type": "string"
270        },
271        "maximum": {
272          "description": "The maximum value of this parameter.",
273          "type": "string"
274        },
275        "minimum": {
276          "description": "The minimum value of this parameter.",
277          "type": "string"
278        },
279        "pattern": {
280          "description": "The regular expression this parameter must conform to. Uses Java 6 regex format: http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html",
281          "type": "string"
282        },
283        "properties": {
284          "additionalProperties": {
285            "$ref": "JsonSchema",
286            "description": "A single property of this object. The value is itself a JSON Schema object describing this property."
287          },
288          "description": "If this is a schema for an object, list the schema for each property of this object.",
289          "type": "object"
290        },
291        "readOnly": {
292          "description": "The value is read-only, generated by the service. The value cannot be modified by the client. If the value is included in a POST, PUT, or PATCH request, it is ignored by the service.",
293          "type": "boolean"
294        },
295        "repeated": {
296          "description": "Whether this parameter may appear multiple times.",
297          "type": "boolean"
298        },
299        "required": {
300          "description": "Whether the parameter is required.",
301          "type": "boolean"
302        },
303        "type": {
304          "description": "The value type for this schema. A list of values can be found here: http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.1",
305          "type": "string"
306        },
307        "variant": {
308          "description": "In a variant data type, the value of one property is used to determine how to interpret the entire entity. Its value must exist in a map of descriminant values to schema names.",
309          "properties": {
310            "discriminant": {
311              "description": "The name of the type discriminant property.",
312              "type": "string"
313            },
314            "map": {
315              "description": "The map of discriminant value to schema to use for parsing..",
316              "items": {
317                "properties": {
318                  "$ref": {
319                    "type": "string"
320                  },
321                  "type_value": {
322                    "type": "string"
323                  }
324                },
325                "type": "object"
326              },
327              "type": "array"
328            }
329          },
330          "type": "object"
331        }
332      },
333      "type": "object"
334    },
335    "RestDescription": {
336      "id": "RestDescription",
337      "properties": {
338        "auth": {
339          "description": "Authentication information.",
340          "properties": {
341            "oauth2": {
342              "description": "OAuth 2.0 authentication information.",
343              "properties": {
344                "scopes": {
345                  "additionalProperties": {
346                    "description": "The scope value.",
347                    "properties": {
348                      "description": {
349                        "description": "Description of scope.",
350                        "type": "string"
351                      }
352                    },
353                    "type": "object"
354                  },
355                  "description": "Available OAuth 2.0 scopes.",
356                  "type": "object"
357                }
358              },
359              "type": "object"
360            }
361          },
362          "type": "object"
363        },
364        "basePath": {
365          "description": "[DEPRECATED] The base path for REST requests.",
366          "type": "string"
367        },
368        "baseUrl": {
369          "description": "[DEPRECATED] The base URL for REST requests.",
370          "type": "string"
371        },
372        "batchPath": {
373          "description": "The path for REST batch requests.",
374          "type": "string"
375        },
376        "canonicalName": {
377          "description": "Indicates how the API name should be capitalized and split into various parts. Useful for generating pretty class names.",
378          "type": "string"
379        },
380        "description": {
381          "description": "The description of this API.",
382          "type": "string"
383        },
384        "discoveryVersion": {
385          "default": "v1",
386          "description": "Indicate the version of the Discovery API used to generate this doc.",
387          "type": "string"
388        },
389        "documentationLink": {
390          "description": "A link to human readable documentation for the API.",
391          "type": "string"
392        },
393        "etag": {
394          "description": "The ETag for this response.",
395          "readOnly": true,
396          "type": "string"
397        },
398        "exponentialBackoffDefault": {
399          "description": "Enable exponential backoff for suitable methods in the generated clients.",
400          "type": "boolean"
401        },
402        "features": {
403          "description": "A list of supported features for this API.",
404          "items": {
405            "type": "string"
406          },
407          "type": "array"
408        },
409        "icons": {
410          "description": "Links to 16x16 and 32x32 icons representing the API.",
411          "properties": {
412            "x16": {
413              "description": "The URL of the 16x16 icon.",
414              "type": "string"
415            },
416            "x32": {
417              "description": "The URL of the 32x32 icon.",
418              "type": "string"
419            }
420          },
421          "type": "object"
422        },
423        "id": {
424          "description": "The ID of this API.",
425          "type": "string"
426        },
427        "kind": {
428          "default": "discovery#restDescription",
429          "description": "The kind for this response.",
430          "type": "string"
431        },
432        "labels": {
433          "description": "Labels for the status of this API, such as labs or deprecated.",
434          "items": {
435            "type": "string"
436          },
437          "type": "array"
438        },
439        "methods": {
440          "additionalProperties": {
441            "$ref": "RestMethod",
442            "description": "An individual method description."
443          },
444          "description": "API-level methods for this API.",
445          "type": "object"
446        },
447        "name": {
448          "description": "The name of this API.",
449          "type": "string"
450        },
451        "ownerDomain": {
452          "description": "The domain of the owner of this API. Together with the ownerName and a packagePath values, this can be used to generate a library for this API which would have a unique fully qualified name.",
453          "type": "string"
454        },
455        "ownerName": {
456          "description": "The name of the owner of this API. See ownerDomain.",
457          "type": "string"
458        },
459        "packagePath": {
460          "description": "The package of the owner of this API. See ownerDomain.",
461          "type": "string"
462        },
463        "parameters": {
464          "additionalProperties": {
465            "$ref": "JsonSchema",
466            "description": "Description of a single parameter."
467          },
468          "description": "Common parameters that apply across all apis.",
469          "type": "object"
470        },
471        "protocol": {
472          "default": "rest",
473          "description": "The protocol described by this document.",
474          "type": "string"
475        },
476        "resources": {
477          "additionalProperties": {
478            "$ref": "RestResource",
479            "description": "An individual resource description. Contains methods and sub-resources related to this resource."
480          },
481          "description": "The resources in this API.",
482          "type": "object"
483        },
484        "revision": {
485          "description": "The version of this API.",
486          "type": "string"
487        },
488        "rootUrl": {
489          "description": "The root URL under which all API services live.",
490          "type": "string"
491        },
492        "schemas": {
493          "additionalProperties": {
494            "$ref": "JsonSchema",
495            "description": "An individual schema description."
496          },
497          "description": "The schemas for this API.",
498          "type": "object"
499        },
500        "servicePath": {
501          "description": "The base path for all REST requests.",
502          "type": "string"
503        },
504        "title": {
505          "description": "The title of this API.",
506          "type": "string"
507        },
508        "version": {
509          "description": "The version of this API.",
510          "type": "string"
511        },
512        "version_module": {
513          "type": "boolean"
514        }
515      },
516      "type": "object"
517    },
518    "RestMethod": {
519      "id": "RestMethod",
520      "properties": {
521        "description": {
522          "description": "Description of this method.",
523          "type": "string"
524        },
525        "etagRequired": {
526          "description": "Whether this method requires an ETag to be specified. The ETag is sent as an HTTP If-Match or If-None-Match header.",
527          "type": "boolean"
528        },
529        "flatPath": {
530          "description": "The URI path of this REST method in (RFC 6570) format without level 2 features ({+var}). Supplementary to the path property.",
531          "type": "string"
532        },
533        "httpMethod": {
534          "description": "HTTP method used by this method.",
535          "type": "string"
536        },
537        "id": {
538          "description": "A unique ID for this method. This property can be used to match methods between different versions of Discovery.",
539          "type": "string"
540        },
541        "mediaUpload": {
542          "description": "Media upload parameters.",
543          "properties": {
544            "accept": {
545              "description": "MIME Media Ranges for acceptable media uploads to this method.",
546              "items": {
547                "type": "string"
548              },
549              "type": "array"
550            },
551            "maxSize": {
552              "description": "Maximum size of a media upload, such as \"1MB\", \"2GB\" or \"3TB\".",
553              "type": "string"
554            },
555            "protocols": {
556              "description": "Supported upload protocols.",
557              "properties": {
558                "resumable": {
559                  "description": "Supports the Resumable Media Upload protocol.",
560                  "properties": {
561                    "multipart": {
562                      "default": "true",
563                      "description": "True if this endpoint supports uploading multipart media.",
564                      "type": "boolean"
565                    },
566                    "path": {
567                      "description": "The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level.",
568                      "type": "string"
569                    }
570                  },
571                  "type": "object"
572                },
573                "simple": {
574                  "description": "Supports uploading as a single HTTP request.",
575                  "properties": {
576                    "multipart": {
577                      "default": "true",
578                      "description": "True if this endpoint supports upload multipart media.",
579                      "type": "boolean"
580                    },
581                    "path": {
582                      "description": "The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level.",
583                      "type": "string"
584                    }
585                  },
586                  "type": "object"
587                }
588              },
589              "type": "object"
590            }
591          },
592          "type": "object"
593        },
594        "parameterOrder": {
595          "description": "Ordered list of required parameters, serves as a hint to clients on how to structure their method signatures. The array is ordered such that the \"most-significant\" parameter appears first.",
596          "items": {
597            "type": "string"
598          },
599          "type": "array"
600        },
601        "parameters": {
602          "additionalProperties": {
603            "$ref": "JsonSchema",
604            "description": "Details for a single parameter in this method."
605          },
606          "description": "Details for all parameters in this method.",
607          "type": "object"
608        },
609        "path": {
610          "description": "The URI path of this REST method. Should be used in conjunction with the basePath property at the api-level.",
611          "type": "string"
612        },
613        "request": {
614          "description": "The schema for the request.",
615          "properties": {
616            "$ref": {
617              "description": "Schema ID for the request schema.",
618              "type": "string"
619            },
620            "parameterName": {
621              "description": "parameter name.",
622              "type": "string"
623            }
624          },
625          "type": "object"
626        },
627        "response": {
628          "description": "The schema for the response.",
629          "properties": {
630            "$ref": {
631              "description": "Schema ID for the response schema.",
632              "type": "string"
633            }
634          },
635          "type": "object"
636        },
637        "scopes": {
638          "description": "OAuth 2.0 scopes applicable to this method.",
639          "items": {
640            "type": "string"
641          },
642          "type": "array"
643        },
644        "supportsMediaDownload": {
645          "description": "Whether this method supports media downloads.",
646          "type": "boolean"
647        },
648        "supportsMediaUpload": {
649          "description": "Whether this method supports media uploads.",
650          "type": "boolean"
651        },
652        "supportsSubscription": {
653          "description": "Whether this method supports subscriptions.",
654          "type": "boolean"
655        },
656        "useMediaDownloadService": {
657          "description": "Indicates that downloads from this method should use the download service URL (i.e. \"/download\"). Only applies if the method supports media download.",
658          "type": "boolean"
659        }
660      },
661      "type": "object"
662    },
663    "RestResource": {
664      "id": "RestResource",
665      "properties": {
666        "methods": {
667          "additionalProperties": {
668            "$ref": "RestMethod",
669            "description": "Description for any methods on this resource."
670          },
671          "description": "Methods on this resource.",
672          "type": "object"
673        },
674        "resources": {
675          "additionalProperties": {
676            "$ref": "RestResource",
677            "description": "Description for any sub-resources on this resource."
678          },
679          "description": "Sub-resources on this resource.",
680          "type": "object"
681        }
682      },
683      "type": "object"
684    }
685  },
686  "servicePath": "discovery/v1/",
687  "title": "API Discovery Service",
688  "version": "v1"
689}