HTTP OUT trunk#
An HTTP OUT trunk lets your application send outbound SMS from your DID numbers through the DIDWW Outbound SMS API. Your application submits each message to DIDWW over HTTPS. When a Callback URL is configured on the trunk, DIDWW sends status callbacks for the message to that URL. This enables direct integration with your own systems or third-party services.
The trunk provides the API credentials, the IP addresses allowed to submit requests, and the DID numbers that can be used as the sender ID. It handles outbound messages only. An HTTP OUT trunk is not assigned to DID numbers and cannot be added to SMS trunk groups. To receive inbound SMS, use an inbound trunk such as an HTTP IN trunk.
How HTTP OUT trunks work#
Your application sends each message to the Outbound SMS API and authenticates with the trunk’s credentials. DIDWW accepts the request only if the credentials are valid and, when Allowed IP addresses is set, the request comes from an allowed IP address. DIDWW then processes the message, checks that its source address is allowed on the trunk, and routes it to the destination carrier. When a Callback URL is configured, DIDWW sends a status callback to it after processing.
%%{init: {
"theme": "base",
"themeVariables": {
"fontSize": "14px",
"primaryColor": "#e0f2fe",
"primaryBorderColor": "#38bdf8",
"primaryTextColor": "#1f2d3d",
"secondaryColor": "#ccfbf1",
"secondaryBorderColor": "#2dd4bf",
"secondaryTextColor": "#1f2d3d",
"lineColor": "#0066cc",
"textColor": "#1f2d3d",
"nodeTextColor": "#1f2d3d",
"edgeLabelBackground": "#ffffff"
}
}}%%
flowchart LR
app["Your application"] --> |submits message with trunk credentials| api["DIDWW Outbound SMS API"]
api --> |routes message| carrier["Destination carrier"]
carrier --> recipient["Recipient"]
api --> |status callbacks, if configured| callback["Your Callback URL"]
classDef endpoint fill:#e0f2fe,stroke:#0066cc,color:#1f2d3d,stroke-width:1.5px
classDef process fill:#ccfbf1,stroke:#2dd4bf,color:#1f2d3d,stroke-width:1.5px
class app,recipient,callback endpoint
class api,carrier process
linkStyle default stroke:#0066cc,stroke-width:1.5px
The API response to your request confirms only that DIDWW accepted the message for processing. It is not proof of delivery. To receive the processing result, configure a Callback URL. To also receive the final delivery status, enable DLR events. See Status callbacks and delivery receipts. Messages sent through the trunk also appear in Outbound SMS logs.
You can also send a single message through the trunk from the DIDWW User Panel, for example to test it. Production traffic is sent through the Outbound SMS API.
Credentials and access#
DIDWW generates a username and password for each HTTP OUT trunk. Your application sends them with every API request using HTTP Basic Authentication. Regenerating the credentials replaces both the username and the password immediately, and every integration that uses the old credentials must be updated.
Allowed IP addresses adds a second layer of protection. When the field contains IP addresses, the API rejects requests from any other source. When it is empty, requests from all IP addresses are allowed. For both layers, see Authentication.
The trunk credentials list one API endpoint for each DIDWW location, US, NY and NL, AMS. HTTP OUT trunks have no location setting. To use a location, send your requests to its endpoint. API requests are also subject to a rate limit.
Sender IDs#
The sender ID, also called the source address, depends on the type of message:
P2P messages use one of your DID numbers as the sender ID. By default, all DIDs with Outbound P2P SMS enabled in your account can be used. In Source Address Settings, you can limit the trunk to specific DID numbers. See P2P Outbound SMS access.
A2P messages use a verified Sender ID, such as an Alphanumeric Sender ID. Associate an active Sender ID Verification with the HTTP OUT trunk.
If a message uses a source address that the trunk does not allow, DIDWW does not send it. When a Callback URL is configured, the status callback reports the error. See Source address settings.
Get started#
Create a trunk, get its credentials, and submit your first message.
Set the trunk name, Callback URL, allowed IP addresses, and source addresses.
Get the username, password, and API endpoints for your application.
Submit a message from your application with the trunk credentials.
Manage trunks and credentials#
Test sending, replace credentials, and keep trunk settings up to date.
Send a test or one-time message through an HTTP OUT trunk.
Replace the trunk credentials and update every integration that uses them.
Edit trunk settings or delete trunks that are no longer required.
Technical references#
Find field definitions, defaults, formats, and the connection details of HTTP OUT trunks.
Look up request formats, attributes, and responses for sending SMS.
Understand the callbacks that DIDWW sends to your Callback URL.