API error no parameters when there are parameters given

This is the error I'm getting, as you can see there is a parameter in the URL, but the error says there weren't any parameters given. Can anbody help me out?

Client error: PUT https://webapi.teamviewer.com/api/v1/devices/d38237721?alias=laptop-test resulted in a 400 Bad Request response: {"error":"invalid_request","error_description":"no parameters were given.","error_code":1}

This is my code

public function update($device_id, $options)
{
    $token = 'thereisatokenhere';

    $client = new Client(['base_uri' => 'https://webapi.teamviewer.com/api/v1/']);
    $headers = [
        'Authorization' => 'Bearer ' . $token,
        'Accept-Language' => 'en-US',
        'Content-Type' => 'application/json'
    ];


    $response = $client->request('PUT', 'devices/' . $options['device_id'], [
        'headers'         => $headers,
        'form_params'            => [
            'alias' => $options['alias'],
        ],
    ]);

    $response = json_decode($response->getBody()->getContents(), true);

    $deviceIdsAPI = $response['devices'];

    return $deviceIdsAPI;
}

2nd

 $request = new Request('PUT', 'https://webapi.teamviewer.com/api/v1/devices/' . $options['device_id'], ['alias' => $options['alias']]);
        $response = $client->send($request, ['timeout' => 2, 'headers' => $headers]);

Upvotes: 0

Views: 737

Answers (1)

user3574492
user3574492

Reputation: 6435

Here is an example of a PUT request in Guzzle:

$client->put('devices/' . $options['device_id'], [
    'body'            => [
        'alias' => $options['alias'],
        'other_field' => '123'
    ],
    'headers'         => $headers,
    'allow_redirects' => false,
    'timeout'         => 5
]);

Update:

In the latest version (Guzzle 6) it should be like this:

use GuzzleHttp\Psr7\Request;

$request = new Request('PUT', 'http://httpbin.org/put', ['test' => '123']);
$response = $client->send($request, ['timeout' => 2, 'headers' => $headers]);

See this answer and here is the official Guzzle documentation

Upvotes: 1

Related Questions