{ "kind": "open-flow-workflow", "version": 1, "name": "Send an Approved SMS with MSG91", "content": { "modelVersion": 14, "document": { "bindings": {}, "graph": { "nodes": { "n_8ea835bcf8699fae": { "name": "Start on demand", "kind": "start", "inputDefs": [] }, "n_3844dce26984d46f": { "inputs": { "templateId": { "kind": "value", "value": "YOUR_TEMPLATE_ID" }, "recipients": { "kind": "value", "value": [ { "mobile": "YOUR_RECIPIENT_NUMBER" } ] } }, "name": "Send the SMS", "kind": "task", "task": { "inputs": [ { "description": "The MSG91 Flow SMS template ID from the MSG91 dashboard.", "jsonSchema": { "type": "string", "minLength": 1, "description": "The MSG91 Flow SMS template ID from the MSG91 dashboard." }, "nullable": false, "handle": "templateId" }, { "description": "The SMS recipients and template variables to send.", "jsonSchema": { "type": "array", "items": { "type": "object", "properties": { "mobile": { "type": "string", "minLength": 1, "description": "Recipient mobile number in international format with country code and without a plus sign." }, "variables": { "type": "object", "additionalProperties": { "type": "string", "minLength": 1, "description": "One template variable value." }, "description": "Template variable values keyed by the exact MSG91 template placeholder name." } }, "required": [ "mobile" ], "additionalProperties": false, "description": "One recipient for an MSG91 Flow SMS template." }, "minItems": 1, "description": "The SMS recipients and template variables to send." }, "nullable": false, "handle": "recipients" }, { "description": "Whether MSG91 should enable this optional flag.", "jsonSchema": { "type": "boolean", "description": "Whether MSG91 should enable this optional flag." }, "nullable": true, "handle": "shortUrl", "value": null }, { "description": "The optional short URL expiry time in seconds when shortUrl is enabled.", "jsonSchema": { "type": "integer", "exclusiveMinimum": 0, "description": "The optional short URL expiry time in seconds when shortUrl is enabled." }, "nullable": true, "handle": "shortUrlExpirySeconds", "value": null }, { "description": "Whether MSG91 should enable this optional flag.", "jsonSchema": { "type": "boolean", "description": "Whether MSG91 should enable this optional flag." }, "nullable": true, "handle": "realTimeResponse", "value": null } ], "outputs": [ { "description": "Whether MSG91 accepted the message submission.", "jsonSchema": { "type": "boolean", "description": "Whether MSG91 accepted the message submission." }, "nullable": false, "handle": "accepted" }, { "description": "The MSG91 response type.", "jsonSchema": { "type": "string", "minLength": 1, "description": "The MSG91 response type." }, "nullable": false, "handle": "type" }, { "description": "The MSG91 response message when returned.", "jsonSchema": { "type": [ "string", "null" ], "description": "The MSG91 response message when returned." }, "nullable": true, "handle": "message" }, { "description": "The MSG91 request identifier when returned.", "jsonSchema": { "type": [ "string", "null" ], "description": "The MSG91 request identifier when returned." }, "nullable": true, "handle": "requestId" }, { "description": "The raw JSON object returned by MSG91.", "jsonSchema": { "type": "object", "properties": {}, "additionalProperties": true, "description": "The raw JSON object returned by MSG91." }, "nullable": false, "handle": "raw" } ], "name": "Send the SMS", "executor": { "kind": "connector", "action": "msg91.send_flow_sms" } } }, "n_a5fcd0f593be580e": { "name": "SMS submission", "kind": "outputs", "outputDefs": [ { "jsonSchema": { "type": "boolean", "description": "Whether MSG91 accepted the message submission." }, "nullable": false, "handle": "accepted" }, { "jsonSchema": { "type": [ "string", "null" ], "description": "The MSG91 request identifier when returned." }, "nullable": true, "handle": "requestId" }, { "jsonSchema": { "type": "object", "properties": {}, "additionalProperties": true, "description": "The raw JSON object returned by MSG91." }, "nullable": false, "handle": "response" } ], "outputMappings": { "accepted": { "kind": "sources", "sources": [ { "kind": "node", "nodeId": "n_3844dce26984d46f", "output": "accepted" } ] }, "requestId": { "kind": "sources", "sources": [ { "kind": "node", "nodeId": "n_3844dce26984d46f", "output": "requestId" } ] }, "response": { "kind": "sources", "sources": [ { "kind": "node", "nodeId": "n_3844dce26984d46f", "output": "raw" } ] } } } }, "edges": [ { "source": "n_8ea835bcf8699fae", "target": "n_3844dce26984d46f" }, { "source": "n_3844dce26984d46f", "target": "n_a5fcd0f593be580e" } ] } }, "modules": {} }, "presentation": { "designer": { "version": 1, "flow": { "direction": "vertical" } } } }