{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://texttospeech.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Texttospeech",
  "description": "Synthesizes natural-sounding speech by applying powerful neural network models.",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/text-to-speech/",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "texttospeech:v1beta1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://texttospeech.mtls.googleapis.com/",
  "name": "texttospeech",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "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.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "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.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "text": {
      "methods": {
        "synthesize": {
          "description": "Synthesizes speech synchronously: receive results after all text input\nhas been processed.",
          "flatPath": "v1beta1/text:synthesize",
          "httpMethod": "POST",
          "id": "texttospeech.text.synthesize",
          "parameterOrder": [],
          "parameters": {},
          "path": "v1beta1/text:synthesize",
          "request": {
            "$ref": "SynthesizeSpeechRequest"
          },
          "response": {
            "$ref": "SynthesizeSpeechResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    },
    "voices": {
      "methods": {
        "list": {
          "description": "Returns a list of Voice supported for synthesis.",
          "flatPath": "v1beta1/voices",
          "httpMethod": "GET",
          "id": "texttospeech.voices.list",
          "parameterOrder": [],
          "parameters": {
            "languageCode": {
              "description": "Optional. Recommended.\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. If\nspecified, the ListVoices call will only return voices that can be used to\nsynthesize this language_code. E.g. when specifying \"en-NZ\", you will get\nsupported \"en-*\" voices; when specifying \"no\", you will get supported\n\"no-*\" (Norwegian) and \"nb-*\" (Norwegian Bokmal) voices; specifying \"zh\"\nwill also get supported \"cmn-*\" voices; specifying \"zh-hk\" will also get\nsupported \"yue-*\" voices.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/voices",
          "response": {
            "$ref": "ListVoicesResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    }
  },
  "revision": "20200731",
  "rootUrl": "https://texttospeech.googleapis.com/",
  "schemas": {
    "AudioConfig": {
      "description": "Description of audio data to be synthesized.",
      "id": "AudioConfig",
      "properties": {
        "audioEncoding": {
          "description": "Required. The format of the audio byte stream.",
          "enum": [
            "AUDIO_ENCODING_UNSPECIFIED",
            "LINEAR16",
            "MP3",
            "OGG_OPUS",
            "MULAW"
          ],
          "enumDescriptions": [
            "Not specified. Will return result google.rpc.Code.INVALID_ARGUMENT.",
            "Uncompressed 16-bit signed little-endian samples (Linear PCM).\nAudio content returned as LINEAR16 also contains a WAV header.",
            "MP3 audio at 32kbps.",
            "Opus encoded audio wrapped in an ogg container. The result will be a\nfile which can be played natively on Android, and in browsers (at least\nChrome and Firefox). The quality of the encoding is considerably higher\nthan MP3 while using approximately the same bitrate.",
            "8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.\nAudio content returned as MULAW also contains a WAV header."
          ],
          "type": "string"
        },
        "effectsProfileId": {
          "description": "Optional. Input only. An identifier which selects 'audio effects' profiles\nthat are applied on (post synthesized) text to speech. Effects are applied\non top of each other in the order they are given. See\n[audio\nprofiles](https://cloud.google.com/text-to-speech/docs/audio-profiles) for\ncurrent supported profile ids.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "pitch": {
          "description": "Optional. Input only. Speaking pitch, in the range [-20.0, 20.0]. 20 means\nincrease 20 semitones from the original pitch. -20 means decrease 20\nsemitones from the original pitch.",
          "format": "double",
          "type": "number"
        },
        "sampleRateHertz": {
          "description": "Optional. The synthesis sample rate (in hertz) for this audio. When this is\nspecified in SynthesizeSpeechRequest, if this is different from the voice's\nnatural sample rate, then the synthesizer will honor this request by\nconverting to the desired sample rate (which might result in worse audio\nquality), unless the specified sample rate is not supported for the\nencoding chosen, in which case it will fail the request and return\ngoogle.rpc.Code.INVALID_ARGUMENT.",
          "format": "int32",
          "type": "integer"
        },
        "speakingRate": {
          "description": "Optional. Input only. Speaking rate/speed, in the range [0.25, 4.0]. 1.0 is\nthe normal native speed supported by the specific voice. 2.0 is twice as\nfast, and 0.5 is half as fast. If unset(0.0), defaults to the native 1.0\nspeed. Any other values \u003c 0.25 or \u003e 4.0 will return an error.",
          "format": "double",
          "type": "number"
        },
        "volumeGainDb": {
          "description": "Optional. Input only. Volume gain (in dB) of the normal native volume\nsupported by the specific voice, in the range [-96.0, 16.0]. If unset, or\nset to a value of 0.0 (dB), will play at normal native signal amplitude. A\nvalue of -6.0 (dB) will play at approximately half the amplitude of the\nnormal native signal amplitude. A value of +6.0 (dB) will play at\napproximately twice the amplitude of the normal native signal amplitude.\nStrongly recommend not to exceed +10 (dB) as there's usually no effective\nincrease in loudness for any value greater than that.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "ListVoicesResponse": {
      "description": "The message returned to the client by the `ListVoices` method.",
      "id": "ListVoicesResponse",
      "properties": {
        "voices": {
          "description": "The list of voices.",
          "items": {
            "$ref": "Voice"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "SynthesisInput": {
      "description": "Contains text input to be synthesized. Either `text` or `ssml` must be\nsupplied. Supplying both or neither returns\ngoogle.rpc.Code.INVALID_ARGUMENT. The input size is limited to 5000\ncharacters.",
      "id": "SynthesisInput",
      "properties": {
        "ssml": {
          "description": "The SSML document to be synthesized. The SSML document must be valid\nand well-formed. Otherwise the RPC will fail and return\ngoogle.rpc.Code.INVALID_ARGUMENT. For more information, see\n[SSML](https://cloud.google.com/text-to-speech/docs/ssml).",
          "type": "string"
        },
        "text": {
          "description": "The raw text to be synthesized.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SynthesizeSpeechRequest": {
      "description": "The top-level message sent by the client for the `SynthesizeSpeech` method.",
      "id": "SynthesizeSpeechRequest",
      "properties": {
        "audioConfig": {
          "$ref": "AudioConfig",
          "description": "Required. The configuration of the synthesized audio."
        },
        "enableTimePointing": {
          "description": "Whether and what timepoints are returned in the response.",
          "enumDescriptions": [
            "Not specified. No timepoint information will be returned.",
            "Timepoint information of \u003cmark\u003e tags in SSML input will be returned."
          ],
          "items": {
            "enum": [
              "TIMEPOINT_TYPE_UNSPECIFIED",
              "SSML_MARK"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "input": {
          "$ref": "SynthesisInput",
          "description": "Required. The Synthesizer requires either plain text or SSML as input."
        },
        "voice": {
          "$ref": "VoiceSelectionParams",
          "description": "Required. The desired voice of the synthesized audio."
        }
      },
      "type": "object"
    },
    "SynthesizeSpeechResponse": {
      "description": "The message returned to the client by the `SynthesizeSpeech` method.",
      "id": "SynthesizeSpeechResponse",
      "properties": {
        "audioConfig": {
          "$ref": "AudioConfig",
          "description": "The audio metadata of `audio_content`."
        },
        "audioContent": {
          "description": "The audio data bytes encoded as specified in the request, including the\nheader for encodings that are wrapped in containers (e.g. MP3, OGG_OPUS).\nFor LINEAR16 audio, we include the WAV header. Note: as\nwith all bytes fields, protobuffers use a pure binary representation,\nwhereas JSON representations use base64.",
          "format": "byte",
          "type": "string"
        },
        "timepoints": {
          "description": "A link between a position in the original request input and a corresponding\ntime in the output audio. It's only supported via \u003cmark\u003e of SSML input.",
          "items": {
            "$ref": "Timepoint"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "Timepoint": {
      "description": "This contains a mapping between a certain point in the input text and a\ncorresponding time in the output audio.",
      "id": "Timepoint",
      "properties": {
        "markName": {
          "description": "Timepoint name as received from the client within \u003cmark\u003e tag.",
          "type": "string"
        },
        "timeSeconds": {
          "description": "Time offset in seconds from the start of the synthesized audio.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "Voice": {
      "description": "Description of a voice supported by the TTS service.",
      "id": "Voice",
      "properties": {
        "languageCodes": {
          "description": "The languages that this voice supports, expressed as\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tags (e.g.\n\"en-US\", \"es-419\", \"cmn-tw\").",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "name": {
          "description": "The name of this voice.  Each distinct voice has a unique name.",
          "type": "string"
        },
        "naturalSampleRateHertz": {
          "description": "The natural sample rate (in hertz) for this voice.",
          "format": "int32",
          "type": "integer"
        },
        "ssmlGender": {
          "description": "The gender of this voice.",
          "enum": [
            "SSML_VOICE_GENDER_UNSPECIFIED",
            "MALE",
            "FEMALE",
            "NEUTRAL"
          ],
          "enumDescriptions": [
            "An unspecified gender.\nIn VoiceSelectionParams, this means that the client doesn't care which\ngender the selected voice will have. In the Voice field of\nListVoicesResponse, this may mean that the voice doesn't fit any of the\nother categories in this enum, or that the gender of the voice isn't known.",
            "A male voice.",
            "A female voice.",
            "A gender-neutral voice. This voice is not yet supported."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "VoiceSelectionParams": {
      "description": "Description of which voice to use for a synthesis request.",
      "id": "VoiceSelectionParams",
      "properties": {
        "languageCode": {
          "description": "Required. The language (and potentially also the region) of the voice expressed as a\n[BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag, e.g.\n\"en-US\". This should not include a script tag (e.g. use\n\"cmn-cn\" rather than \"cmn-Hant-cn\"), because the script will be inferred\nfrom the input provided in the SynthesisInput.  The TTS service\nwill use this parameter to help choose an appropriate voice.  Note that\nthe TTS service may choose a voice with a slightly different language code\nthan the one selected; it may substitute a different region\n(e.g. using en-US rather than en-CA if there isn't a Canadian voice\navailable), or even a different language, e.g. using \"nb\" (Norwegian\nBokmal) instead of \"no\" (Norwegian)\".",
          "type": "string"
        },
        "name": {
          "description": "The name of the voice. If not set, the service will choose a\nvoice based on the other parameters such as language_code and gender.",
          "type": "string"
        },
        "ssmlGender": {
          "description": "The preferred gender of the voice. If not set, the service will\nchoose a voice based on the other parameters such as language_code and\nname. Note that this is only a preference, not requirement; if a\nvoice of the appropriate gender is not available, the synthesizer should\nsubstitute a voice with a different gender rather than failing the request.",
          "enum": [
            "SSML_VOICE_GENDER_UNSPECIFIED",
            "MALE",
            "FEMALE",
            "NEUTRAL"
          ],
          "enumDescriptions": [
            "An unspecified gender.\nIn VoiceSelectionParams, this means that the client doesn't care which\ngender the selected voice will have. In the Voice field of\nListVoicesResponse, this may mean that the voice doesn't fit any of the\nother categories in this enum, or that the gender of the voice isn't known.",
            "A male voice.",
            "A female voice.",
            "A gender-neutral voice. This voice is not yet supported."
          ],
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Cloud Text-to-Speech API",
  "version": "v1beta1",
  "version_module": true
}