Skip to content

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 in credential
  • Other 46elks actions: Send SMS
  • Wiring up a graph that will send texts: build it against this action, then switch the step to send_sms once 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.

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.
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.

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]).

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.
  • On an agent with the connector capability. The managed environments have one, so this needs no agent of your own.
  • One POST request to api.46elks.com.
  • Any 4xx or 5xx fails the step, unless fail_on_error_status is false. retry: asks again after a 5xx, a 401, 408, 409, 423, 425 or 429, or a 4xx with Retry-After, and not after any other 4xx, which would get the same answer.
version: hyperspool-graph/v1
nodes:
- 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.