brevo-php
brevo-php copied to clipboard
Cannot assign offset 'attributes' to Brevo\Client\Model\UpdateContact.
When I update the attributes of a Brevo contact as described in the documentation (https://developers.brevo.com/reference/updatecontact) PHPStan reports the following violation :
Cannot assign offset 'attributes' to Brevo\Client\Model\UpdateContact.
try {
$identifier = '[email protected]';
$updateContact = new UpdateContact();
$updateContact['attributes'] = ['EMAIL'=>'[email protected]', 'FIRSTNAME'=>'John Doe'];
$this->contactEndpoint->updateContact($identifier, $updateContact);
} catch (\Exception $e) {
$this->brevoLogger->error('Error while updating contact on SendinBlue', ['exception' => $e]);
}
What is the correct way to modify a contact's attributes?
Hello! I'm not sure if this will help, but I use the following approach, and it works like a charm.
try {
$identifier = '[email protected]'; // string | Email (urlencoded) OR ID of the contact
$updateContact = new \Brevo\Client\Model\UpdateContact();
$updateContact->setAttributes( ['EMAIL'=>'[email protected]', 'FIRSTNAME'=>'John Doe']);
$this->instance->updateContact($identifier, $updateContact);
} catch (Exception $e) {
$this->Log->content(["Exception in ", __METHOD__, $e->getMessage(), PHP_EOL])->saveToFile()->andExit();
}