param is missing or the value is empty laravel

I am creating a user with the api provided. I am using Laravel and trying to store data to smartrmail and docs to create new subscriber is here Each time i send request i get following error:

Server error: `POST` resulted in a `500 Internal Server Error` response: {"error":"param is missing or the value is empty: subscribers"}

{“error”:”param is missing or the value is empty: subscribers”}

I am using Laravel and my code is here


    $headers = [
        'Accept' => 'application/json',
        'Authorization' => 'token f91715d5-3aac-4db3-a133-4b3a9493a9a4',
        'Content-Type' => 'application/json',
    $client = new GuzzleHttpClient([
        'headers' => $headers
    $data = [
                "email"=> "",
                "first_name"=> "van",
                "last_name"=> "halen",
                "subscribed"=> true,
    $res = $client->request('POST', '', [
        'form_params' => [

    // echo $res->getStatusCode();

Anybody help me to figure out what is wrong here. I am following this docs to create a new subscriber


Instead of

'form_params' => [


'json' => $data


You want to send json data (I assume that because you set header 'Content-Type' => 'application/json', which means that you are sending json), but form_params is used for application/x-www-form-urlencoded.

json sets header to application/json and sends data as json.

As you set proper header, this should work too:

'body' => $data

Proper name of param you can find in Guzzle docs, I used uploading data part.

Source: stackoverflow