There are 2 ways to update a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE attribute
Follow this format when passing a "SMS" phone number as an attribute.
Accepted Number Formats |
---|
91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx |
Code Examples
You can use as reference the code below to implement this call in your preferred language.
Check all our official API clients here
const SibApiV3Sdk = require('sib-api-v3-sdk');
let defaultClient = SibApiV3Sdk.ApiClient.instance;
let apiKey = defaultClient.authentications['api-key'];
apiKey.apiKey = 'YOUR API KEY';
let apiInstance = new SibApiV3Sdk.ContactsApi();
let identifier = '[email protected]';
let updateContact = new SibApiV3Sdk.UpdateContact();
updateContact.attributes = {'EMAIL':'[email protected]','FIRSTNAME':'John Doe'};
apiInstance.updateContact(identifier, updateContact).then(function() {
console.log('API called successfully.');
}, function(error) {
console.error(error);
});
<?php
require_once(__DIR__ . '/vendor/autoload.php');
$config = SendinBlue\Client\Configuration::getDefaultConfiguration()->setApiKey('api-key', 'YOUR API KEY');
$apiInstance = new SendinBlue\Client\Api\ContactsApi(
new GuzzleHttp\Client(),
$config
);
$identifier = '[email protected]';
$updateContact = new \SendinBlue\Client\Model\UpdateContact();
$updateContact['attributes'] = array('EMAIL'=>'[email protected]', 'FIRSTNAME'=>'John Doe');
try {
$apiInstance->updateContact($identifier, $updateContact);
} catch (Exception $e) {
echo 'Exception when calling ContactsApi->updateContact: ', $e->getMessage(), PHP_EOL;
}
?>
from __future__ import print_function
import time
import sib_api_v3_sdk
from sib_api_v3_sdk.rest import ApiException
from pprint import pprint
configuration = sib_api_v3_sdk.Configuration()
configuration.api_key['api-key'] = 'YOUR API KEY'
api_instance = sib_api_v3_sdk.ContactsApi(sib_api_v3_sdk.ApiClient(configuration))
email = '[email protected]'
update_contact = sib_api_v3_sdk.UpdateContact(attributes={'EMAIL': '[email protected]', 'FIRSTNAME': 'John Doe'})
try:
api_instance.update_contact(email, update_contact)
except ApiException as e:
print("Exception when calling ContactsApi->update_contact: %s\n" % e)
const SibApiV3Sdk = require('sib-api-v3-typescript');
let apiInstance = new SibApiV3Sdk.ContactsApi()
let apiKey = apiInstance.authentications['apiKey'];
apiKey.apiKey = 'YOUR API KEY';
let identifier = '[email protected]';
let updateContact = new SibApiV3Sdk.UpdateContact();
updateContact.attributes = {'EMAIL':'[email protected]','FIRSTNAME':'John Doe'};
apiInstance.updateContact(identifier, updateContact).then(function() {
console.log('API called successfully.');
}, function(error) {
console.error(error);
});
package sibApi;
import sendinblue.ApiClient;
import sendinblue.Configuration;
import sendinblue.auth.ApiKeyAuth;
import sibModel.*;
import java.util.*;
import java.util.List;
public class Program {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Configure API key authorization: api-key
ApiKeyAuth apiKey = (ApiKeyAuth) defaultClient.getAuthentication("api-key");
apiKey.setApiKey("YOUR API KEY");
try {
ContactsApi api = new ContactsApi();
String email = "[email protected]";
UpdateContact updateContact = new UpdateContact();
Properties attributes = new Properties();
attributes.setProperty("FIRSTNAME", "John");
attributes.setProperty("LASTNAME", "Doe");
attributes.setProperty("SMS", "91XXXXXXXXXX");
updateContact.setAttributes(attributes);
List<Long> listIds = new ArrayList<Long>();
listIds.add(4l);
updateContact.setListIds(listIds);
List<Long> unlinkListIds = new ArrayList<Long>();
unlinkListIds.add(2l);
updateContact.setUnlinkListIds(unlinkListIds);
List<String> smtpBlacklistedSender = new ArrayList<String>();
smtpBlacklistedSender.add("[email protected]");
updateContact.setSmtpBlacklistSender(smtpBlacklistedSender);
updateContact.setEmailBlacklisted(false);
updateContact.setSmsBlacklisted(false);
api.updateContact(email, updateContact);
} catch (Exception e) {
System.out.println("Exception occurred:- " + e.getMessage());
}
}
}
using sib_api_v3_sdk.Api;
using sib_api_v3_sdk.Client;
using sib_api_v3_sdk.Model;
using System;
using System.Diagnostics;
using Newtonsoft.Json.Linq;
using System.Collections.Generic;
namespace Sendinblue
{
class Program
{
static void Main(string[] args)
{
Configuration.Default.ApiKey.Add("api-key", "YOUR API KEY");
var apiInstance = new ContactsApi();
string email = "[email protected]";
JObject attributes = new JObject();
attributes.Add("FIRSTNAME", "John");
attributes.Add("LASTNAME", "Doe");
attributes.Add("SMS", "91XXXXXXXXXX");
List<long?> listIds = new List<long?>();
listIds.Add(4);
List<long?> unlinkListIds = new List<long?>();
unlinkListIds.Add(2);
bool? emailBlacklisted = false;
bool? smsBlacklisted = false;
List<string> smtpBlacklistedSender = new List<string>();
smtpBlacklistedSender.Add("[email protected]");
try
{
var updateContact = new UpdateContact(attributes, emailBlacklisted, smsBlacklisted, listIds, unlinkListIds, smtpBlacklistedSender);
apiInstance.UpdateContact(email, updateContact);
Console.ReadLine();
}
catch (Exception e)
{
Debug.WriteLine(e.Message);
Console.WriteLine(e.Message);
Console.ReadLine();
}
}
}
}
package main
import (
"fmt"
"context"
sib_api_v3_sdk "./lib"
)
func main() {
var ctx context.Context
var cli = sib_api_v3_sdk.APIClient{
cfg: sib_api_v3_sdk.NewConfiguration(),
}
//Configure API key authorization: api-key
cli.cfg.AddDefaultHeader("api-key", "YOUR_API_KEY")
sib := sib_api_v3_sdk.NewAPIClient(cli.cfg)
attr := map[string]interface{}{
"EMAIL": "[email protected]",
"FIRSTNAME": "John Doe",
}
var params = UpdateContact{
ListIds: []int64{10},
Attributes: attr,
}
resp, err := sib.ContactsApi.UpdateContact(ctx, params, email)
if err!=nil{
fmt.Println("Error in ContactsApi->UpdateContact",err.Error())
return
}
fmt.Println( "UpdateContact Response: ",resp)
return
}
# load the gem
require 'sib-api-v3-sdk'
# setup authorization
SibApiV3Sdk.configure do |config|
# Configure API key authorization: api-key
config.api_key['api-key'] = 'YOUR API KEY'
end
api_instance = SibApiV3Sdk::ContactsApi.new
identifier = '[email protected]' # String | Email (urlencoded) OR ID of the contact
update_contact = SibApiV3Sdk::UpdateContact.new # UpdateContact | Values to update a contact
update_contact = {
'attributes'=> {'EMAIL'=>'[email protected]','FIRSTNAME'=>'John Doe'}
}
begin
#Update a contact
api_instance.update_contact(identifier, update_contact)
rescue SibApiV3Sdk::ApiError => e
puts "Exception when calling ContactsApi->update_contact: #{e}"
end