Trendsic Platform Service

<back to all web services

IncomingRecruitmentSMSRequest

The following routes are available for this service:
POST,OPTIONS/v1/sms/recruitment/reply
import Foundation
import ServiceStack

public class IncomingRecruitmentSMSRequest : SmsRequest
{
    required public init(){ super.init() }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
    }
}

public class SmsRequest : TwilioRequest
{
    public var messageSid:String
    public var smsSid:String
    public var body:String
    public var messageStatus:String
    public var optOutType:String
    public var messagingServiceSid:String
    public var numMedia:Int
    public var referralNumMedia:Int

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case messageSid
        case smsSid
        case body
        case messageStatus
        case optOutType
        case messagingServiceSid
        case numMedia
        case referralNumMedia
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        messageSid = try container.decodeIfPresent(String.self, forKey: .messageSid)
        smsSid = try container.decodeIfPresent(String.self, forKey: .smsSid)
        body = try container.decodeIfPresent(String.self, forKey: .body)
        messageStatus = try container.decodeIfPresent(String.self, forKey: .messageStatus)
        optOutType = try container.decodeIfPresent(String.self, forKey: .optOutType)
        messagingServiceSid = try container.decodeIfPresent(String.self, forKey: .messagingServiceSid)
        numMedia = try container.decodeIfPresent(Int.self, forKey: .numMedia)
        referralNumMedia = try container.decodeIfPresent(Int.self, forKey: .referralNumMedia)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if messageSid != nil { try container.encode(messageSid, forKey: .messageSid) }
        if smsSid != nil { try container.encode(smsSid, forKey: .smsSid) }
        if body != nil { try container.encode(body, forKey: .body) }
        if messageStatus != nil { try container.encode(messageStatus, forKey: .messageStatus) }
        if optOutType != nil { try container.encode(optOutType, forKey: .optOutType) }
        if messagingServiceSid != nil { try container.encode(messagingServiceSid, forKey: .messagingServiceSid) }
        if numMedia != nil { try container.encode(numMedia, forKey: .numMedia) }
        if referralNumMedia != nil { try container.encode(referralNumMedia, forKey: .referralNumMedia) }
    }
}

public class TwilioRequest : Codable
{
    public var accountSid:String
    public var from:String
    public var to:String
    public var fromCity:String
    public var fromState:String
    public var fromZip:String
    public var fromCountry:String
    public var toCity:String
    public var toState:String
    public var toZip:String
    public var toCountry:String

    required public init(){}
}


Swift IncomingRecruitmentSMSRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/sms/recruitment/reply HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<SMSTwilioHookRoutes.IncomingRecruitmentSMSRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <AccountSid xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</AccountSid>
  <From xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</From>
  <FromCity xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</FromCity>
  <FromCountry xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</FromCountry>
  <FromState xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</FromState>
  <FromZip xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</FromZip>
  <To xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</To>
  <ToCity xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</ToCity>
  <ToCountry xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</ToCountry>
  <ToState xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</ToState>
  <ToZip xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</ToZip>
  <Body xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</Body>
  <MessageSid xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</MessageSid>
  <MessageStatus xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</MessageStatus>
  <MessagingServiceSid xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</MessagingServiceSid>
  <NumMedia xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">0</NumMedia>
  <OptOutType xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</OptOutType>
  <ReferralNumMedia xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">0</ReferralNumMedia>
  <SmsSid xmlns="http://schemas.datacontract.org/2004/07/Twilio.AspNet.Common">String</SmsSid>
</SMSTwilioHookRoutes.IncomingRecruitmentSMSRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

(string)