6
votes

I'm getting this error when I make my request to the Google Cloud Speech API: "error": { "code": 400, "message": "Request contains an invalid argument.", "status": "INVALID_ARGUMENT

My curl command looks like this: curl -s -k -H "Content-Type: application/json" -H "Authorization: Bearer xxxxxxx" \https://speech.googleapis.com/v1beta1/speech:syncrecognize -d @sync-request.json

and my config file like this:

      {
  'config': {
      'encoding':'FLAC',
      'sampleRate': 16000,
      'languageCode': 'de-DE'
  },
  'audio': {
      'uri':'https://storage.googleapis.com/project_name/xxxx_Ger16.flac'
  }
}

What is missing or invalid in the request? Thanks.

1
I finally solved this: it was the uri. It needed to be gs://project_name etc. - topplethepat

1 Answers

7
votes

The error message received suggests a property you've provided in your JSON request body is not valid. As you've confirmed in your comment, the audio.uri value for Cloud Storage resources should match the pattern gs://bucket_name/object_name.

The audio object in the request body of type RecognitionAudio. The documentation for this confirms your findings.