| { |
| "title": "A JSON Schema for the Google API Discovery Format.", |
| "id": "http://openapis.org/v3/schema.json#", |
| "$schema": "http://json-schema.org/draft-04/schema#", |
| "type": "object", |
| "description": "This is the root document object of the Discovery Format.", |
| "required": [ |
| "kind", |
| "discoveryVersion" |
| ], |
| "additionalProperties": false, |
| "properties": { |
| "kind": { |
| "type": "string" |
| }, |
| "discoveryVersion": { |
| "type": "string" |
| }, |
| "id": { |
| "type": "string" |
| }, |
| "name": { |
| "type": "string" |
| }, |
| "version": { |
| "type": "string" |
| }, |
| "revision": { |
| "type": "string" |
| }, |
| "title": { |
| "type": "string" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "icons": { |
| "$ref": "#/definitions/icons" |
| }, |
| "documentationLink": { |
| "type": "string" |
| }, |
| "labels": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "protocol": { |
| "type": "string" |
| }, |
| "baseUrl": { |
| "type": "string" |
| }, |
| "basePath": { |
| "type": "string" |
| }, |
| "rootUrl": { |
| "type": "string" |
| }, |
| "servicePath": { |
| "type": "string" |
| }, |
| "batchPath": { |
| "type": "string" |
| }, |
| "parameters": { |
| "$ref": "#/definitions/parameters" |
| }, |
| "auth": { |
| "$ref": "#/definitions/auth" |
| }, |
| "features": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "schemas": { |
| "$ref": "#/definitions/schemas" |
| }, |
| "methods": { |
| "$ref": "#/definitions/methods" |
| }, |
| "resources": { |
| "$ref": "#/definitions/resources" |
| }, |
| "etag": { |
| "type": "string" |
| }, |
| "ownerDomain": { |
| "type": "string" |
| }, |
| "ownerName": { |
| "type": "string" |
| }, |
| "version_module": { |
| "type": "boolean" |
| }, |
| "canonicalName": { |
| "type": "string" |
| }, |
| "fullyEncodeReservedExpansion": { |
| "type": "boolean" |
| }, |
| "packagePath": { |
| "type": "string" |
| } |
| }, |
| "definitions": { |
| "icons": { |
| "type": "object", |
| "description": "Icons that represent the API.", |
| "required": [ |
| "x16", |
| "x32" |
| ], |
| "additionalProperties": false, |
| "properties": { |
| "x16": { |
| "type": "string" |
| }, |
| "x32": { |
| "type": "string" |
| } |
| } |
| }, |
| "parameters": { |
| "type": "object", |
| "additionalProperties": { |
| "$ref": "#/definitions/parameter" |
| } |
| }, |
| "parameter": { |
| "type": "object", |
| "properties": { |
| "id": { |
| "type": "string" |
| }, |
| "type": { |
| "type": "string" |
| }, |
| "$ref": { |
| "type": "string" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "default": { |
| "type": "string" |
| }, |
| "required": { |
| "type": "boolean" |
| }, |
| "format": { |
| "type": "string" |
| }, |
| "pattern": { |
| "type": "string" |
| }, |
| "minimum": { |
| "type": "string" |
| }, |
| "maximum": { |
| "type": "string" |
| }, |
| "enum": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "enumDescriptions": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "repeated": { |
| "type": "boolean" |
| }, |
| "location": { |
| "type": "string" |
| }, |
| "properties": { |
| "$ref": "#/definitions/schemas" |
| }, |
| "additionalProperties": { |
| "$ref": "#/definitions/schema" |
| }, |
| "items": { |
| "$ref": "#/definitions/schema" |
| }, |
| "annotations": { |
| "$ref": "#/definitions/annotations" |
| } |
| } |
| }, |
| "auth": { |
| "type": "object", |
| "properties": { |
| "oauth2": { |
| "type": "object", |
| "properties": { |
| "scopes": { |
| "$ref": "#/definitions/scopes" |
| } |
| } |
| } |
| } |
| }, |
| "schemas": { |
| "type": "object", |
| "additionalProperties": { |
| "$ref": "#/definitions/schema" |
| } |
| }, |
| "schema": { |
| "type": "object", |
| "properties": { |
| "id": { |
| "type": "string" |
| }, |
| "type": { |
| "type": "string" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "default": { |
| "type": "string" |
| }, |
| "required": { |
| "type": "boolean" |
| }, |
| "format": { |
| "type": "string" |
| }, |
| "pattern": { |
| "type": "string" |
| }, |
| "minimum": { |
| "type": "string" |
| }, |
| "maximum": { |
| "type": "string" |
| }, |
| "enum": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "enumDescriptions": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "repeated": { |
| "type": "boolean" |
| }, |
| "location": { |
| "type": "string" |
| }, |
| "properties": { |
| "$ref": "#/definitions/schemas" |
| }, |
| "additionalProperties": { |
| "$ref": "#/definitions/schema" |
| }, |
| "items": { |
| "$ref": "#/definitions/schema" |
| }, |
| "$ref": { |
| "type": "string" |
| }, |
| "annotations": { |
| "$ref": "#/definitions/annotations" |
| }, |
| "readOnly": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "methods": { |
| "type": "object", |
| "additionalProperties": { |
| "$ref": "#/definitions/method" |
| } |
| }, |
| "method": { |
| "type": "object", |
| "properties": { |
| "id": { |
| "type": "string" |
| }, |
| "path": { |
| "type": "string" |
| }, |
| "httpMethod": { |
| "type": "string" |
| }, |
| "description": { |
| "type": "string" |
| }, |
| "parameters": { |
| "$ref": "#/definitions/parameters" |
| }, |
| "parameterOrder": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "request": { |
| "type": "object", |
| "properties": { |
| "$ref": { |
| "type": "string" |
| }, |
| "parameterName": { |
| "type": "string" |
| } |
| } |
| }, |
| "response": { |
| "type": "object", |
| "properties": { |
| "$ref": { |
| "type": "string" |
| } |
| } |
| }, |
| "scopes": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "supportsMediaDownload": { |
| "type": "boolean" |
| }, |
| "supportsMediaUpload": { |
| "type": "boolean" |
| }, |
| "useMediaDownloadService": { |
| "type": "boolean" |
| }, |
| "mediaUpload": { |
| "$ref": "#/definitions/mediaUpload" |
| }, |
| "supportsSubscription": { |
| "type": "boolean" |
| }, |
| "flatPath": { |
| "type": "string" |
| }, |
| "etagRequired": { |
| "type": "boolean" |
| } |
| } |
| }, |
| "resources": { |
| "type": "object", |
| "additionalProperties": { |
| "$ref": "#/definitions/resource" |
| } |
| }, |
| "resource": { |
| "type": "object", |
| "properties": { |
| "methods": { |
| "$ref": "#/definitions/methods" |
| }, |
| "resources": { |
| "$ref": "#/definitions/resources" |
| } |
| } |
| }, |
| "annotations": { |
| "type": "object", |
| "properties": { |
| "required": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| } |
| } |
| }, |
| "scopes": { |
| "type": "object", |
| "additionalProperties": { |
| "$ref": "#/definitions/scope" |
| } |
| }, |
| "scope": { |
| "type": "object", |
| "properties": { |
| "description": { |
| "type": "string" |
| } |
| } |
| }, |
| "mediaUpload": { |
| "type": "object", |
| "properties": { |
| "accept": { |
| "type": "array", |
| "items": { |
| "type": "string" |
| } |
| }, |
| "maxSize": { |
| "type": "string" |
| }, |
| "protocols": { |
| "type": "object", |
| "properties": { |
| "simple": { |
| "type": "object", |
| "properties": { |
| "multipart": { |
| "type": "boolean" |
| }, |
| "path": { |
| "type": "string" |
| } |
| } |
| }, |
| "resumable": { |
| "type": "object", |
| "properties": { |
| "multipart": { |
| "type": "boolean" |
| }, |
| "path": { |
| "type": "string" |
| } |
| } |
| } |
| } |
| }, |
| "supportsSubscription": { |
| "type": "boolean" |
| } |
| } |
| } |
| } |
| } |