right  Talk To Us!

Inbound Calls

You set up an Inbound Service on a telephone number or SIP address to run one of your applications when it receives an inbound call.

Developer accounts include use of a range of dedicated test telephone numbers.

Continue Reading

Cloud Web Services Number Lookup

Number lookup

Aculab cloud has a facility that allows you to check the line type and the carrier name of a phone number.

 This is a low level API. For information on higher level APIs see the Web Services Language Wrappers
  • Check

    This is used to check the phone number line type, carrier and country.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/number_lookup/v1/check
    Methods:GET

    ParameterValueDescription
    phone_numberstringinternational format of the specified phone number

    Returns on success:

    A JSON object containing the following parameters:

    ParameterTypeAvailabilityDescription
    number_foundboolAlwaystrue if details for the specified phone number were found
    country_namestringIf number_found is truethe country name assigned to the specified phone number
    country_codestringIf number_found is true the three-letter ISO 3166-1 alpha-3 country code assigned to the specified phone number
    line_typestringIf number_found is truethe line type of the specified phone number. One of the following: mobile, landline, toll_free, voip, other.
    carrierstringIf number_found is true the name of the carrier which the specified phone number is registered with

    Example:

    https://ws-1-2-0.aculabcloud.net/number_lookup/v1/check?phone_number=443069990123

    Response:

    If successful you will receive the example JSON response:

    {
        "number_found": true,
        "country_name": "United States",
        "country_code": "USA",
        "line_type": "mobile",
        "carrier": "United States Cellular Corp. (U.S. Cellular)"
    }

    or

    {
        "number_found": false
    }

    Or on error an HTTP error containing a JSON response. For example:

    {
        "error": {
            "code": "400 Bad Request",
            "text": "Invalid phone number format",
            "link": "https://www.aculab.com/cloud/web-services/number-lookup/",
            "datetime": "2022-02-03_15:41:58"
        },
        "request": {
            "url": "/number_lookup/v1/check",
            "datetime": "2022-02-03_15:41:58"
        }
    }

    Charging information

    Each call to this web service is charged at a standard rate, whether the supplied phone number is found or not.

    Cost information is available on the pricing page on the Cloud Console and will be reflected in the monthly account statements.

Cloud Web Services Managing Inbound Telephone Numbers

Managing Inbound Telephone Numbers

This describes the web services that manage purchase and deletion of inbound telephone numbers.

Note:
Several regions available for purchase include non-ASCII characters in the name. In such a case, unicode must be provided. Each unicode character must be represented by its four digit \u code, for example, \u00f6 represents the ö character. The Mönchengladbach region in Germany, for example, would be purchased by specifying the "M\u00f6nchengladbach" name.

 This is a low level API. For information on higher level APIs see the Web Services Language Wrappers
  • Tel Purchase

    This purchases an inbound telephone number in the region, state (optional) and country you choose - for example London, United Kingdom. Please note that this service results in an immediate and subsequent monthly cost.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_purchase
    Methods:GET, POST

    ParameterValueDescription
    countrystringthe country where the number is located.
    statestring (required by some countries)the state where the number is located. Some countries require this to be specified.
    regionstringthe region where the number is located. This is a region name for geographic numbers or a number prefix for toll free or national numbers.
    regulation_addressstring (required by some countries)the name of registered regulation address that exists on the cloud account being used. Some countries require this to be specified. Regulation addresses can be registered here.
    quantityinteger (optional)the quantity of telephone numbers to purchase. Default is 1.
    based_onstring (optional)the name of an existing inbound service. If set then a new service will be created for each new number purchased, based on the specified service.
    allow_partialstring (optional)"True" or "False". Determines whether the request responds as having succeeded even if not all the requested telephone numbers are available. Defaults to "False".
    did_typestring (optional)the type of each new number purchased. One of "geographic", "national", "mobile" or "tollfree". Default is "geographic".
    allow_landlinestring (optional)"True" or "False". For toll free numbers only. "True" to allow calls from landline numbers. Otherwise calls from landlines are blocked. Defaults to "False".
    allow_cellularstring (optional)"True" or "False". For toll free numbers only. "True" to allow calls from cellular (mobile) phones. Otherwise calls from cell phones (mobiles) are blocked. Defaults to "False".
    allow_payphonestring (optional)"True" or "False". For toll free numbers only. "True" to allow calls from payphones. Otherwise calls from payphones are blocked. Defaults to "False".

    Note on toll free numbers: some countries and prefixes are not allowed to accept calls from certain types of phone - for example, cellular - and any user attempt to allow them will fail. At least one call type must be allowed for the purchase to go through. Toll free numbers incur an extra cost per minute. The amount is determined by the types of call that are allowed and the cost per minute for each call type.

    Returns:

    A JSON array containing the numbers purchased. A confirmation email is also sent to the account holder. Please note that the purchase may take several seconds to complete.

    Example:

    https://ws.aculabcloud.net/tel_purchase?country=Canada&state=Alberta&region=Calgary

    Response:

      [
        "15873155555"
      ]

    Example:

    https://ws.aculabcloud.net/tel_purchase?country=Spain&region=Bilbao&quantity=2

    Response:

      [
        "21887377377",
        "21846373876"
      ]

    Example:

    https://ws.aculabcloud.net/tel_purchase?country=Spain&region=901&quantity=3&did_type=tollfree&allow_landline=True&allow_payphone=True

    Response:

      [
        "90179198344",
        "90127397463",
        "90106358277"
      ]
  • Tel Purchase Development

    This mimics tel_purchase and is provided for development use. It does not result in a purchase so no cost is incurred.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_purchase_development
    Methods:GET, POST

    This service accepts parameters and generates a response with the same specifications as the tel_purchase service.
    When called with valid parameters it always responds with:

    Response:

      [
        "1234567",
        "89012345"
      ]
    
  • Tel List Numbers

    This lists purchased telephone numbers. It can be filtered by location.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_list_numbers
    Methods:GET, POST

    ParameterValueDescription
    countrystring (optional)the country where the number is located.
    statestring (optional for some countries)the state where the number is located.
    regionstring (optional)the region where the number is located. This is a region name for geographic numbers or a number prefix for toll free or national numbers.
    did_typestring (optional)the type of numbers to include in the list. One of "geographic", "national", "mobile" or "tollfree". Default is to list all types.

    Returns:

    A JSON object containing the existing telephone numbers with corresponding JSON objects containing their details.

    ParameterValueDescription
    countrystringthe country in which the number is located.
    statestringthe state in which the number is located. Only present for countries that have states.
    regionstringthe region in which the number is located.
    pricestringthe price per month for the number in US dollars.
    purchasedstringthe date on which the number was purchased in the format YYYY-MM-DD.
    did_typestringthe type of the number. One of "geographic", "national", "mobile" or "tollfree".

    Example:

    https://ws.aculabcloud.net/tel_list_numbers?country=United Kingdom

    Response:

      {
        "441908538007":
        {
      	  "country": "United Kingdom",
    	  "price": "3.00",
    	  "region": "Milton Keynes",
    	  "purchased": "2011-09-14",
    	  "did_type": "geographic"
        }
      }
  • Tel Delete Numbers

    This deletes one or more of the purchased telephone numbers.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_delete_numbers
    Methods:GET, POST

    ParameterValueDescription
    numbersstringa comma-separated list of the telephone numbers to delete.

    Returns:

    A JSON object containing the result of the deletion. If not all the numbers were deleted then the reasons for the deletion failure are included in the response.

    ParameterValueDescription
    statusstringa status string containing "OK" if all the specified numbers were deleted, "PARTIAL" if at least one, but not all the numbers were deleted and "FAIL" if none of the numbers were deleted.
    numbersJSON objectcontains the numbers not deleted and the reason.
    descriptionstringa description of the reason for the non deletion.
    codestringa numeric error code from Error Codes.

    Example:

    https://ws.aculabcloud.net/tel_delete_numbers?numbers=441908538007,441908538008,441908538009

    Response:

      {
        "status": "OK"
      }

    Example:

    https://ws.aculabcloud.net/tel_delete_numbers?numbers=441908538010,441908538011,441908538009

    Response:

      {
        "status": "PARTIAL",
        "numbers":
        {
          "441908538009":
          {
            "description": "Telephone number 441908538009 does not belong to you",
            "code": "0300"
          }
        }
      } 
  • Tel Get Supported Countries

    This obtains a list of the countries for which telephone numbers can be purchased.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_get_supported_countries
    Methods:GET, POST

    ParameterValueDescription
    did_typestring (optional)the type of numbers supported by a country for that country to be listed. One of "geographic", "national", "mobile" or "tollfree". Default is "geographic".

    Returns:

    A JSON array containing the names of the countries supported.

    Example:

    https://ws.aculabcloud.net/tel_get_supported_countries

    Response:

      [
        "Israel", "Georgia", "Mexico", "Lithuania", "United Kingdom", "Netherlands",
        "Croatia", "Greece", "Switzerland", "Dominican Republic", "Brazil", "Romania",
        "Czech Republic", "El Salvador", "Poland", "South Africa", "Luxembourg", "Sweden",
        "Germany", "Peru", "Puerto Rico", "Hungary", "Norway", "Spain", "Canada", "Italy",
        "Denmark", "Finland", "United States", "Slovenia", "Ireland", "Argentina",
        "Cyprus", "Australia", "France", "New Zealand", "Latvia", "Slovakia", "Chile",
        "Belgium", "Japan", "Bulgaria"
      ]

    Example:

    https://ws.aculabcloud.net/tel_get_supported_countries?did_type=national

    Response:

      [
        "Israel", "Georgia", "Portugal", "South Africa", "United Kingdom", "Netherlands",
        "Singapore", "Austria", "Luxembourg", "Sweden",     "Germany", "Norway", "Spain",
        "Finland", "Malta", "Slovenia", "Ireland", "Bahrain", "Estonia", "Hong Kong",
        "Panama", "France", "Belgium"
      ]
  • Tel Get Supported States

    This obtains a list of the states in a specified country for which telephone numbers can be purchased. Note that not all countries support states.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_get_supported_states
    Methods:GET, POST

    ParameterValueDescription
    countrystringthe country in which to list the supported states.

    Returns:

    A JSON array containing the names of the states supported.

    Example:

    https://ws.aculabcloud.net/tel_get_supported_states?country=Canada

    Response:

      [
        "British Columbia", "Newfoundland And Labrador", "Saskatchewan", "Prince Edward Island",
        "Ontario", "Nova Scotia", "Quebec", "Alberta", "Manitoba", "New Brunswick"
      ]
  • Tel Get Supported Regions

    This obtains a list of the regions in a specified country for which telephone numbers can be purchased.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_get_supported_regions
    Methods:GET, POST

    ParameterValueDescription
    countrystringthe country in which to list the supported regions.
    statestring (optional for some countries)the state in which to list the supported regions.
    did_typestring (optional)the type of numbers supported by a region for that region to be listed. One of "geographic", "national", "mobile" or "tollfree". Default is "geographic".

    Returns:

    A JSON array containing the names or numbers of the regions supported. For "geographic" types, the region names are returned in the array. For "national" and "tollfree" types, the supported number prefixes are returned.

    Example:

    https://ws.aculabcloud.net/tel_get_supported_regions?country=Canada&state=Manitoba

    Response:

      [
        "Oakbank", "Winnipeg"
      ] 

    Example:

    https://ws.aculabcloud.net/tel_get_supported_regions?country=Canada&did_type=tollfree

    Response:

      [
        "855", "888", "866", "877"
      ] 
  • Tel List Regulation Addresses

    This lists any regulation addresses that have been registered on a cloud account. Some countries require an address to be specified when purchasing a telephone number. Regulation addresses can be registered here.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url:https://ws.aculabcloud.net/tel_list_regulation_addresses
    Methods:GET, POST

    Returns:

    A JSON object containing the address names. For each address a JSON object contains the location of the address.

    Example:

    https://ws.aculabcloud.net/tel_list_regulation_addresses

    Response:

      {
        "My french place":
        {
          "country": "France",
          "region": "Avignon"
        }
      }

Cloud Web Services Managing Messages

Managing Messages

You can send and receive both SMS and MMS messages using these web services.

For an overview of messaging see the Messaging Guide.

 When sending SMS or MMS messages to a US number, you will need to contact us to associate your caller ID with a prerequisite campaign registration.

How to receive messages

When messages are received on your numbers, you can choose to be notified via a page which you host on your web server. To make this work for one of your numbers:

  • Check that messaging is enabled on your number on the Cloud Console Telephone numbers page. A green envelope indicates it is enabled, red that is is disabled, in which case click on the envelope to enable messaging. If no envelope is displayed then messaging is not supported on your number.
  • If you've not already done so, create an Inbound Service for your number, and set the Notification Page to the URL or your web page that is going to receive the message notifications.
See Handling status updates to find out what is passed to your page when a message arrives.

Media received within an MMS messages will be stored in your cloud message media file store where you can download it. It will be retained for 30 days.

How to send messages

Messages are sent by making requests to the webservice. You do not need an Outbound Service. Status updates can optionally be posted to a page you host on your web server, in the same manner as received messages.

To send media via an MMS message, you will first need to upload your media eithe via the Cloud Console or using the Manage Files web service.

 This is a low level API. For information on higher level APIs see the Web Services Language Wrappers
  • Msg Send

    This queues an outbound message for sending.

    Note: sending messages to a US number requires setting up and registering a campaign (see the US-specific information in the Messaging Guide).

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url : https://ws.aculabcloud.net/msg_send
    Methods : GET, POST

    ParameterRequired/OptionalDefaultDescription
    to required the number of the phone you'd like to receive the message. This must be the full international number without any leading +.
    from required the number from which you'd like to send the message. This must be one of your purchased numbers, in full international format without any leading + or the name of a message number pool from which a number will be selected (contact us for more information).
    type optional sms Either sms or mms.
    content required for sms, optional for mms the textual content of your message. If this includes characters not present in standard 7-bit ASCII, encode them using UTF-8.
    msg_media required for mms, must be omitted for sms a msg_media file that has been uploaded to your cloud message media file store that is to be sent. Multiple files can be specified by providing either a comma separated list or by repeating this parameter.
    Any file type is allowed, though .gif, .jpg and .png files will have been checked for correct formatting when uploaded.
    request_delivery_report optional false true to request a delivery report. If true, note that the carrier must support delivery reports otherwise this web service will fail.
    status_page optional the URL of a page, if any, hosted on your web server to which message status updates will be sent. An empty string results in no updates being sent. See Handling status updates.
    status_method optional POST the method by which the above URL will be accessed, POST or GET.
    status_authentication_name optional perform basic authentication with this username when accessing the above URL. An empty string results in no basic authentication.
    status_authentication_password optional basic authentication password, ignored unless performing basic authentication.
    status_ssl_check optional false If using HTTPS, set true if you'd like Aculab Cloud to check your SSL certificate when accessing the above URL.
    alphanumeric_id optional A string that will be displayed (if supported) on the recipient’s handset instead of the from number.
    It is limited to 11 characters (A-Z, a-z, 0-9 and space).

    Support varies between countries. For some countries there may be requirements to provide extra documentary validation information before use of this feature is authorised (contact us for more information).

    Note: the recipient of a message delivered using an alphanumeric id cannot reply, as the from number will not be available.

    Returns:

    A JSON list containing one or more unique message reference ID strings. If your content was short enough to fit into a single message then this will return a single reference ID. Otherwise, your message will have been split into two or more separate message parts, and a reference ID string will be returned for each one.

    Example:

    https://ws.aculabcloud.net/msg_send?to=447743123456&from=447743654321&content=hello%20world

    Response:

      ["2e891aea_0.1566641192.77832"]
  • Msg Cancel

    This attempts to cancel one or more messages that have been queued for sending. Once a message has been taken off the queue to be sent, it cannot be cancelled. To cancel a message which was split into two or more underlying messages, you need supply only one of its message_refs and, if all its underlying messages are queued, they will be cancelled.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url : https://ws.aculabcloud.net/msg_cancel
    Methods : GET, POST

    ParameterRequired/OptionalDefaultDescription
    msg_refs required a list of message reference IDs (as returned by msg_send) delimited by the character /.

    Returns:

    A JSON object containing a cancellation status for each of the message references supplied, keyed by their message reference Id. The status for each message reference will be either: "success", "unknown" or "failed". "success" indicates that the message has been cancelled. "failed" indicates that the message reference was recognised but its message couldn't be cancelled, generally because it has already been sent. "unknown" indicates that the message reference was not recognised, either because it was incorrect or has expired.

    Example:

    https://ws.aculabcloud.net/msg_cancel?msg_refs=2e891aea_0.1366641192.77832/2e891aea_0.1366641192.77834

    Response:

      {
        "2e891aea_0.1566641192.77832" : "success",
        "2e891aea_0.1566641192.77834" : "unknown"
      }
  • Msg Status

    This retrieves the status of one or more messages given their message reference IDs.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url : https://ws.aculabcloud.net/msg_status
    Methods : GET, POST

    ParameterRequired/OptionalDefaultDescription
    msg_refs required a list of message reference IDs (as returned by msg_send) delimited by the character /.

    Returns on success:

    A JSON object containing an object providing status information for each of the message references supplied, keyed by their message reference ID. The object returned for each message reference has the following properties:

    Parameter Type Availability Description
    status string always one of "queued", "cancelled", "submitted to carrier", "sent", "delivered", "accepted", "failed (reason)", "received", "unknown". See the table below for descriptions.
    multipart_uid string for multipart messages only an ID for the overall message, shared by all its parts, which is unique among all recent messages in this direction.
    multipart_pos integer for multipart messages only position of this message part within the overall message, 1...multipart_count.
    multipart_count integer for multipart messages only number of message parts within the overall message.
    type string unless status is unknown Either "sms" or "mms".
    timestamp string unless status is unknown the date and time at which the status was last updated. Format is YYYY-MM-DD_hh:mm:ss, for example "2014-07-30_12:48:33".
    aculab_msg_err string unless status is unknown a numerical string representing more detailed information about the message status. Detailed information is only available on selected carriers, and will default to "001" if no further information available.
    msg_from string unless status is unknown The number the message was sent from.

    The status values have the following meanings:

    Value Description
    queued message is queued for sending.
    cancelled message has been cancelled using msg_cancel.
    submitted to carrier message has been submitted to the carrier.
    sent message has been sent by the carrier.
    delivered the carrier has reported delivery to the phone with number "to". Note that delivery is reported only if supported by the carrier and request_delivery_report was specified when calling msg_send.
    accepted message has been read on behalf of the phone owner by someone else. Note that acceptance is reported only if supported by the carrier and request_delivery_report was specified when calling msg_send.
    failed (reason) there was a problem sending the message, and the textual reason explains why.
    received message was received from the carrier.
    unknown msg_ref was not recognised.

    The aculab_msg_err values have the following meanings:

    Value Description
    000 OK - no problems detected.
    001 No more information available. The default return if the carrier does not support detailed information.
    100 Spam Detected - Statistical. Your message has been detected as spam, using a statistical analysis of your inbound to outbound message ratio. Encourage your customers to reply back to your outbound messages to improve your ratio.
    101 Spam Detected - Keyword. Your message has been detected as spam, using a keyword analysis. Remove any controversial keywords from your message.
    102 Spam Detected. Your message has been detected as spam, classified by an unknown method.
    200 Message submission failed.
    201 Destination application error.
    202 Message not acknowledged.
    203 Invalid service type.
    204 Invalid destination number.
    205 Invalid source number.
    206 Loop detected. Can occur when sending a message with the same sending and receiving number.
    207 Invalid scheduled delivery time.
    300 Unknown error. Please contact support if occurs repeatedly.
    301 Carrier could not accept messages. Try sending the message again shortly, indicates a temporary failure.
    302 Message not delivered to carrier.

    Example:

    https://ws.aculabcloud.net/msg_status?msg_refs=2e891aea_0.1366641192.00003/2e891aea_0.1366641192.00004/2e891aea_0.1366641192.00005

    Response:

      {
        "2e891aea_0.1566641192.00003":
        {
          "status": "sent",
          "multipart_uid": "0757e90d36e00db6_0.1413208356.1046",
          "multipart_pos": 1,
          "multipart_count": 2,
          "type": "sms",
          "timestamp": "2014-08-22_11:50:49"
        },
        "2e891aea_0.1566641192.00004":
        {
          "status": "sent",
          "multipart_uid": "0757e90d36e00db6_0.1413208356.1046",
          "multipart_pos": 2,
          "multipart_count": 2,
          "type": "sms",
          "timestamp": "2014-08-22_11:50:49"
        },
        "2e891aea_0.1566641192.00005":
        {
          "status": "queued",
          "type": "sms",
          "timestamp": "2014-08-22_11:50:49"
        },
      }
  • Msg List Blocked

    This lists the numbers to and from which you're currently blocked for sending messages.

    Authorisation

    This API uses basic authentication, using your cloud account username and API Access Key.

    Username : cloudID/username (e.g. 1-2-0/bob@example.com)
    Password : API Access key

    Request:

    Url : https://ws.aculabcloud.net/msg_list_blocked
    Methods : GET, POST

    ParameterRequired/OptionalDefaultDescription
    to optional, but either to or from is required a mobile number. The returned list will contain all your numbers which are blocked for sending to this number.
    from optional, but either to or from is required one of your numbers. The returned list will contain all mobile numbers which this number is blocked for sending to.

    When you send a message from one of your numbers, the person receiving it can reply asking you not to send them further messages from that number. Handling these messages is a legal requirement for long codes (regular numbers), so we handle it on Aculab Cloud. When we receive one of these messages - "STOP", "STOPALL", "UNSUBSCRIBE", "CANCEL", "END" or "QUIT" - we block all further attempts to send messages from your number to that person. If we later receive a message from them allowing you to resume sending messages from that number - "START" or "YES" - we unblock you. Your mobile customers can learn this by sending "HELP" or "INFO" to your number, and Aculab Cloud will reply with this information.

    Returns:

    A JSON array of objects containing the following information about each number blocked:

    Parameter Type Availability Description
    to string always the mobile number you're blocked for sending to.
    from string always your number you're blocked for sending from.
    timestamp string always the date and time at which the "STOP" message was received. Format is YYYY-MM-DD_hh:mm:ss, for example "2014-07-30_12:48:33".

    Example:

    https://ws.aculabcloud.net/msg_list_blocked?to=447714012345

    Response:

      [
        { "to": "447714012345", "from": "447714543210", "timestamp": "2014-10-21_10:51:23" }
      ]
  • Handling status updates

    When you send a message having provided a status_page, or receive a message on a number assocated with an Inbound Service that is configured for message notifications, your web page will be sent information about that message. Your web page handling the request must respond with a 200 status code. The body should be empty, but any body included in the response is ignored.

    For sent messages, we send this for important status changes such as when they've been sent.

    For received messages, we send this when they arrive.

    • If you asked for this information to be POSTed, we'll send you a JSON object in the body.
    • If you asked for it to be sent using a GET, we'll send you the same information as GET parameters.

    Note: some query string handlers don’t cope well with repeated values in query strings, which can occur when receiving multiple message media files in an mms message. For this reason, we recommend using POST.

    Parameter Type Availability Description
    msg_ref string Always a unique reference ID for this message. If it's a sent message, it was returned by msg_send.
    status string Always one of "submitted to carrier", "sent", "delivered", "accepted", "failed (reason)" or "received". Each of these values is described in the status table.
    to string Always the number of the phone receiving the message. A full international number without any leading +.
    from string Always the number of the phone sending the message. A full international number without any leading +.
    direction string Always "send" if the message is being sent from Aculab Cloud, "receive" if it's being received.
    type string Always Either "sms" or "mms".
    content string Received messages only the content of your message. If it includes characters not present in standard 7-bit ASCII, they'll be encoded as UTF-8.
    msg_media List of strings Received mms messages only the list of names of the files that have been received and stored in the message media file store. From there they can be downloaded. Note that they are only retained for 30 days.
    multipart_uid string Multipart messages only an ID for the overall message, shared by all its parts, which is unique among all recent messages in this direction.
    multipart_pos integer Multipart messages only position of this message part within the overall message, 1...multipart_count.
    multipart_count integer Multipart messages only number of message parts within the overall message.
    timestamp string Always the date and time at which the status was last updated. Format is YYYY-MM-DD_hh:mm:ss, for example "2014-07-30_12:48:33".
    aculab_msg_err string Always More detailed information about the status of the message, only available on selected carriers. See the aculab_msg_err table for possible return codes.

    Example GET query string:

    msg_ref=2e891aea_0.1566641192.77849&status=received&to=447743123456&from=447743654321&direction=receive&content=hello%20world&type=sms&timestamp=2014-08-22_11%3a50%3a49&aculab_msg_err=000
                            

    Example POST body:

      {
        "msg_ref": "2e891aea_0.1566641192.77849",
        "status": "received",
        "to": "447743123456",
        "from": "447743654321",
        "direction": "receive",
        "content": "hello world",
        "type": "sms",
        "timestamp": "2014-08-22_11:50:49",
        "aculab_msg_err": "000"
      }
                            

Cloud React Native

React Native SDK

You can use the Aculab Cloud React Native SDK to write voice and video apps to connect mobile (iOS and Android) users with your Aculab Cloud voice services, and to have them place voice and video calls to each other and to web pages which use our WebRTC browser interface.

This includes a demo app that will run on either iOS or Android and demonstrates how to use this SDK. It allows you to make calls to Aculab cloud services and to send DTMF. It also supports peer to peer video/audio calls.

Archive

The Aculab blog

News, views and industry insights from Aculab

  • The End of the PSTN in the US

    As the technical world has evolved, so has the way we communicate. The gradual, global transition away from the Public Switched Telephone Network (PSTN) is the most noticeable change in recent years. This begs the question, is the PSTN in the US headed towards a slow end as we transition into the digital era?

    Continue reading

  • Revolutionising the Landscape of Remote Authentication

    In a time where borders blur and workplaces extend beyond the confines of traditional offices, the significance of remote authentication has taken centre stage. As we advance, so does the need for secure and efficient ways to verify and authenticate our identity remotely. Finding the balance between security and user convenience is key when seeking to implement successful remote authentication.

     

    Continue reading

  • Choosing The Ideal Communication Platform: Key Considerations to Optimise Your Business

    Communication Platforms as a Service have become a necessity in the current digital age; allowing businesses to obtain frictionless means of communicating effectively. However, as technology rapidly evolves, so must communications. Much of the platforms on offer today are homogenous, so choosing the best fit for your business can be difficult. In this blog, we have shared some key points and trends for to consider, so your business can amplify communications and increase operational efficiency!

     

    Continue reading

  • 10 questions people are asking about The Big Switch Off

    With The Big Switch Off fast approaching, people naturally have questions and concerns ahead of the shutdown. The transition from conventional networks to digital technology is unavoidable in the fast-evolving world of telecommunications. In this blog, we address ten common questions people have about the Big PSTN Switch Off, shedding light on the topic and providing clarity.

     

    Continue reading

  • 3 Ways Your Business Can Benefit From a Communications Platform as a Service

    Acquiring a Communications Platform as a Service has become a very common trend for a variety of businesses in recent years. Even with AI and all the technological advancements that have been achieved, the world has come to realise that exceptional customer service is at the core of running and maintaining a successful business. So, we have identified a few ways in which a CPaaS could benefit your business!

    Continue reading