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}