Help Docs Developer Resources Contact API Contacts API
The Contacts API allows you to manage contact information, including importing and syncing contacts, retrieving contact group details, and downloading contact data.
Endpoint:
https://app.rumbleup.com/api/contact
The Contact object comprises the following fields
Basic contact fields (can be imported)
phone
- phone number, will be used as rupid by defaultname
- full contact namefirst_name
last_name
email
street
city
zipcode
county
url
- general purpose urlicon
- contact specific icon urldescr
- general purpose descriptionquestion
- general purpose questionReference fields (can be imported)
source
- mostly to keep unique reference in your systemcustom1
- general purpose fields to be used in messasge placeholders or shorturlscustom2
custom3
custom4
custom5
System fields
group
- a list of groups this contact belongs to, during import a group is created automatically
action
- a list of actions/projects this contact has been contacted in
reaction
- a list of actions/projects this contact replied to
create_time
- time the contact was first created/imported
update_time
- last time the contcat was manually updated
sent_time
- last time the contact received a message or sent a message
flags
- contains all of the tags applied to the contact, both defined by you and system tags. Here are the reserved system tags:
dnd
- Do Not Disturb (system-applied and non-removable tag when the contact has opted out with a STOP request)bad
- Opt-Out (user-applied and removable tag when a contact has opted out using language other than a STOP request)landline
- This number has been checked against the landline database and is a landlineunreachable
- After several messages with failed deliveries, this contact is deemed unreachablereplied
- The contact has repliedrude
- The contact used profanity or was otherwise marked as rudetester
- This contact has been sent test textsoptin
- This contact has opted in to keyword or form for receiving textsExample Object:
{
"phone": "5551234567",
"name": "John Doe",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"street": "123 Maple Street",
"city": "Springfield",
"zipcode": "12345",
"url": "https://www.johndoewebsite.com",
"icon": "https://www.johndoewebsite.com/icon.png",
"source": "UNIQUE12356",
"descr": "This is a sample description for John Doe.",
"custom1": "Custom field 1 data",
"custom2": "Custom field 2 data",
"custom3": "Custom field 3 data",
"custom4": "Custom field 4 data",
"custom5": "Custom field 5 data",
"group": [ "46","48"],
"action": [ "23", "26" ],
"create_time": "11/22/2024 12:53pm CDT",
"update_time": "04/15/2025 01:15am CDT",
"sent_time": "02/22/2025 06:27pm CDT"
}
/api/contact/select
action
- A list of projects contacts receive messagesfilter
- A filter type: in, out, reply, dnd, unread, delivered, error, modifiedactions
- A list of projects contacts received messages and repliedgroup
- A list of groups contacts belong to.since
- Last message received after this timestamp, if 2 timestamps given (T1,T2) then last messages received in that period of timeflags
- Contacts with given list of flagsnoflags
- Contats without given flagsq
- text to match in any fieldExample Request:
curl -XPOST -u CID:KEY -d 'action=4' https://app.rumbleup.com/api/contact/select
Example Response:
{
"count": 3,
"total": 3,
"next_token": "....",
"data": [...]
}
/api/contact/sync
phone
: (required) Contact’s phone numbername
or first_name
: (required) Contact’s full name or first namefirst_name
: Contact’s first namelast_name
: Contact’s last nameemail
: Contact’s email addressstreet
: Contact’s street addresscity
: Contact’s city of residencezipcode
: Contact’s postal codeurl
: Contact’s website URLicon
: URL to the contact’s icon/imagesource
: Source of the contact informationdescr
: Description or notes about the contactcustom1
, custom2
, custom3
, custom4
, custom5
: Custom fields for additional informationcurl -X GET https://app.rumbleup.com/api/contact/sync -d '{"phone": "1234567890", "name": "John Doe", // more contact parameters... }' -u '<YOUR_ACCOUNT_CID>:<YOUR_API_KEY>'
{
"phone": "1234567890",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"city": "Cityville",
"zipcode": "12345",
"url": "https://example.com",
"icon": "https://example.com/avatar.jpg",
"source": "Import",
"descr": "A valuable contact",
"custom1": "Custom Field 1",
"custom2": "Custom Field 2"
}
Endpoint: /api/contact/import
Method: POST
Description: To perform contact imports programmatically, you can use RumbleUp’s API as an alternative to the Basic Contact Import available in the portal.
Request Body Parameters:
csv
(File, required): CSV file with contact informationFile Format
The file to be imported must be in CSV format. The first line of the file should serve as the header row, containing column names.
Required Columns
phone
name or first_name
Allowed Columns
phone
name
first_name
last_name
email
street
city
zipcode
url
icon
source
descr
custom1
custom2
custom3
custom4
custom5
Common Errors
No required columns provided: phone and (name or first_name)
-F
with Content-Type
as multipart/form-data
or --data-binary
.curl -X POST -F 'csv=@exampleFile.csv' https://app.rumbleup.com/api/contact/import -u '<YOUR_ACCOUNT_CID>:<YOUR_API_KEY>'
{
"cid": "c_abc123,
"descr": "exampleFile",
"gid": "2",
"name": "exampleFile"
}
/api/group/get/{group_id}
cid
: (required) Contact IDgroup_id
: (required) Group IDExample Request
curl "https://app.rumbleup.com/api/group/get/1 -u '<YOUR_ACCOUNT_CID>:<YOUR_API_KEY>'
Example Response
{
"cid": "c_abc123",
"gid": "1",
"name": "My Group Name",
"status": "ok",
"item_count": 2, // Number of contacts in the group
"item_ready": 2, // Number of good contacts in the group
"filter": "",
"item_stats": { // Stats associated with the project
"count": { // Contact detail breakdown
"zipcode": 1,
"first_name": 1,
"phone": 1,
"city": 1,
"street": 1
},
"flags": { // Tag breakdown
"optin": 1,
"new": 1
},
"name": {
"0-10": 1
},
"area": { // Areacode breakdown
"555": 1
}
},
"tasks": [ // Tasks associated with group
{
"name": "Statistics",
"status": "finished",
"count": "11",
"total": "11",
"status_time": "04/20/2025 03:34pm CDT"
}
],
"create_time": "04/20/2025 03:34pm CDT",
"status_time": "04/20/2025 03:34pm CDT",
"update_time": "04/20/2025 03:34pm CDT",
}
/api/contact/download
gid
: Group IDflags
: Flagsq
: Query parametersExample Request
curl -X GET "https://app.rumbleup.com/api/contact/download?gid=your_group_id&flags=your_flags&q=your_query_parameters" -o output.csv -u '<YOUR_ACCOUNT_CID>:<YOUR_API_KEY>'
Example Response
Downloaded CSV File