Snailer
Snailer

Reputation: 3839

How to receive webhook response to incoming messages on Twilio SMS Service

I'm using the Twilio API to create a Service that will send SMS. The Service should have its own unique webhook endpoint to receive replies (incoming SMS).

var service = ServiceResource.Create(
       friendlyName: Campaign.SMSCampaignDisplayName,
       usecase: "marketing",
       stickySender: true,
       useInboundWebhookOnNumber: false,
       inboundRequestUrl: new Uri($"<my site>/Admin/twilio/receive/{Campaign.SMSCampaignGuid}")
);
var message = MessageResource.Create(
       body: Campaign.SMSCampaignBody,
       from: new PhoneNumber(fromNumber),
       to: new PhoneNumber(Campaign.SMSCampaignTo),
       messagingServiceSid: service.Sid
);

The Service is created and the SMS is successfully sent. In the Twilio console I can see the service has the correct webhook URL:

webhook

But when I respond to the SMS, the webhook is not sent. In fact, the incoming message no longer appears in the Twilio console's Monitor > Messaging logs. Note that webhooks and incoming SMS logging was working fine when I was not using a Service and the incoming SMS webhook was defined on the sender phone number.

What am I missing, or is this some issue with Services? Do I need to add a Sender to the Service even though it's sending fine? How do I get the phoneNumberSid?

Edit

I'm dumb, I could have just tested adding the phone number to the Service manually. That indeed did work, but I need to do it programmatically. I'm not having much luck finding the API/endpoint to get the correct phoneNumberSid for this call, does it not exist?

Upvotes: 2

Views: 3444

Answers (1)

Alan
Alan

Reputation: 10771

You can use the IncomingPhoneNumber resource, as documented below, to get the Phone Number SID.

List all IncomingPhoneNumber resources for your account

Upvotes: 3

Related Questions