MobileCommons
Overview
MobileCommons is a broadcast text messaging tool that helps orgranizations mobilize supporters and fundraise by building opt-ed in audiences. You can read more about the product here.
Quick Start
To instantiate a class you must pass the username and password of a MobileCommons account as an argument
or store the username and password into environmental variables called MOBILECOMMONS_USERNAME
and
MOBILECOMMONS_PASSWORD
, respectively. If you MobileCommons account has access to various MobileCommons
companies (i.e. organizations), you’ll need to specify which MobileCommons company you’d like to interact
with by specifying the Company ID in the company_id
parameter. To find the Company ID, navigate to the
Company and Users page.
Then you can call various endpoints:
API
- class parsons.MobileCommons(username=None, password=None, company_id=None)[source]
Instantiate the MobileCommons class.
- Args:
- username: str
A valid email address connected to a MobileCommons account. Not required if
MOBILECOMMONS_USERNAME
env variable is set.- password: str
Password associated with Zoom account. Not required if
MOBILECOMMONS_PASSWORD
env variable set.- company_id: str
The company id of the MobileCommons organization to connect to. Not required if username and password are for an account associated with only one MobileCommons organization.
- get_broadcasts(first_date=None, last_date=None, status=None, campaign_id=None, limit=None)[source]
A function for get broadcasts
- Args:
- first_date: str
The date of the earliest possible broadcast you’d like returned. All common date format should work (e.g. mm/dd/yy or yyyy-mm-dd)
- last_date: str
The date of the latest possible broadcast you’d like returned. All common date format should work (e.g. mm/dd/yy or yyyy-mm-dd)
- status: str
‘draft’, ‘scheduled’, or ‘generated’
- campaign_id: int
Specify to return broadcasts from a specific campaign
- limit: int
Max rows you want returned
- Returns:
Parsons table with requested broadcasts
- get_campaign_subscribers(campaign_id: int, first_date: str = None, last_date: str = None, opt_in_path_id: int = None, limit: int = None)[source]
A function for getting subscribers of a specified campaign
- Args:
- campaign_id: int
The campaign for which you’d like to get subscribers. You can get this from the url of the campaign’s page after select a campaign at https://secure.mcommons.com/campaigns
- first_date: str
The date of the earliest possible subscription returned. All common date format should work (e.g. mm/dd/yy or yyyy-mm-dd)
- last_date: str
The date of the latest possible subscription you’d like returned. All common date format should work (e.g. mm/dd/yy or yyyy-mm-dd)
- opt_in_path_id: int
Optional parameter to narrow results to on particular opt-in path. You can get this from the url of the opt in paths page https://secure.mcommons.com/opt_in_paths
- limit: int
Max rows you want returned
- Returns:
Parsons table with requested broadcasts
- get_profiles(phones: list = None, first_date: str = None, last_date: str = None, include_custom_columns: bool = False, include_subscriptions: bool = False, limit: int = None)[source]
A function for getting profiles, which are MobileCommons people records
- Args:
- phones: list
A list of phone numbers including country codes for which you want profiles returned MobileCommons claims to recognize most formats.
- first_date: str
The date of the earliest possible subscription returned. All common date format should work (e.g. mm/dd/yy or yyyy-mm-dd).
- last_date: str
The date of the latest possible subscription you’d like returned. All common date format should work (e.g. mm/dd/yy or yyyy-mm-dd).
- include_custom_columns: bool
Optional parameter to that, if set to True, will return custom column values for profiles as a list of dictionaries contained within a column.
- include_subscriptions: bool
Optional parameter to that, if set to True, will return a list of campaigns a given profile is subscribed to in a single column
- limit: int
Max rows you want returned
- Returns:
Parsons table with requested broadcasts
- create_profile(phone, first_name=None, last_name=None, zip=None, addressline1=None, addressline2=None, city=None, state=None, opt_in_path_id=None, custom_column_values=None)[source]
A function for creating or updating a single MobileCommons profile
- Args:
- phone: str
Phone number to assign profile
- first_name: str
Profile first name
- last_name: str
Profile last name
- zip: str
Profile 5-digit postal code
- addressline1: str
Profile address line 1
- addressline2: str
Profile address line 2
- city: str
Profile city
- state: str
Profile state
- opt_in_path_id: str
ID of the opt-in path to send new profile through. This will determine the welcome text they receive.
- custom_column_values: dict
Dictionary with custom column names as keys and custom column values as dictionary values
- Returns:
ID of created/updated profile