46elks: Send SMS (dry run, nothing sent)
Checks and prices a text message with 46elks without sending it.
- Kind:
46elks.send_sms_dryrun - Palette: Integrations, under 46elks
- Credential: a credential of kind
basic, named incredential - Other 46elks actions: Send SMS
When to use
Section titled “When to use”- Wiring up a graph that will send texts: build it against this action, then switch the step to
send_smsonce the numbers and wording are right. The inspector’s action picker keeps the inputs when you switch. - Checking what a templated message will cost before a run sends hundreds of them.
46elks validates the request as it would a real one, so a bad sender or number fails here too.
Connection (with)
Section titled “Connection (with)”| Field | Required | Description |
|---|---|---|
from |
yes | Who the text appears to come from: up to 11 letters and digits starting with a letter, or one of your 46elks numbers in E.164 form. A number is needed for the recipient to be able to reply. For example: Hyperspool or +46700000000. |
Input (input)
Section titled “Input (input)”| Field | Type | Required | Description |
|---|---|---|---|
to |
string | yes | Recipient in E.164 form, country code included: +46700000000. |
message |
string | yes | The text to price. Reported at output.body.estimated_cost, in 10000ths of your account currency. |
Settings
Section titled “Settings”Beside with and input in the node’s config.
| Field | Type | Required | Description |
|---|---|---|---|
credential |
string | yes | Name of the project credential the action authenticates with. |
fail_on_error_status |
boolean | no | Treat any 4xx/5xx as a failure. On by default: an action either did its job or did not. Default true. |
optional_when_untrusted |
boolean | no | Run without the credential when the run is untrusted (a fork pull request), instead of failing. The credential is still withheld. |
retry_on |
array | no | Status codes that fail the node instead of returning, so its retry: policy applies (e.g. [429, 503]). |
Output
Section titled “Output”The HTTP response. The reply is under body: nodes.<id>.output.body.<field>.
| Field | Type | Description |
|---|---|---|
status |
integer | The HTTP status code. |
headers |
object | The response headers. |
body |
object | The response body, parsed as JSON when it is JSON. |
body.estimated_cost |
integer | In 10000ths of the account currency. |
body.parts |
integer | How many messages the text would be split into. |
How it runs
Section titled “How it runs”- On an agent with the
connectorcapability. The managed environments have one, so this needs no agent of your own. - One
POSTrequest toapi.46elks.com. - Any 4xx or 5xx fails the step, unless
fail_on_error_statusisfalse.retry:asks again after a 5xx, a 401, 408, 409, 423, 425 or 429, or a 4xx withRetry-After, and not after any other 4xx, which would get the same answer.
Example
Section titled “Example”version: hyperspool-graph/v1nodes: - id: price type: 46elks.send_sms_dryrun config: credential: elks with: { from: Hyperspool } input: to: { $expr: "input.phone" } message: { $template: "Your order {{ input.order_id }} has shipped." } - id: show type: shell config: run: { $template: "echo {{ nodes.price.output.body.parts }} part(s), cost {{ nodes.price.output.body.estimated_cost }}" }edges: - { from: price, to: show }estimated_cost is in 10000ths of the account’s currency.
See Connectors for credentials and versions, and the node reference for every other node.