Log an interaction

Record a call, email, meeting or note on a constituent timeline.

POST https://cotlet.dev/api/v1/bloomerang/constituents/{constituent_id}/interactions

write

Logs what already happened; it sends nothing to the constituent. A user without giving access cannot choose Acknowledgement, PledgeReminder, Receipt or Solicitation and gets APP_PERMISSION_DENIED. It reaches no one, so it does not wait for your OK.

Parameters

Parameters: add_interaction
NameTypeDescription
constituent_id integer required integer Constituent ID from search_constituents.
date string required string YYYY-MM-DD.
subject string required string Up to 255 characters.
purpose string required string Purpose: Acknowledgement, ImpactCultivation, Newsletter, Receipt, Solicitation, SpecialEvent, VolunteerActivity, PledgeReminder, Welcome or Other.
channel string required string Channel: Email, Phone, TextMessage, Mail, InPerson, SocialMedia, Website or Other.
note string string Longer text kept with the interaction.

Request

cURL
curl -X POST https://cotlet.dev/api/v1/bloomerang/constituents/1/interactions \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date":"date","subject":"subject","purpose":"purpose","channel":"channel"}'
Python
result = client.call("bloomerang", "add_interaction", {"constituent_id":1,"date":"date","subject":"subject","purpose":"purpose","channel":"channel"})
Node.js
const result = await cotlet.call('bloomerang', 'add_interaction', {"constituent_id":1,"date":"date","subject":"subject","purpose":"purpose","channel":"channel"});
CLI
cotlet call bloomerang add_interaction --data '{"constituent_id":1,"date":"date","subject":"subject","purpose":"purpose","channel":"channel"}'

Example response

JSON

{
  "id": 7311,
  "constituent_id": 48211,
  "date": "2026-10-21",
  "subject": "Called about lapsed gift",
  "channel": "Phone",
  "purpose": "Solicitation"
}

Sign in once. Your agent does the rest.

Sign up and add the apps you need. Free 7-day trial with 2,000 credits, no card needed.