DialMyCalls API Documentation (v 2.0) Overview Our API lets you easily add the ability to send phone calls and text messages to your existing software. The following documentation explains the different API calls along with code examples to help you get the code implemented as easy as possible. If you have any questions or need help with implementation please contact us and someone on our API development team will be able to assist you. Request Authentication Every DialMyCalls account has a unique API key, which can be found here under API Info. Step 1 Step 2 All API requests require authentication via HTTP basic auth. To achieve this the API key must be passed into the endpoint URL in the following format: https://{ApiKey}@api.dialmycalls.com/. Request Headers Header Description Content-Type Use the Content-Type header to indicate the incoming data format. We currently support application/json and application/xml. Accept This header tells us what format to return the data in. We currently support application/json and application/xml. The default response is JSON. Range This header is used for pagination of results. The required format for this header is records=1-100. The maximum number of records that can be requested by a single API call is 100. Custom Data Types Name Type Description timestamp string Date/time in ISO 8601 format. uuid string Uuid in 8-4-4-4-12 format. Methods Method Usage DELETE Used for destroying existing resources GET Used for retrieving lists and individual resources POST Used for creating new resources PUT Used for updating existing resources Response Possible Status Codes Code Description 200 OK The request was successful. 201 CREATED The request was successful; we created a new resource and the response body contains the object. 206 PARTIAL CONTENT The request was successful; a paged list of resources were returned. 400 BAD REQUEST The data given in the POST or PUT failed validation. Inspect the response body for details. 401 UNAUTHORIZED The supplied credentials, if any, are not sufficient to delete the resource. 402 PAYMENT REQUIRED Your account does not have enough credits to perform the requested action. 404 NOT FOUND The resource was not found. 500 SERVER ERROR There was an internal server error. Request ID Each API response contains a unique request id in the to facilitate tracking. When reporting issues, providing this value makes it easier to pinpoint problems and provide solutions more quickly. Sample Responses Successful { "results": { "id": "fcc43bd7-ccc4-490a-960f-69d00610ca59", "firstname": "John", "lastname": "Doe", "phone": "5555555555", "extension": "123", "email": "example@domain.com", "extra1": "Lorem ipsum dolor sit amet...", "groups": [ { "id": "dece446c-29ce-405c-a967-4eed720f8835" } ], "created_at": "2014-07-17T21:26:40+0000", "updated_at": "2014-07-17T21:48:20+0000" }, "meta": { "result": "success", "status": 200, "request_id": "a1f3b257-7eca-4d61-a83c-38c428e96bfb" } } Error { "results": { "error": { "message": "This resource does not exist." } }, "meta": { "result": "failure", "status": 404, "request_id": "8c48624f-78e4-49e7-a43f-8cf90ac421a9" } } Libraries You can view our Github here: https://github.com/dialmycalls/ You may download and install our SDKs: • C Sharp SDK • Go SDK • Javascript SDK • Php SDK • Python SDK • Ruby SDK Methods Get Account GET https://{ApiKey}@api.dialmycalls.com/2.0/account Retrieve account details. Response Returns a account object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve your account information curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/account Add Caller ID POST https://{ApiKey}@api.dialmycalls.com/2.0/callerid Add a caller ID. Request Name Description Type Required phone The caller ID phone number. string yes name The caller ID's name. string yes Response Returns a caller ID object on success, and returns an error otherwise. Examples How to add a caller ID curl -i -H "Content-Type: application/json" -X POST -d "{\"phone\": \"5555555555\", \"name\": \"New Number\"}" https://$API_KEY@api.dialmycalls.com/2.0/callerid Add Caller ID (Unverified) POST https://{ApiKey}@api.dialmycalls.com/2.0/verify/callerid Initiate adding a new caller ID when you need to go through the verification process. You will receive a phone call at the phone number provided and will need to make a subsequent API call with the PIN code that you are provided. Request Name Description Type Required phone The caller ID phone number. string yes name The caller ID's name. string yes Response Returns a caller ID object on success, and returns an error otherwise. Examples How to add a caller ID when needing additional verification curl -i -H "Content-Type: application/json" -X POST -d "{\"phone\": \"5555555555\", \"name\": \"New Number\"}" https://$API_KEY@api.dialmycalls.com/2.0/verify/callerid Verify Caller ID PUT https://{ApiKey}@api.dialmycalls.com/2.0/verify/callerid/{CalleridId} Verify a new caller ID. Request Name Description Type Required pin Verification PIN number received from making add caller ID request. string yes Response Returns a caller ID object if a valid identifier was provided, and returns an error otherwise. Examples Verify a caller ID curl -i -H "Content-Type: application/json" -X POST -d "{\"phone\": \"5555555555\", \"name\": \"New Number\"}" https://$API_KEY@api.dialmycalls.com/2.0/verify/callerid/$CALLERID_ID Get Caller ID GET https://{ApiKey}@api.dialmycalls.com/2.0/callerid/{CalleridId} Retrieve a caller ID. Response Returns a caller ID object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a caller ID curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/callerid/$CALLERID_ID Update Caller ID PUT https://{ApiKey}@api.dialmycalls.com/2.0/callerid/{CalleridId} Update an existing caller ID. Request Name Description Type Required name The caller ID's name. string yes Response Returns a caller ID object if a valid identifier was provided and input validation passed, and returns an error otherwise. Examples How to update a caller ID curl -i -H "Content-Type: application/json" -X PUT -d "{\"name\": \"New Number Updated\"}" https://$API_KEY@api.dialmycalls.com/2.0/callerid/$CALLERID_ID Delete Caller ID DELETE https://{ApiKey}@api.dialmycalls.com/2.0/callerid/{CalleridId} Delete a caller ID. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this caller ID. uuid Examples How to delete a caller ID curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/callerid/$CALLERID_ID List Caller IDs GET https://{ApiKey}@api.dialmycalls.com/2.0/callerids Retrieve a list of caller IDs. Response Returns a list of caller ID objects. Examples How to retrieve a list of caller IDs curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/callerids Create Call POST https://{ApiKey}@api.dialmycalls.com/2.0/service/call Create an outgoing call broadcast. Request Name Description Type Required name Name the broadcast. string yes callerid_id The caller id that the message should be sent from. uuid yes recording_id The recording id of the message that should be played. uuid yes machine_recording_id The recording id of the message that should be played on answering machines. If not supplied the recording_id will be used. use_amd must be true in order for this feature to work. uuid no send_at When the broadcast should be sent. (Ex: 2016-07-25T12:00:00+0000) timestamp no send_immediately Should the broadcast go out immediately? boolean no use_amd Using answering machine detection? boolean no send_email Also send an email to the contacts? boolean no accessaccount_id Schedule this broadcast as an access account. uuid no contacts List of contact information that should be sent the broadcast. Contact Attributes Name Description Type Required phone Contact's phone number. string yes firstname Contact's first name. string no lastname Contact's last name. string no email Contact's email address. string no list yes add_ons A list of feature add-ons for the calls. Push To Record Name Description Type Required type The add-on type. Option: record string yes add_message Add a generic add-on message. Name Description Type Required gender Options: M, F string yes message Option: record string yes object no Push To Talk Name Description Type Required type The add-on type. Option: ptt string yes callerid_id Phone number to connect the caller to. uuid yes ringtone The ringtone to play to the user when connecting. Options: elevator_music, caribbean_music, classical_music, digital_ringing, old_phone_ringing, goofy_music string no cpm Calls per minute throttling. integer no add_message Add a generic add-on message. Name Description Type Required gender Options: M, F string yes message Options: pttmessage, pttmessage2, pttmessage3 string yes object no Polling Name Description Type Required type The add-on type. Option: polling string yes options A list of polling options. list yes add_message Add a generic add-on message. Name Description Type Required gender Options: M, F string yes message Option: polling string yes object no Push To Opt-Out Name Description Type Required type The add-on type. Option: optout string yes add_message Add a generic add-on message. Name Description Type Required when Options: beginning, end string yes gender Options: M, F string yes message Option: optnotreceive string yes object no Push To Listen Again Name Description Type Required type The add-on type. Option: listen string yes add_message Add a generic add-on message. Name Description Type Required gender Options: M, F string yes message Option: repeat string yes object no list no Response Returns a call service object on success, and returns an error otherwise. Examples How to send a call curl -i -H "Content-Type: application/json" -X POST -d "{\"name\": \"Test\", \"callerid_id\": \"8bc6748e-d8a0-11e4-8b2d-00163e603cea\", \"recording_id\": \"079ff28a-1b75-11e5-88eb-00163e603cea\", \"send_immediately\": true, \"use_amd\": true, \"contacts\": [{\"phone\":\"1116551235\"},{\"phone\":\"1116551234\"}]}" https://$API_KEY@api.dialmycalls.com/2.0/service/call Get Call GET https://{ApiKey}@api.dialmycalls.com/2.0/service/call/{CallId} Retrieve a call. Response Returns a call service object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a call curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/service/call/$CALL_ID Cancel Call DELETE https://{ApiKey}@api.dialmycalls.com/2.0/service/call/{CallId} Cancel an outgoing call. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this call. uuid Examples How to cancel an outgoing call curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/service/call/$CALL_ID Get Call Recipients GET https://{ApiKey}@api.dialmycalls.com/2.0/service/call/{CallId}/recipients Retrieve a list of a call's recipients. Response Returns a list of call recipient objects if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a list of a call's recipients curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/service/call/$CALL_ID/recipients List Calls GET https://{ApiKey}@api.dialmycalls.com/2.0/service/calls Retrieve a list of calls. Response Returns a list of call service objects. Examples How to retrieve a list of calls curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/service/calls Add Contact POST https://{ApiKey}@api.dialmycalls.com/2.0/contact Add a contact to your contact list. Request Name Description Type Required firstname The contact's first name. string no lastname The contact's last name. string no phone The contact's phone number. string yes extension The contact's phone extension. string no email The contact's email address. string no extra1 Miscellaneous data about this contact. string no groups List of group IDs that this contact should belong to. list no Response Returns a contact object on success, and returns an error otherwise. Examples How to add a contact curl -i -H "Content-Type: application/json" -X POST -d "{\"phone\": \"5555555555\"}" https://$API_KEY@api.dialmycalls.com/2.0/contact Get Contact GET https://{ApiKey}@api.dialmycalls.com/2.0/contact/{ContactId} Retrieve a contact to your contact list. Response Returns a contact object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a contact curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/contact/$CONTACT_ID Update Contact PUT https://{ApiKey}@api.dialmycalls.com/2.0/contact/{ContactId} Update an existing contact in your contact list. Request Name Description Type Required firstname The contact's first name. string no lastname The contact's last name. string no phone The contact's phone number. string yes extension The contact's phone extension. string no email The contact's email address. string no extra1 Miscellaneous data about this contact. string no groups List of group IDs that this contact should belong to. list no Response Returns a contact object if a valid identifier was provided and input validation passed, and returns an error otherwise. Examples How to update a contact curl -i -H "Content-Type: application/json" -X PUT -d "{\"phone\": \"5555555555\"}" https://$API_KEY@api.dialmycalls.com/2.0/contact/$CONTACT_ID Delete Contact DELETE https://{ApiKey}@api.dialmycalls.com/2.0/contact/{ContactId} Delete a contact from your contact list. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this contact. uuid Examples How to delete a contact curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/contact/$CONTACT_ID List Contacts GET https://{ApiKey}@api.dialmycalls.com/2.0/contacts Retrieve a list of contacts. Response Returns a list of contact objects. Examples How to retrieve a list of contacts curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/contacts List Contacts in Group GET https://{ApiKey}@api.dialmycalls.com/2.0/contacts/{GroupId} Retrieve a list of contacts in a contact group. Response Returns a list of contact objects. Examples How to retrieve a list of contacts for a contact group curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/contacts/$GROUP_ID Add Group POST https://{ApiKey}@api.dialmycalls.com/2.0/group Add a contact group. Request Name Description Type Required name The contact group's name. string yes Response Returns a group object on success, and returns an error otherwise. Examples How to add a contact group curl -i -H "Content-Type: application/json" -X POST -d "{\"name\": \"Test Group\"}" https://$API_KEY@api.dialmycalls.com/2.0/group Get Group GET https://{ApiKey}@api.dialmycalls.com/2.0/group/{GroupId} Retrieve a contact group. Response Returns a group object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a contact group curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/group/$GROUP_ID Update Group PUT https://{ApiKey}@api.dialmycalls.com/2.0/group/{GroupId} Update an existing contact group. Request Name Description Type Required name The contact group's name. string yes Response Returns a group object if a valid identifier was provided and input validation passed, and returns an error otherwise. Examples How to update a contact group curl -i -H "Content-Type: application/json" -X PUT -d "{\"name\": \"Test Group Updated\"}" https://$API_KEY@api.dialmycalls.com/2.0/group/$GROUP_ID Delete Group DELETE https://{ApiKey}@api.dialmycalls.com/2.0/group/{GroupId} Delete a contact group. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this contact group. uuid Examples How to delete a contact group curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/group/$GROUP_ID List Groups GET https://{ApiKey}@api.dialmycalls.com/2.0/groups Retrieve a list of contact groups. Response Returns a list of group objects. Examples How to retrieve a list of contact groups curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/groups Get Keyword GET https://{ApiKey}@api.dialmycalls.com/2.0/keyword/{KeywordId} Retrieve a keyword. Response Returns a keyword object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a keyword curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/keyword/$KEYWORD_ID Delete Keyword DELETE https://{ApiKey}@api.dialmycalls.com/2.0/keyword/{KeywordId} Delete a keyword. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this keyword ID. uuid Examples How to delete a keyword curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/keyword/$KEYWORD_ID List Keywords GET https://{ApiKey}@api.dialmycalls.com/2.0/keywords Retrieve a list of keywords. Response Returns a list of keyword objects. Examples How to retrieve a list of keywords curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/keywords Create Recording (Text-to-Speech) POST https://{ApiKey}@api.dialmycalls.com/2.0/recording/tts Create a new recording using text-to-speech. Request Name Description Type Required name The name of the recording. string yes gender Gender of the recording. Options: M or F string yes language The language of the recording. Options: en, es string yes text The text to convert to speech. string yes Response Returns a recording object on success, and returns an error otherwise. Examples How to create a recording using text-to-speech curl -i -H "Content-Type: application/json" -X POST -d "{\"name\": \"Test Recording\", \"gender\": \"M\", \"language\": \"en\", \"text\": \"This is just a test.\"}" https://$API_KEY@api.dialmycalls.com/2.0/recording/tts Create Recording (URL) POST https://{ApiKey}@api.dialmycalls.com/2.0/recording/url Create a new recording from a URL. Request Name Description Type Required name The name of the recording. string yes url The URL of the sound file. (Formats: MP3 or WAV) string yes Response Returns a recording object on success, and returns an error otherwise. Examples How to create a recording from the URL of a sound file curl -i -H "Content-Type: application/json" -X POST -d "{\"name\": \"Test Recording\", \"url\": \"https://ia700200.us.archive.org/1/items/testmp3testfile/mpthreetest.mp3\"}" https://$API_KEY@api.dialmycalls.com/2.0/recording/url Create Recording (Phone) POST https://{ApiKey}@api.dialmycalls.com/2.0/recording/phone Create a new recording by phone. Request Name Description Type Required name The name of the recording. string yes callerid_id The caller id that the create recording message should be sent from. uuid no whitelabel Add or remove the DialMyCalls intro message. boolean no phone The recipient's phone number who will record the message. string yes extension The recipient's phone extension up to 10 numeric digits. string no Response Returns a recording object on success, and returns an error otherwise. Examples How to create a recording from the URL of a sound file curl -i -H "Content-Type: application/json" -X POST -d "{\"name\": \"Test Recording\", \"phone\": \"5551234567\", \"callerid_id\": \"$CALLERID_ID\"}" https://$API_KEY@api.dialmycalls.com/2.0/recording/phone Get Recording GET https://{ApiKey}@api.dialmycalls.com/2.0/recording/{RecordingId} Retrieve a recording. Response Returns a recording object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a recording curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/recording/$RECORDING_ID Update Recording PUT https://{ApiKey}@api.dialmycalls.com/2.0/recording/{RecordingId} Update an existing recording. Request Name Description Type Required name The recording's name. string yes Response Returns a recording object if a valid identifier was provided and input validation passed, and returns an error otherwise. Examples How to update a recording curl -i -H "Content-Type: application/json" -X PUT -d "{\"name\": \"Test Recording Updated\"}" https://$API_KEY@api.dialmycalls.com/2.0/recording/$RECORDING_ID Delete Recording DELETE https://{ApiKey}@api.dialmycalls.com/2.0/recording/{RecordingId} Delete a recording. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this recording. uuid Examples How to delete a recording curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/recording/$RECORDING_ID List Recordings GET https://{ApiKey}@api.dialmycalls.com/2.0/recordings Retrieve a list of recordings. Response Returns a list of recording objects. Examples How to retrieve a list of recordings curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/recordings Create Text POST https://{ApiKey}@api.dialmycalls.com/2.0/service/text Create an outgoing text broadcast. Request Name Description Type Required name Name the broadcast. string yes keyword_id The keyword id that should be associated with this broadcast. uuid yes messages List of messages to send (up to 10). list yes send_at When the broadcast should be sent. (Ex: 2016-07-25T12:00:00+0000) timestamp no send_immediately Should the broadcast go out immediately? boolean no send_email Also send an email to the contacts? boolean no accessaccount_id Schedule this broadcast as an access account. uuid no shortcode_id The shortcode id that the broadcast will be sent from. uuid no concatenate_sms Combine all SMS messages into 1 message on the end users device. boolean no contacts List of contact information that should be sent the broadcast. Contact Attributes Name Description Type Required phone Contact's phone number. string yes firstname Contact's first name. string no lastname Contact's last name. string no email Contact's email address. string no list yes Response Returns a service object on success, and returns an error otherwise. Examples How to send a text curl -i -H "Content-Type: application/json" -X POST -d "{\"keyword_id\": \"dfe49537-a0a8-4f4a-98a1-e03df388af11\", \"send_immediately\": true,\"messages\": [\"Testing testing\"], \"contacts\": [{\"phone\":\"1116551235\"},{\"phone\":\"1116551234\"}]}" https://$API_KEY@api.dialmycalls.com/2.0/service/text Get Text GET https://{ApiKey}@api.dialmycalls.com/2.0/service/text/{TextId} Retrieve a text. Response Returns a service object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a text curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/service/text/$TEXT_ID Cancel Text DELETE https://{ApiKey}@api.dialmycalls.com/2.0/service/text/{TextId} Cancel an outgoing text. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this text. uuid Examples How to cancel an outgoing text curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/service/text/$TEXT_ID Get Text Recipients GET https://{ApiKey}@api.dialmycalls.com/2.0/service/text/{TextId}/recipients Retrieve a list of a text's recipients. Response Returns a list of text recipient objects if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a list of an text's recipients curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/service/text/$TEXT_ID/recipients List Texts GET https://{ApiKey}@api.dialmycalls.com/2.0/service/texts Retrieve a list of texts. Response Returns a list of service objects. Examples How to retrieve a list of texts curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/service/texts Get Incoming Text GET https://{ApiKey}@api.dialmycalls.com/2.0/incoming/text/{TextId} Retrieve a text. Response Returns a Incoming Text object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a text curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/incoming/text/$TEXT_ID Delete Incoming Text DELETE https://{ApiKey}@api.dialmycalls.com/2.0/incoming/text/{TextId} Delete a incoming text. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this text. uuid Examples How to cancel an outgoing text curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/incoming/text/$TEXT_ID List Incoming Texts GET https://{ApiKey}@api.dialmycalls.com/2.0/incoming/texts Retrieve a list of texts. Response Returns a list of Incoming Text objects. Examples How to retrieve a list of texts curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/incoming/texts Get Vanity Number GET https://{ApiKey}@api.dialmycalls.com/2.0/vanitynumber/{VanityNumberId} Retrieve a vanity number. Response Returns a vanitynumber object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve a vanity number curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/vanitynumber/$VANITYNUMBER_ID Update Vanity Number PUT https://{ApiKey}@api.dialmycalls.com/2.0/vanitynumber/{VanityNumberId} Update a vanity number. Request Name Description Type Required call_options The options to include when the number is called. If an option is not included it will be turned off. Option values should be boolean. Possible values are: 'voicemail' (Leave A Message), 'ptt' (Push To Talk), 'optin' (Opt-In), 'repeat' (Repeat Your Message) -- Note: Optout cannot be removed without prior authorization. Please contact customer support for this. array no recording_source Where the recording will be generated from. (specific, lastsent, lastuploaded) string no specific_recording_id Unique identifier for the recording if recording_source is set to specific. uuid no play_cta Setting this to true our system will play the prompts for keys to be pushed. boolean no ptt_number_id This is a verified caller id that is on your account. This will be used if PTT option is used. uuid no Response Returns a vanitynumber object if a valid identifier was provided, and returns an error otherwise. Examples How to update a caller ID curl -i -H "Content-Type: application/json" -X PUT -d "{\"ptt_number_id\":\"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeee\",\"call_options\":{\"voicemail\":true}}" https://$API_KEY@api.dialmycalls.com/2.0/vanitynumber/$VANITYNUMBER_ID Delete Vanity Number DELETE https://{ApiKey}@api.dialmycalls.com/2.0/vanitynumber/{VanityNumberId} Delete a vanity number. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this vanity number ID. uuid Examples How to delete a vanitynumber curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/keyword/$VANITYNUMBER_ID List Vanity Numbers GET https://{ApiKey}@api.dialmycalls.com/2.0/vanitynumbers Retrieve a list of vanity numbers. Response Returns a list of vanitynumber objects. Examples How to retrieve a list of vanity numbers curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/vanitynumbers Get Vanity Voicemails GET https://{ApiKey}@api.dialmycalls.com/2.0/vanitynumber/{VanityNumberId}/voicemails Retrieve a list of vanity voicemails. Response Returns a list of vanity number voicemail objects. Examples How to retrieve a list of vanity numbers curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/vanitynumber/$VANITYNUMBERID/voicemails Get Vanity Voicemail GET https://{ApiKey}@api.dialmycalls.com/2.0/vanitynumber/{VanityNumberId}/voicemail/{VanityVoicemailId} Retrieve a vanity voicemail. Response Returns a list of vanity number voicemail objects. Examples How to retrieve a list of vanity numbers curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/vanitynumber/$VANITYNUMBERID/voicemail/$VANITYVOICEMAILID Delete Vanity Voicemail DELETE https://{ApiKey}@api.dialmycalls.com/2.0/vanitynumber/{VanityNumberId}/voicemail/{VanityVoicemailId} Delete a vanity voicemail. Response Returns a list of vanity number voicemail objects. Examples How to retrieve a list of vanity numbers curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/vanitynumber/$VANITYNUMBERID/voicemail/$VANITYVOICEMAILID Add Access Account POST https://{ApiKey}@api.dialmycalls.com/2.0/accessaccount Add a access account. Request Name Description Type Required email The email address for this access account. string yes password The password for this access account. Requirements: 8 characters, 1 digit, 1 upper case character. string yes name The name for this access account. string yes Response Returns a access account object on success, and returns an error otherwise. Examples How to add a access account curl -i -H "Content-Type: application/json" -X POST -d "{\"email\": \"test@test.com\", \"password\": \"1234A5678\", \"name\": \"John Doe\"}" https://$API_KEY@api.dialmycalls.com/2.0/accessaccount Get Access Account GET https://{ApiKey}@api.dialmycalls.com/2.0/accessaccount/{AccessAccountId} Retrieve an access account. Response Returns a access account object if a valid identifier was provided, and returns an error otherwise. Examples How to retrieve an access account curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/accessaccount/$ACCESSACCOUNT_ID Update Access Account PUT https://{ApiKey}@api.dialmycalls.com/2.0/accessaccount/{AccessAccountId} Update an existing access account. Request Name Description Type Required email The email address for this access account. string no password The password for this access account. Requirements: 8 characters, 1 digit, 1 upper case character. string no name The name for this access account. string no Response Returns a access account object if a valid identifier was provided and input validation passed, and returns an error otherwise. Examples How to update a access account curl -i -H "Content-Type: application/json" -X PUT -d "{\"name\": \"New Name\"}" https://$API_KEY@api.dialmycalls.com/2.0/accessaccount/$ACCESSACCOUNT_ID Delete Access Account DELETE https://{ApiKey}@api.dialmycalls.com/2.0/accessaccount/{AccessAccountId} Delete a access account. Response Returns the following if a valid identifier was provided, and returns an error otherwise. Name Description Type id Unique identifier for this access account. uuid Examples How to delete an access account curl -i -H "Content-Type: application/json" -X DELETE https://$API_KEY@api.dialmycalls.com/2.0/accessaccount/$ACCESSACCOUNT_ID List Access Accounts GET https://{ApiKey}@api.dialmycalls.com/2.0/accessaccounts Retrieve a list of access accounts. Response Returns a list of access account objects. Examples How to retrieve a list of access accounts curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/accessaccounts List DoNotContacts GET https://{ApiKey}@api.dialmycalls.com/2.0/donotcontacts Retrieve a list of donotcontacts. Response Returns a list of donotcontact objects. Examples How to retrieve a list of donotcontacts curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/donotcontacts List Shortcodes GET https://{ApiKey}@api.dialmycalls.com/2.0/shortcodes Retrieve a list of shortcodes. Response Returns a list of shortcode objects. Examples How to retrieve a list of shortcodes curl -i -H "Content-Type: application/json" -X GET https://$API_KEY@api.dialmycalls.com/2.0/shortcodes Objects Account This object represents your account information. Attributes Name Description Type credits_available The amount of credits available on your account. float created_at When your account was created. timestamp Caller ID This object represents a phone number that can be used as the caller ID when placing a call. Attributes Name Description Type id Unique identifier for this caller ID. uuid name The name of the caller ID. string phone The caller ID phone number. string approved Whether this caller ID is approved for use. boolean created_at When the caller id was created. timestamp updated_at When the caller id was last updated. timestamp Access Account This object represents an access account that can be used as a sub-account. Attributes Name Description Type id Unique identifier for this access account. uuid name The name of the access account. string email The access account email address. string created_at When the access account was created. timestamp updated_at When the access account was last updated. timestamp Call Recipient This object represents the recipient of a call. Attributes Name Description Type firstname The recipient's first name. string lastname The recipient's last name. string miscellaneous Miscellaneous information. string email The recipient's email address. string phone The recipient's phone number. string extension The recipient's phone extension. string status Status of the call. Options: live_answer, vm, busy, no_answer, dialing, not_connected, queued string duration Duration of the call in seconds. integer add_on Result from add-on feature. Name Description Type type The type of add-on we received the result for. string result The add-on result. string list attempts Number of attempts to call was made. string successful Whether the call was successful or not. boolean called_at When the recipient was contacted. timestamp Contact This object represents a contact that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this contact. uuid firstname The contact's first name. string lastname The contact's last name. string miscellaneous Miscellaneous information. string phone The contact's phone number. string extension The contact's phone extension. string email The contact's email address. string extra1 Miscellaneous data about this contact. string groups List of groups that this contact belongs to. Name Description Type id Unique identifier for this group. uuid list created_at When the contact was created. timestamp updated_at When the contact was last updated. timestamp Group This object represents a contact group that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this group. uuid name The group name. string contacts_count The number of contacts in the group. int created_at When the group was created. timestamp updated_at When the group was last updated. timestamp Keyword This object represents a keyword that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this keyword. uuid keyword The keyword. string status The status of the keyword. Options: active, pendingdelete, onhold, billingdecline string created_at When the keyword was created. timestamp updated_at When the keyword was last updated. timestamp Incoming Text This object represents a incoming text that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this text. uuid from_number The phone number the text message was sent from. string to_number The phone number the text message was sent to. string message The text message that was sent. This data is URL encoded. string created_at When the text message was created. timestamp updated_at When the text message was last updated. timestamp Shortcode This object represents a shortcode that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this shortcode. uuid shortcode The shortcode. string created_at When the keyword was created. timestamp updated_at When the keyword was last updated. timestamp DoNotContact This object represents a donotcontact that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this group. uuid phone The phone number that is on the donotcontact list. string type The type of the donotcontact. Options: call, text string created_at When the donotcontact was created. timestamp updated_at When the donotcontact was last updated. timestamp Recording This object represents a recording that can be used for placing calls. Attributes Name Description Type id Unique identifier for this recording. uuid name The recording name. string type The recording type. Options: text or sound string seconds The length of the recording. integer url The URL of the recording file. string processed Whether the recording is ready for use. boolean created_at When the recording was created. timestamp updated_at When the recording was last updated. timestamp Call Service This object represents a service call. Attributes Name Description Type id Unique identifier for this service. uuid accessaccount_id Unique identifier for the access account which initiated this if available. uuid name The name of the service. string recording_id Unique identifier for the recording. uuid pending_cancel Whether the service has been flagged to be cancelled. boolean credit_cost The amount of credits required to schedule this service. float total_recipients The amount of recipients for this service. int send_at When the service will be sent. timestamp created_at When the service was created. timestamp updated_at When the service was last updated. timestamp Service This object represents a service email/text. Attributes Name Description Type id Unique identifier for this service. uuid accessaccount_id Unique identifier for the access account which initiated this if available. uuid name The name of the service. string pending_cancel Whether the service has been flagged to be cancelled. boolean credit_cost The amount of credits required to schedule this service. float total_recipients The amount of recipients for this service. int send_at When the service will be sent. timestamp created_at When the service was created. timestamp updated_at When the service was last updated. timestamp Text Recipient This object represents the recipient of a text. Attributes Name Description Type firstname The recipient's first name. string lastname The recipient's last name. string email The recipient's email address. string phone The recipient's phone number. string status Status of the text. Options: delivered, undeliverable, enroute, unknown, non_mobile, queued string successful Whether the text was successful or not. boolean Vanity Number This object represents a vanity number that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this vanity number. uuid phone The phone number. string status The status of the vanity number. Options: active, onhold, billingdecline, pendingdelete string minutes_used The amount of minutes used since last billing. float minutes_allowed The amount of minutes included with the vanity number before billed additionally. float voicemails_new The amount of voicemails that have not been downloaded. integer voicemails_old The amount of voicemails that have been downloaded. integer next_bill_date The next billing date for this vanity number. date created_at When the vanity number was created. timestamp updated_at When the vanity number was last updated. timestamp Vanity Number Voicemail This object represents a vanity number voicemail that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this voicemail. uuid from_phone The phone number who left the voicemail. string url The URL for the voicemail recording. string duration The duration of the recording in seconds. integer created_at When the voicemail was created. timestamp updated_at When the voicemail was last updated. timestamp Identifier This object represents a identifier that exists on the DialMyCalls.com platform. Attributes Name Description Type id Unique identifier for this access account. uuid