Ну или через сам Газл, что то типа этого
$client = new \GuzzleHttp\Client();
$request = $client->post( $url, [
'headers' => ['Authorization' => 'auth_trusted_header'],
'multipart' => [
[
'name' => 'authorId',
'contents' => $user->getId(),
],
[
'name' => 'context',
'contents' => 'avatar',
],
[
'name' => 'file',
'contents' => fopen('data://text/plain;base64,'.$avatar, 'r'),
'filename' => $user->getId().'.png'
]
]
]);