API reference · Donors
Update a donor
PATCH/v1/donors/{donorId}
Update a donor.
Requires a Bearer access token.
Parameters
This field has no description in the spec.
donorId#stringin pathrequired
Body
UpdateDonorDto1 of 17 fields has no description in the spec.
street#stringAddress line 1
city#stringCity
country#stringCountry alpha 2 ISO code
zip#stringZip code
firstName#stringDonor's first name
lastName#stringDonor's last name
email#stringemail addressDonor's email.
companyName#stringDonor's company name.
phone#stringDonor's phone number.
birthdate#string (date)pictureUrl#stringURLDonor's phone number.
title#stringDonor's job title.
personalEmail#stringemail addressDonor's personal email.
persona#stringPersona of the donor.
CSRMARKETINGHRSALESCOMMUNICATIONPRODUCTSMBOTHERexternalId#stringOptional id to link this donor to an entity on your side.
uniqueExternalId#stringSimilar to externalId but should be unique across all donors. Can be used to prevent duplicate donors
hasAcceptedTerms#booleanWhether the donor has accepted the terms and conditions
Response
200 · DonorNo field is described in the spec.
donorId#stringalways returnedscopeType#DonorScopeTypealways returnedCAMPAIGNACCOUNTplatformAccessStatus#DonorPlatformAccessStatusalways returnedENABLEDDISABLEDRESTRICTEDfirstName#stringalways returnedlastName#stringalways returnedemail#stringcompanyName#stringphone#stringextraInfo#stringbirthdate#string (date-time)street#stringstreetAddition#stringcity#stringcountry#stringzip#stringexternalId#stringuniqueExternalId#stringslackId#stringpictureUrl#stringtitle#stringpersonalEmail#stringpersona#PersonaCSRMARKETINGHRSALESCOMMUNICATIONPRODUCTSMBOTHERlanguage#LanguagefrenhasAcceptedTerms#booleanalways returnedaccountId#stringalways returnedcampaignId#stringindividualAccountId#stringcreatedAt#string (date-time)always returnedupdatedAt#string (date-time)always returned
Errors
400Invalid fields: <join(', ')>
{ "statusCode": 400, "message": "Invalid fields: <join(', ')>", "error": "Bad Request" }400A field is missing, has the wrong type, or is not part of the request schema.
Every request with a body or query is validated.
{ "statusCode": 400, "message": [ "amount must not be less than 1", "property foo should not exist" ], "error": "Bad Request" }401Unauthorized
Missing, expired or invalid access token.
{ "statusCode": 401, "message": "Unauthorized" }403Account closed
{ "message": "Account closed", "code": "ACCOUNT_CLOSED" }409Unique constraint failed on uniqueExternalId
{ "statusCode": 409, "message": "Unique constraint failed on uniqueExternalId" }
curl -X PATCH https://api.sandbox.charitips.com/v1/donors/<donorId> \ -H "Authorization: Bearer $CHARITIPS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "street": "<street>", "city": "<city>" }'Request bodies are written for this docs and checked against the API's validation; ids in angle brackets are placeholders. Response values are placeholders built from the schema.