Page MenuHomePhabricator

I want to be able to read a list communication fields in civi
Closed, ResolvedPublic0 Estimated Story Points


Please list all fields tied to methods of communication and their data types. It would also be cool (P2) if we could tell the last time a field was used/edited.

Event Timeline

@DStrine Do you just want the list on the task or somewhere else?

mepps renamed this task from list communication fields in civi to I want to be able to read a list communication fields in civi.Aug 2 2019, 3:12 PM

listing them here would be fine with me for now. I think @Eileenmcnaughton was wondering if there is a good place to organize this stuff on wiki. After we do the full mapping of email data and civi, I would like to put it somewhere where it is easy for a new engineer to find and use.

Hmm, so one question. Are we just looking for the fields in the custom set "Communication"? Also, I agree that so far there is no obvious place in our documentation to put this, but that means we need to create one.

@mepps there was a similar task specific to Silverpop which I did - I guess this is about do_not_trade, do_not_solicit, do_not_phone etc

@Eileenmcnaughton in starting this I realized I didn't know whether we used the On Hold field in Civi or do not solicit for those who unsubscribe?

This is from

  • Unsubscribe - this unsubscribes the contact. We add an Unsubscribe activity and set civicrm_contact.is_opt_out to 1. We also search for other instances of that email address & set civicrm_email.is_bulk_mail to 0 for them. Setting this is_bulk_email doesn't really affect anything at the moment but we also do is for DS unsubscribes

I think Do not solicit is manually set by MG staff

Thanks for all this. I think this is pretty good. However I swear we used to have a field "Do not mail" but I only see a "Do not solicit" at this point. did we change the name of this field? Of course I may be remembering this incorrectly.

So do not solicit is a custom field. CiviCRM has the following core fields


I'm not sure if we use these other than is_opt_out.

Note CiviCRM 'respects' some of these fields in some cases - e.g if you export from Civi & choose 'postal addresses' as an option it will exclude do_not_mail contacts. If you send a CiviMail it will ignore is_opt_out and do_not_email. If you send a ' normal' mail from the civicrm UI it respects 'do_not_email'

When we export to silverpop we set is_opted_out if ANY of these are true

@Dstine I added those to the documentation a while back but didn't update the task.

@Eileen I updated this documentation based on my knowledge, but I wasn't sure where is_opt_out was on the Contact we use it?

civicrm_contact.is_opt_out shows up as no bulk emails user opt out. We fill in this field when users unsubscribe via Silverpop or DS & it affects our uploads to Silverpop (and we can't CiviMail them should we wish to)

Screen Shot 2019-09-20 at 9.48.42 AM.png (468×800 px, 64 KB)