Help Docs Developer Resources Action API API Project Creation Flow

Action API Creation Flow

This guide provides a streamlined workflow for creating, testing, and sending API actions. It includes step-by-step instructions and examples to ensure you can efficiently set up and deploy your projects.

The “Actions” resource in our API corresponds to UI RumbleUp Projects.

Step 1: Create Action

Request

  • Endpoint: /api/action/create

  • HTTP Method: POST

Example Requests:

Create Outsource action with Group ID:

{
  "name": "My Action",
  "msg": "This is my message. Reply STOP to opt out.",
  "file": [File] MyImage.png,
  "campaignId": "CABC123",
  "group": "123",
  "flags": "outsourced",
  "outsource_start": "02-27-2024 08:00 EST",
  "outsource_end": "02-27-2024 08:00 EST",
  "outsource_email": "myEmail@gmail.com"
}

Create Send Yourself Action with Group file upload:

{
  "name": "My Action",
  "message": "This is my message. Reply STOP to opt out.",
  "campaignId": "CABC123",
  "file": [File] MyImage.png,
  "group_file": [File] MyList.csv,
  ...
}

Create Send Yourself Action with Short Link:

{
  "name": "My Action",
  "message": "Click here -> https://mylink.com/trackingId/@custom1@ \nReply STOP to opt out.",
  "campaignId": "CABC123",
  "shorturl_tracking": true,
  "file": [File] MyImage.png,
  "group_file": [File] MyList.csv,
  ...
}

Example Responses:

Normal message:

{
  "action": "145",                                          // Project ID
  "cid": "c_abc123",                                        // Account ID
  "group": "123",                                           // Contact Group ID
  "name": "My API Project",
  "message": "This is my message. Reply STOP to opt out.",
  ...
}

With short link:

{
  "action": "145",
  "cid": "c_abc123",
  "group": "123",
  ...
  "message": "Click here -> short.link/kdj \nReply STOP to opt out."
}

Step 2: Send a Test

Overview

Send a test message to your test_phone to ensure eveything looks the way it is supposed to. This step is required to send.

It’s important to note that as part of the confirmation process for sending a test message, certain agreements must be acknowledged.

  • I authorize RumbleUp to send this message

  • I understand changes may not be made once the program has begun

  • I understand that submitting this order with less than 48 hours notice may limit the number of texts which can be successfully delivered

  • I authorize RumbleUp to exercise discretion to make changes necessary to optimize the success rate of this program (any such changes will not alter the intent of the program)

  • I acknowledge that projects submitted with less than 24 hours until their start time may encounter higher spam rates and that projects with a sending window of less than 1 hour per 10,000-group contacts may also encounter higher spam rates. I accept this additional risk if applicable to my project.

You can agree to these terms in the API using terms_agree.

Endpoint: /api/action/test/{action_id}

HTTP Method: POST

Example Request:

{
  "status": "test",
  "test_phone": "5555555555",
  "terms_agree": "true"
}

Example Response:

{
  "action": "145",
  "cid": "c_abc123",
  "name": "My Action",
  "flags": ["outsourced", "agree1", "agree2", "agree3", "agree4", "agree5"],
  ...
  "status": "test",
  "status_name": "Testing",
  "test_phone": "5555555555",
  ...
}

Step 3: [Outsource] Submit Action for Sending (Most Common)

Submit action in order to schedule it for sending.

Note: Outsourced actions require a minimum of 2500 after any contact filtering is applied. Actions below this threshold may not be accepted for outsourcing.

Endpoint: /api/action/submit/{action_id}

HTTP Method: POST

Example Response:

{
  "cid": "c_abc123",
  "action": 145,
  "submit_time": "2023-11-30 16:04:32 GMT-0600",
  // Additional details specific to the updated action
}

Step 3: [Send Yourself] Make a Action Live (Least Common)

Make your action live to enable sending. Once an action is Live texters can start sending messages via our portal or via Message API.

Endpoint: /api/action/send/{action_id}

HTTP Method: POST

Example Response:

{
  "cid": "c_abc123",
  "action": 1,
  "status": "Live",
  "live_time": "2023-11-30 16:10:09 GMT-0600"
  // Additional details specific to the sending response
}

General API Overview

Action API Docs

Message API Docs