API FAQs
How does the Campaigns API work
2 min
before you start a call campaign, set a clear objective we have some use cases here and guidelines here based on the business objective, configure a call flow campaigns api attempts to make calls to comma separated ‘from’ numbers specified in the request when a call is picked up, the flow is executed and status reported a campaign schedule determines when to start and end the campaign retry logic determines how and when to attempt to call a phone number again in case of failure to use campaigns api, including sample code, please refer to our developer portal below are some important considerations to keep in mind while using the api when a request has an invalid number, then the entire request is failed with the number available in the failure message the request will fail on the first invalid number found, the rest of the data is not processed the developer is encouraged to use the phone number lib to validate his data before sending it terminal states of a campaign are ‘completed’, ‘failed’, ’deleted’, and 'canceled' intermediate states are 'created' , 'in progress' and 'paused' campaign states (intermediate) created a campaign api request that was successfully accepted by the system in progress a campaign that has started paused a campaign, that was scheduled was requested to be paused explicitly campaign states (terminal) failed none of the calls were made (5xx /4xx / invalid numbers) for all of the phone numbers for the campaign immediate failures are marked as failed as well with the http status code reflecting the reason for failure completed all / partial calls (where the end time was reached) were made successfully canceled a campaign was ‘paused’ but was not resumed ever and end at was reached is marked as canceled all the remaining calls for the campaign are marked as failed deleted a campaign can be marked deleted only if it has not started call status in progress when the call is triggered failed no retry was allowed and the status was ‘no answer’, ‘busy’ or ‘failed’ state completed when this call was ‘completed’ by exotel customfields are part of the report customfields value is applicable to all numbers uniformly campaigns are marked as ‘failed’ if all calls were not attempted if all calls were attempted, then that call campaign is successful, however, the status of individual calls will determine the success/failure of each call a call to a number that failed (including retries) is marked as “failed” delete is possible only on campaigns that have not yet started a campaign that is in progress, the below fields can be updated callbacks action when end at is specified, exotel makes its best effort to ensure that calls are completed within that period but is not guaranteed post request with end at will return 200 ok irrespective of whether all calls can be made or not all numbers that were not called because of timer expiry will be marked as ‘canceled’ the report captures numbers that were not dialed for a failed campaign as well long running campaigns a cut off time, 10 30 am 9 pm is provisioned, which will imply that no call is made beyond the cut off time paused campaigns without an end time specified will expire after 30 days from the start at time throttle limits 200 api requests per min with 60 concurrent channels
🤔
Have a question?
Our knowledgeable support team and an awesome community will get you an answer in a flash.
To ask a question or participate in discussions, you'll need to authenticate first.