Inconsistent handling of enum fields

Note: This is one of multiple posts about issues I’ve discovered while working depth with the Pipedrive API. A description of the use case and collection of all issues can be found at · GitHub.

enum fields seem to generally have integer values and string labels. Notable exceptions in the
activities resource:

  • done has boolean IDs (true and false)
  • busy_flag – same thing
  • type has string values (e.g. "call", "meeting")

Consequently, this needs manual remapping when scripting around field types.

What I’d expect instead is for these fields to behave the same way as all other enum fields and have int IDs and text/varchar labels.

(Note: busy_flag and done would deserve to be boolean types, but that is a separate issue.)

Thanks for taking the time to capture the relevant details :slight_smile: I have moved this to #feedback for broader attention.