Retrieve the description of a particular version of an api.
list(name=None, preferred=None)
Retrieve the list of APIs supported at this endpoint.
getRest(api, version)
Retrieve the description of a particular version of an api. Args: api: string, The name of the API. (required) version: string, The version of the API. (required) Returns: An object of the form: { "protocol": "rest", # The protocol described by this document. "methods": { # API-level methods for this API. "a_key": { # An individual method description. "scopes": [ # OAuth 2.0 scopes applicable to this method. "A String", ], "description": "A String", # Description of this method. "parameters": { # Details for all parameters in this method. "a_key": { # Details for a single parameter in this method. "properties": { # If this is a schema for an object, list the schema for each property of this object. "a_key": # Object with schema name: JsonSchema # A single property of this object. The value is itself a JSON Schema object describing this property. }, "required": True or False, # Whether the parameter is required. "type": "A String", # 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 "description": "A String", # A description of this object. "format": "A String", # 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 "default": "A String", # The default value of this property (if one exists). "items": # Object with schema name: JsonSchema # If this is a schema for an array, this property is the schema for each element in the array. "enum": [ # Values this parameter may take (if it is an enum). "A String", ], "variant": { # 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. "map": [ # The map of discriminant value to schema to use for parsing.. { "type_value": "A String", "$ref": "A String", }, ], "discriminant": "A String", # The name of the type discriminant property. }, "maximum": "A String", # The maximum value of this parameter. "id": "A String", # Unique identifier for this schema. "enumDescriptions": [ # The descriptions for the enums. Each position maps to the corresponding value in the "enum" array. "A String", ], "minimum": "A String", # The minimum value of this parameter. "readOnly": True or False, # 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. "location": "A String", # Whether this parameter goes in the query or the path for REST requests. "pattern": "A String", # 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 "additionalProperties": # Object with schema name: JsonSchema # If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object. "repeated": True or False, # Whether this parameter may appear multiple times. "annotations": { # Additional information about this property. "required": [ # A list of methods for which this property is required on requests. "A String", ], }, "$ref": "A String", # A reference to another schema. The value of this property is the "id" of another schema. }, }, "supportsMediaUpload": True or False, # Whether this method supports media uploads. "etagRequired": True or False, # Whether this method requires an ETag to be specified. The ETag is sent as an HTTP If-Match or If-None-Match header. "mediaUpload": { # Media upload parameters. "maxSize": "A String", # Maximum size of a media upload, such as "1MB", "2GB" or "3TB". "protocols": { # Supported upload protocols. "simple": { # Supports uploading as a single HTTP request. "path": "A String", # The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level. "multipart": true, # True if this endpoint supports upload multipart media. }, "resumable": { # Supports the Resumable Media Upload protocol. "path": "A String", # The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level. "multipart": true, # True if this endpoint supports uploading multipart media. }, }, "accept": [ # MIME Media Ranges for acceptable media uploads to this method. "A String", ], }, "request": { # The schema for the request. "parameterName": "A String", # parameter name. "$ref": "A String", # Schema ID for the request schema. }, "response": { # The schema for the response. "$ref": "A String", # Schema ID for the response schema. }, "httpMethod": "A String", # HTTP method used by this method. "supportsSubscription": True or False, # Whether this method supports subscriptions. "parameterOrder": [ # 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. "A String", ], "path": "A String", # The URI path of this REST method. Should be used in conjunction with the basePath property at the api-level. "useMediaDownloadService": True or False, # Indicates that downloads from this method should use the download service URL (i.e. "/download"). Only applies if the method supports media download. "id": "A String", # A unique ID for this method. This property can be used to match methods between different versions of Discovery. "supportsMediaDownload": True or False, # Whether this method supports media downloads. }, }, "labels": [ # Labels for the status of this API, such as labs or deprecated. "A String", ], "ownerName": "A String", # The name of the owner of this API. See ownerDomain. "batchPath": "A String", # The path for REST batch requests. "id": "A String", # The ID of this API. "features": [ # A list of supported features for this API. "A String", ], "ownerDomain": "A String", # 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. "rootUrl": "A String", # The root URL under which all API services live. "parameters": { # Common parameters that apply across all apis. "a_key": { # Description of a single parameter. "properties": { # If this is a schema for an object, list the schema for each property of this object. "a_key": # Object with schema name: JsonSchema # A single property of this object. The value is itself a JSON Schema object describing this property. }, "required": True or False, # Whether the parameter is required. "type": "A String", # 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 "description": "A String", # A description of this object. "format": "A String", # 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 "default": "A String", # The default value of this property (if one exists). "items": # Object with schema name: JsonSchema # If this is a schema for an array, this property is the schema for each element in the array. "enum": [ # Values this parameter may take (if it is an enum). "A String", ], "variant": { # 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. "map": [ # The map of discriminant value to schema to use for parsing.. { "type_value": "A String", "$ref": "A String", }, ], "discriminant": "A String", # The name of the type discriminant property. }, "maximum": "A String", # The maximum value of this parameter. "id": "A String", # Unique identifier for this schema. "enumDescriptions": [ # The descriptions for the enums. Each position maps to the corresponding value in the "enum" array. "A String", ], "minimum": "A String", # The minimum value of this parameter. "readOnly": True or False, # 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. "location": "A String", # Whether this parameter goes in the query or the path for REST requests. "pattern": "A String", # 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 "additionalProperties": # Object with schema name: JsonSchema # If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object. "repeated": True or False, # Whether this parameter may appear multiple times. "annotations": { # Additional information about this property. "required": [ # A list of methods for which this property is required on requests. "A String", ], }, "$ref": "A String", # A reference to another schema. The value of this property is the "id" of another schema. }, }, "icons": { # Links to 16x16 and 32x32 icons representing the API. "x32": "A String", # The URL of the 32x32 icon. "x16": "A String", # The URL of the 16x16 icon. }, "baseUrl": "A String", # [DEPRECATED] The base URL for REST requests. "etag": "A String", # The ETag for this response. "version": "A String", # The version of this API. "servicePath": "A String", # The base path for all REST requests. "schemas": { # The schemas for this API. "a_key": { # An individual schema description. "properties": { # If this is a schema for an object, list the schema for each property of this object. "a_key": # Object with schema name: JsonSchema # A single property of this object. The value is itself a JSON Schema object describing this property. }, "required": True or False, # Whether the parameter is required. "type": "A String", # 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 "description": "A String", # A description of this object. "format": "A String", # 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 "default": "A String", # The default value of this property (if one exists). "items": # Object with schema name: JsonSchema # If this is a schema for an array, this property is the schema for each element in the array. "enum": [ # Values this parameter may take (if it is an enum). "A String", ], "variant": { # 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. "map": [ # The map of discriminant value to schema to use for parsing.. { "type_value": "A String", "$ref": "A String", }, ], "discriminant": "A String", # The name of the type discriminant property. }, "maximum": "A String", # The maximum value of this parameter. "id": "A String", # Unique identifier for this schema. "enumDescriptions": [ # The descriptions for the enums. Each position maps to the corresponding value in the "enum" array. "A String", ], "minimum": "A String", # The minimum value of this parameter. "readOnly": True or False, # 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. "location": "A String", # Whether this parameter goes in the query or the path for REST requests. "pattern": "A String", # 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 "additionalProperties": # Object with schema name: JsonSchema # If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object. "repeated": True or False, # Whether this parameter may appear multiple times. "annotations": { # Additional information about this property. "required": [ # A list of methods for which this property is required on requests. "A String", ], }, "$ref": "A String", # A reference to another schema. The value of this property is the "id" of another schema. }, }, "resources": { # The resources in this API. "a_key": { # An individual resource description. Contains methods and sub-resources related to this resource. "methods": { # Methods on this resource. "a_key": { # Description for any methods on this resource. "scopes": [ # OAuth 2.0 scopes applicable to this method. "A String", ], "description": "A String", # Description of this method. "parameters": { # Details for all parameters in this method. "a_key": { # Details for a single parameter in this method. "properties": { # If this is a schema for an object, list the schema for each property of this object. "a_key": # Object with schema name: JsonSchema # A single property of this object. The value is itself a JSON Schema object describing this property. }, "required": True or False, # Whether the parameter is required. "type": "A String", # 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 "description": "A String", # A description of this object. "format": "A String", # 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 "default": "A String", # The default value of this property (if one exists). "items": # Object with schema name: JsonSchema # If this is a schema for an array, this property is the schema for each element in the array. "enum": [ # Values this parameter may take (if it is an enum). "A String", ], "variant": { # 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. "map": [ # The map of discriminant value to schema to use for parsing.. { "type_value": "A String", "$ref": "A String", }, ], "discriminant": "A String", # The name of the type discriminant property. }, "maximum": "A String", # The maximum value of this parameter. "id": "A String", # Unique identifier for this schema. "enumDescriptions": [ # The descriptions for the enums. Each position maps to the corresponding value in the "enum" array. "A String", ], "minimum": "A String", # The minimum value of this parameter. "readOnly": True or False, # 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. "location": "A String", # Whether this parameter goes in the query or the path for REST requests. "pattern": "A String", # 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 "additionalProperties": # Object with schema name: JsonSchema # If this is a schema for an object, this property is the schema for any additional properties with dynamic keys on this object. "repeated": True or False, # Whether this parameter may appear multiple times. "annotations": { # Additional information about this property. "required": [ # A list of methods for which this property is required on requests. "A String", ], }, "$ref": "A String", # A reference to another schema. The value of this property is the "id" of another schema. }, }, "supportsMediaUpload": True or False, # Whether this method supports media uploads. "etagRequired": True or False, # Whether this method requires an ETag to be specified. The ETag is sent as an HTTP If-Match or If-None-Match header. "mediaUpload": { # Media upload parameters. "maxSize": "A String", # Maximum size of a media upload, such as "1MB", "2GB" or "3TB". "protocols": { # Supported upload protocols. "simple": { # Supports uploading as a single HTTP request. "path": "A String", # The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level. "multipart": true, # True if this endpoint supports upload multipart media. }, "resumable": { # Supports the Resumable Media Upload protocol. "path": "A String", # The URI path to be used for upload. Should be used in conjunction with the basePath property at the api-level. "multipart": true, # True if this endpoint supports uploading multipart media. }, }, "accept": [ # MIME Media Ranges for acceptable media uploads to this method. "A String", ], }, "request": { # The schema for the request. "parameterName": "A String", # parameter name. "$ref": "A String", # Schema ID for the request schema. }, "response": { # The schema for the response. "$ref": "A String", # Schema ID for the response schema. }, "httpMethod": "A String", # HTTP method used by this method. "supportsSubscription": True or False, # Whether this method supports subscriptions. "parameterOrder": [ # 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. "A String", ], "path": "A String", # The URI path of this REST method. Should be used in conjunction with the basePath property at the api-level. "useMediaDownloadService": True or False, # Indicates that downloads from this method should use the download service URL (i.e. "/download"). Only applies if the method supports media download. "id": "A String", # A unique ID for this method. This property can be used to match methods between different versions of Discovery. "supportsMediaDownload": True or False, # Whether this method supports media downloads. }, }, "resources": { # Sub-resources on this resource. "a_key": # Object with schema name: RestResource # Description for any sub-resources on this resource. }, }, }, "revision": "A String", # The version of this API. "description": "A String", # The description of this API. "canonicalName": "A String", # Indicates how the API name should be capitalized and split into various parts. Useful for generating pretty class names. "auth": { # Authentication information. "oauth2": { # OAuth 2.0 authentication information. "scopes": { # Available OAuth 2.0 scopes. "a_key": { # The scope value. "description": "A String", # Description of scope. }, }, }, }, "packagePath": "A String", # The package of the owner of this API. See ownerDomain. "kind": "discovery#restDescription", # The kind for this response. "name": "A String", # The name of this API. "basePath": "A String", # [DEPRECATED] The base path for REST requests. "title": "A String", # The title of this API. "exponentialBackoffDefault": True or False, # Enable exponential backoff for suitable methods in the generated clients. "discoveryVersion": "v1", # Indicate the version of the Discovery API used to generate this doc. "version_module": True or False, "documentationLink": "A String", # A link to human readable documentation for the API. }
list(name=None, preferred=None)
Retrieve the list of APIs supported at this endpoint. Args: name: string, Only include APIs with the given name. preferred: boolean, Return only the preferred version of an API. Returns: An object of the form: { "items": [ # The individual directory entries. One entry per api/version pair. { "kind": "discovery#directoryItem", # The kind for this response. "labels": [ # Labels for the status of this API, such as labs or deprecated. "A String", ], "description": "A String", # The description of this API. "icons": { # Links to 16x16 and 32x32 icons representing the API. "x32": "A String", # The URL of the 32x32 icon. "x16": "A String", # The URL of the 16x16 icon. }, "discoveryRestUrl": "A String", # The URL for the discovery REST document. "preferred": True or False, # True if this version is the preferred version to use. "name": "A String", # The name of the API. "discoveryLink": "A String", # A link to the discovery document. "version": "A String", # The version of the API. "title": "A String", # The title of this API. "id": "A String", # The id of this API. "documentationLink": "A String", # A link to human readable documentation for the API. }, ], "discoveryVersion": "v1", # Indicate the version of the Discovery API used to generate this doc. "kind": "discovery#directoryList", # The kind for this response. }