There are three ways to find out what happened to an SMS sent through the SMS API

 PULL the status using the GET method of SMS/Messages resource

Example for linux command line: 

$ curl "https://<ExotelSid>:<ExotelToken><AccountSid>/SMS/Messages/4dd44cc0f7010ee43ca256126f3efc88"

Response can be in XML or JSON or CSV. More details in the developer page. 

Have Exotel PUSH the SMS status to you after delivery. 

  •     Pass an additional parameter "StatusCallback" in your SMS POST request 
  •     This parameter should be a valid URL that is hosted by you in one of your servers.
  •     Exotel will make a POST request to the above URL with the following parameters: "SmsSid", "Status" and "DateUpdated". 
  •     DetailedStatusCode and DetailedStatus fields are currently unavailable via StatusCallback

The various possible types of Status, DetailedStatus and DetailedStatusCode is being discussed in the Get SMS Details API page. 

Download reports

The various filters and columns available in reports are being discussed here