Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to authenticate Google Cloud Speech-To-Text client in PHP application?

For authentication Cloud Speech-To-Text client in PHP application I use the following:

 $credentials = 'C:\cred.json';
 $client=new SpeechClient(['credentials'=>json_decode(file_get_contents($credentials), true)]);

For some reasons I receive error:

Fatal error: Uncaught GuzzleHttp\Exception\ClientException: Client error: POST https://oauth2.googleapis.com/token resulted in a 400 Bad Request response: {"error":"invalid_scope","error_description":"Invalid OAuth scope or ID token audience provided."}

The above method of authentication works perfectly in Text-To-Speech API.

$credentials = 'C:\cred.json';
$client = new TextToSpeechClient(['credentials' => json_decode(file_get_contents($credentials), true)]);

What is wrong/missing?

like image 949
Uvoicer Text To Speech Avatar asked Feb 21 '26 19:02

Uvoicer Text To Speech


1 Answers

The problem solved by updating Auth module (in Vendor folder). Just change your Auth version to the latest version in your composer.json file.

{
    "require": {
        "google/auth": "1.14.3",
        "google/cloud-text-to-speech": "^0.5.0",
        "google/cloud-speech": "^1.3",
        "google/protobuf": "^3.14",
        "phpmailer/phpmailer": "^6.1",
        "google/apiclient": "2.5"
    }
}

Once it's done, I just run

composer update

in your command line in the appropriate directory. Now it works.

like image 159
Uvoicer Text To Speech Avatar answered Feb 27 '26 10:02

Uvoicer Text To Speech



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!