0
votes

I'm using API from RapidAPI face verification https://rapidapi.com/HiBrainy/api/face-recognition4 and I have difficulty using the API this example code PHP from RapidAPI

$client = new http\Client;
$request = new http\Client\Request;

$body = new http\Message\Body;
$body->addForm(array(
    'photo1' => array(
        'value' => 'image2.jpg',
        'data' => 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAQ=='
    ),
    'photo2' => array(
        'value' => 'image2.jpg',
        'data' => 'data:image/jpeg;base64,/9j/4AAQSkZ630QAMXaf//Z'
    )
), NULL);

$request->setRequestUrl('https://face-recognition4.p.rapidapi.com/FaceVerification');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setHeaders(array(
    'x-rapidapi-host' => 'face-recognition4.p.rapidapi.com',
    'x-rapidapi-key' => $my_api_key,
    'content-type' => 'multipart/form-data'
));

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();

I applied to laravel with the guzzle package my code

try {

...other code...

     $client = new Client();
     $response = $client->post('https://face-recognition4.p.rapidapi.com/FaceVerification', [
        'headers' => [
            'x-rapidapi-host' => 'face-recognition4.p.rapidapi.com',
            'x-rapidapi-key' => $my_api_key,
            'content-type' => 'multipart/form-data'
        ],
        'multipart' => [
            [
                'name' => 'photo1',
                'contents' => $image1,
                'filename' => 'image1.jpg'
            ],
            [
                'name' => 'photo2',
                'contents' => $image2,
                'filename' => 'image2.jpg'
            ]
        ]
    ]);
}catch (\Exception $error){
    dd($error);
}

I got error

#message: """
        Client error: `POST https://face-recognition4.p.rapidapi.com/FaceVerification` resulted in a `400 Bad Request` response:
        {"type":"https://tools.ietf.org/html/rfc7231#section-6.5.1","title":"One or more validation errors occurred.","status":4 (truncated...)
1

1 Answers

0
votes

You should consider removing your API key from the code you're sharing

Try to have a look at the raw request to have further details and verify that your request have been formatted correctly