[{"data":1,"prerenderedAt":1175},["ShallowReactive",2],{"docs-page:\u002Fdocs\u002Fwebhooks\u002Fdelivery-reports":3,"docs-navigation":807,"docs-surround:\u002Fdocs\u002Fwebhooks\u002Fdelivery-reports":948,"icon:building-bank":953,"icon:building-store":979,"icon:chart-bar":994,"icon:chart-pie":1007,"icon:code":1014,"icon:discount":1024,"icon:heart-handshake":1038,"icon:mail-forward":1051,"icon:messages":1064,"icon:microphone-2":1071,"icon:photo":1078,"icon:plug-connected":1091,"icon:school":1110,"icon:speakerphone":1117,"icon:stethoscope":1127,"icon:trophy":1143,"icon:user-plus":1162},{"id":4,"title":5,"body":6,"description":796,"extension":797,"group":798,"meta":799,"navTitle":798,"navigation":195,"path":800,"rawbody":801,"seo":802,"status":803,"stem":804,"updated":805,"__hash__":806},"docs\u002Fdocs\u002F08.webhooks\u002F04.delivery-reports.md","Delivery reports",{"type":7,"value":8,"toc":791},"minimark",[9,13,20,29,34,39,86,90,117,120,124,787],[10,11,12],"p",{},"A delivery report tells you what happened to a message after Wire2Air accepted it: delivered to the handset, failed, and so on.",[14,15,17],"callout",{"type":16},"advanced",[10,18,19],{},"The HTTP API send page lists delivery reports as a feature of the Advanced Developer API account.",[21,22,26],"endpoint",{"auth":23,"method":24,"url":25},"none","GET","https:\u002F\u002Fyour-server.example\u002Fwire2air\u002Fdelivery-report",[10,27,28],{},"Your URL. Wire2Air appends the parameters below as a query string.",[30,31,33],"h2",{"id":32},"parameters","Parameters",[35,36],"param-table",{":params":37,"id":38},"[{\"name\":\"smsoutboxid\",\"in\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The reference number of the message you sent.\"},{\"name\":\"statuscode\",\"in\":\"query\",\"type\":\"string\",\"required\":true,\"description\":\"The message's status.\"}]","param",[40,41,47],"pre",{"className":42,"code":43,"filename":44,"language":45,"meta":46,"style":46},"language-http shiki shiki-themes github-light-high-contrast github-dark-high-contrast","GET \u002Fwire2air\u002Fdelivery-report?smsoutboxid=85582790&statuscode=STATUS HTTP\u002F1.1\nHost: your-server.example\n","Request from Wire2Air","http","",[48,49,50,72],"code",{"__ignoreMap":46},[51,52,55,58,62,65,68],"span",{"class":53,"line":54},"line",1,[51,56,24],{"class":57},"sHUrx",[51,59,61],{"class":60},"suds8"," \u002Fwire2air\u002Fdelivery-report?smsoutboxid=85582790&statuscode=STATUS ",[51,63,64],{"class":57},"HTTP",[51,66,67],{"class":60},"\u002F",[51,69,71],{"class":70},"s-5SL","1.1\n",[51,73,75,79,82],{"class":53,"line":74},2,[51,76,78],{"class":77},"sne4z","Host",[51,80,81],{"class":57},":",[51,83,85],{"class":84},"sT6z2"," your-server.example\n",[30,87,89],{"id":88},"status-codes","Status codes",[14,91,94],{"type":92,"question":93},"pending","OQ-14",[10,95,96,97,100,101,104,105,108,109,112,113,116],{},"The status codes are not in these docs. The previous page linked to a help-centre article, \"Delivery Report Status codes\" (",[48,98,99],{},"wire2air.zendesk.com",", article 204529925), which could not be read when these docs were written. The table will be added here once engineering supplies it. Also unconfirmed: whether ",[48,102,103],{},"smsoutboxid"," is the same number as the ",[48,106,107],{},"ID"," a REST send returns and the ",[48,110,111],{},"SMSID"," in an HTTP API ",[48,114,115],{},"JOBID"," response, which is how you would match a report to a message.",[10,118,119],{},"Until then, store every report as received (outbox ID, status code, time) so you can interpret it later.",[30,121,123],{"id":122},"examples","Examples",[125,126,127,238,464,625],"code-group",{},[40,128,133],{"className":129,"code":130,"filename":131,"language":132,"meta":46,"style":46},"language-php shiki shiki-themes github-light-high-contrast github-dark-high-contrast","\u003C?php\n$outboxId = $_GET['smsoutboxid'] ?? '';\n$status = $_GET['statuscode'] ?? '';\n\n\u002F\u002F Record the status against the message you sent.\nerror_log(sprintf('Delivery report for %s: %s', $outboxId, $status));\nhttp_response_code(200);\n","PHP","php",[48,134,135,143,169,190,197,204,224],{"__ignoreMap":46},[51,136,137,140],{"class":53,"line":54},[51,138,139],{"class":57},"\u003C?",[51,141,142],{"class":70},"php\n",[51,144,145,148,151,154,157,160,163,166],{"class":53,"line":74},[51,146,147],{"class":60},"$outboxId ",[51,149,150],{"class":57},"=",[51,152,153],{"class":60}," $_GET[",[51,155,156],{"class":84},"'smsoutboxid'",[51,158,159],{"class":60},"] ",[51,161,162],{"class":57},"??",[51,164,165],{"class":84}," ''",[51,167,168],{"class":60},";\n",[51,170,172,175,177,179,182,184,186,188],{"class":53,"line":171},3,[51,173,174],{"class":60},"$status ",[51,176,150],{"class":57},[51,178,153],{"class":60},[51,180,181],{"class":84},"'statuscode'",[51,183,159],{"class":60},[51,185,162],{"class":57},[51,187,165],{"class":84},[51,189,168],{"class":60},[51,191,193],{"class":53,"line":192},4,[51,194,196],{"emptyLinePlaceholder":195},true,"\n",[51,198,200],{"class":53,"line":199},5,[51,201,203],{"class":202},"sLBg1","\u002F\u002F Record the status against the message you sent.\n",[51,205,207,210,213,216,218,221],{"class":53,"line":206},6,[51,208,209],{"class":70},"error_log",[51,211,212],{"class":60},"(",[51,214,215],{"class":70},"sprintf",[51,217,212],{"class":60},[51,219,220],{"class":84},"'Delivery report for %s: %s'",[51,222,223],{"class":60},", $outboxId, $status));\n",[51,225,227,230,232,235],{"class":53,"line":226},7,[51,228,229],{"class":70},"http_response_code",[51,231,212],{"class":60},[51,233,234],{"class":70},"200",[51,236,237],{"class":60},");\n",[40,239,244],{"className":240,"code":241,"filename":242,"language":243,"meta":46,"style":46},"language-python shiki shiki-themes github-light-high-contrast github-dark-high-contrast","from http.server import BaseHTTPRequestHandler, HTTPServer\nfrom urllib.parse import parse_qs, urlparse\n\n\nclass DeliveryReport(BaseHTTPRequestHandler):\n    def do_GET(self):\n        params = parse_qs(urlparse(self.path).query)\n        outbox_id = params.get(\"smsoutboxid\", [\"\"])[0]\n        status = params.get(\"statuscode\", [\"\"])[0]\n        print(f\"Delivery report for {outbox_id}: {status}\")\n        self.send_response(200)\n        self.end_headers()\n\n\nHTTPServer((\"\", 8080), DeliveryReport).serve_forever()\n","Python 3","python",[48,245,246,260,272,276,280,297,309,325,354,377,416,429,437,442,447],{"__ignoreMap":46},[51,247,248,251,254,257],{"class":53,"line":54},[51,249,250],{"class":57},"from",[51,252,253],{"class":60}," http.server ",[51,255,256],{"class":57},"import",[51,258,259],{"class":60}," BaseHTTPRequestHandler, HTTPServer\n",[51,261,262,264,267,269],{"class":53,"line":74},[51,263,250],{"class":57},[51,265,266],{"class":60}," urllib.parse ",[51,268,256],{"class":57},[51,270,271],{"class":60}," parse_qs, urlparse\n",[51,273,274],{"class":53,"line":171},[51,275,196],{"emptyLinePlaceholder":195},[51,277,278],{"class":53,"line":192},[51,279,196],{"emptyLinePlaceholder":195},[51,281,282,285,289,291,294],{"class":53,"line":199},[51,283,284],{"class":57},"class",[51,286,288],{"class":287},"soyes"," DeliveryReport",[51,290,212],{"class":60},[51,292,293],{"class":70},"BaseHTTPRequestHandler",[51,295,296],{"class":60},"):\n",[51,298,299,302,306],{"class":53,"line":206},[51,300,301],{"class":57},"    def",[51,303,305],{"class":304},"sKwhi"," do_GET",[51,307,308],{"class":60},"(self):\n",[51,310,311,314,316,319,322],{"class":53,"line":226},[51,312,313],{"class":60},"        params ",[51,315,150],{"class":57},[51,317,318],{"class":60}," parse_qs(urlparse(",[51,320,321],{"class":70},"self",[51,323,324],{"class":60},".path).query)\n",[51,326,328,331,333,336,339,342,345,348,351],{"class":53,"line":327},8,[51,329,330],{"class":60},"        outbox_id ",[51,332,150],{"class":57},[51,334,335],{"class":60}," params.get(",[51,337,338],{"class":84},"\"smsoutboxid\"",[51,340,341],{"class":60},", [",[51,343,344],{"class":84},"\"\"",[51,346,347],{"class":60},"])[",[51,349,350],{"class":70},"0",[51,352,353],{"class":60},"]\n",[51,355,357,360,362,364,367,369,371,373,375],{"class":53,"line":356},9,[51,358,359],{"class":60},"        status ",[51,361,150],{"class":57},[51,363,335],{"class":60},[51,365,366],{"class":84},"\"statuscode\"",[51,368,341],{"class":60},[51,370,344],{"class":84},[51,372,347],{"class":60},[51,374,350],{"class":70},[51,376,353],{"class":60},[51,378,380,383,385,388,391,394,397,400,403,405,408,410,413],{"class":53,"line":379},10,[51,381,382],{"class":70},"        print",[51,384,212],{"class":60},[51,386,387],{"class":57},"f",[51,389,390],{"class":84},"\"Delivery report for ",[51,392,393],{"class":57},"{",[51,395,396],{"class":60},"outbox_id",[51,398,399],{"class":57},"}",[51,401,402],{"class":84},": ",[51,404,393],{"class":57},[51,406,407],{"class":60},"status",[51,409,399],{"class":57},[51,411,412],{"class":84},"\"",[51,414,415],{"class":60},")\n",[51,417,419,422,425,427],{"class":53,"line":418},11,[51,420,421],{"class":70},"        self",[51,423,424],{"class":60},".send_response(",[51,426,234],{"class":70},[51,428,415],{"class":60},[51,430,432,434],{"class":53,"line":431},12,[51,433,421],{"class":70},[51,435,436],{"class":60},".end_headers()\n",[51,438,440],{"class":53,"line":439},13,[51,441,196],{"emptyLinePlaceholder":195},[51,443,445],{"class":53,"line":444},14,[51,446,196],{"emptyLinePlaceholder":195},[51,448,450,453,455,458,461],{"class":53,"line":449},15,[51,451,452],{"class":60},"HTTPServer((",[51,454,344],{"class":84},[51,456,457],{"class":60},", ",[51,459,460],{"class":70},"8080",[51,462,463],{"class":60},"), DeliveryReport).serve_forever()\n",[40,465,470],{"className":466,"code":467,"filename":468,"language":469,"meta":46,"style":46},"language-javascript shiki shiki-themes github-light-high-contrast github-dark-high-contrast","import { createServer } from \"node:http\";\n\ncreateServer((req, res) => {\n  const params = new URL(req.url, \"http:\u002F\u002Flocalhost\").searchParams;\n  console.log(`Delivery report for ${params.get(\"smsoutboxid\")}: ${params.get(\"statuscode\")}`);\n  res.writeHead(200).end();\n}).listen(8080);\n","Node","javascript",[48,471,472,486,490,515,541,590,611],{"__ignoreMap":46},[51,473,474,476,479,481,484],{"class":53,"line":54},[51,475,256],{"class":57},[51,477,478],{"class":60}," { createServer } ",[51,480,250],{"class":57},[51,482,483],{"class":84}," \"node:http\"",[51,485,168],{"class":60},[51,487,488],{"class":53,"line":74},[51,489,196],{"emptyLinePlaceholder":195},[51,491,492,495,498,501,503,506,509,512],{"class":53,"line":171},[51,493,494],{"class":304},"createServer",[51,496,497],{"class":60},"((",[51,499,500],{"class":287},"req",[51,502,457],{"class":60},[51,504,505],{"class":287},"res",[51,507,508],{"class":60},") ",[51,510,511],{"class":57},"=>",[51,513,514],{"class":60}," {\n",[51,516,517,520,523,526,529,532,535,538],{"class":53,"line":192},[51,518,519],{"class":57},"  const",[51,521,522],{"class":70}," params",[51,524,525],{"class":57}," =",[51,527,528],{"class":57}," new",[51,530,531],{"class":304}," URL",[51,533,534],{"class":60},"(req.url, ",[51,536,537],{"class":84},"\"http:\u002F\u002Flocalhost\"",[51,539,540],{"class":60},").searchParams;\n",[51,542,543,546,549,551,554,557,560,563,565,567,570,573,575,577,579,581,583,585,588],{"class":53,"line":199},[51,544,545],{"class":60},"  console.",[51,547,548],{"class":304},"log",[51,550,212],{"class":60},[51,552,553],{"class":84},"`Delivery report for ${",[51,555,556],{"class":60},"params",[51,558,559],{"class":84},".",[51,561,562],{"class":304},"get",[51,564,212],{"class":84},[51,566,338],{"class":84},[51,568,569],{"class":84},")",[51,571,572],{"class":84},"}: ${",[51,574,556],{"class":60},[51,576,559],{"class":84},[51,578,562],{"class":304},[51,580,212],{"class":84},[51,582,366],{"class":84},[51,584,569],{"class":84},[51,586,587],{"class":84},"}`",[51,589,237],{"class":60},[51,591,592,595,598,600,602,605,608],{"class":53,"line":206},[51,593,594],{"class":60},"  res.",[51,596,597],{"class":304},"writeHead",[51,599,212],{"class":60},[51,601,234],{"class":70},[51,603,604],{"class":60},").",[51,606,607],{"class":304},"end",[51,609,610],{"class":60},"();\n",[51,612,613,616,619,621,623],{"class":53,"line":226},[51,614,615],{"class":60},"}).",[51,617,618],{"class":304},"listen",[51,620,212],{"class":60},[51,622,460],{"class":70},[51,624,237],{"class":60},[40,626,631],{"className":627,"code":628,"filename":629,"language":630,"meta":46,"style":46},"language-csharp shiki shiki-themes github-light-high-contrast github-dark-high-contrast","\u002F\u002F ASP.NET Core minimal API (.NET 6+, project SDK Microsoft.NET.Sdk.Web).\nvar app = WebApplication.CreateBuilder(args).Build();\n\napp.MapGet(\"\u002Fwire2air\u002Fdelivery-report\", (HttpRequest request) =>\n{\n    var outboxId = request.Query[\"smsoutboxid\"].ToString();\n    var status = request.Query[\"statuscode\"].ToString();\n    app.Logger.LogInformation(\"Delivery report for {OutboxId}: {Status}\", outboxId, status);\n    return Results.Ok();\n});\n\napp.Run();\n","C#","csharp",[48,632,633,638,662,666,693,698,721,740,756,769,774,778],{"__ignoreMap":46},[51,634,635],{"class":53,"line":54},[51,636,637],{"class":202},"\u002F\u002F ASP.NET Core minimal API (.NET 6+, project SDK Microsoft.NET.Sdk.Web).\n",[51,639,640,643,646,648,651,654,657,660],{"class":53,"line":74},[51,641,642],{"class":57},"var",[51,644,645],{"class":287}," app",[51,647,525],{"class":57},[51,649,650],{"class":60}," WebApplication.",[51,652,653],{"class":304},"CreateBuilder",[51,655,656],{"class":60},"(args).",[51,658,659],{"class":304},"Build",[51,661,610],{"class":60},[51,663,664],{"class":53,"line":171},[51,665,196],{"emptyLinePlaceholder":195},[51,667,668,671,674,676,679,682,685,688,690],{"class":53,"line":192},[51,669,670],{"class":60},"app.",[51,672,673],{"class":304},"MapGet",[51,675,212],{"class":60},[51,677,678],{"class":84},"\"\u002Fwire2air\u002Fdelivery-report\"",[51,680,681],{"class":60},", (",[51,683,684],{"class":287},"HttpRequest",[51,686,687],{"class":287}," request",[51,689,508],{"class":60},[51,691,692],{"class":57},"=>\n",[51,694,695],{"class":53,"line":199},[51,696,697],{"class":60},"{\n",[51,699,700,703,706,708,711,713,716,719],{"class":53,"line":206},[51,701,702],{"class":57},"    var",[51,704,705],{"class":287}," outboxId",[51,707,525],{"class":57},[51,709,710],{"class":60}," request.Query[",[51,712,338],{"class":84},[51,714,715],{"class":60},"].",[51,717,718],{"class":304},"ToString",[51,720,610],{"class":60},[51,722,723,725,728,730,732,734,736,738],{"class":53,"line":226},[51,724,702],{"class":57},[51,726,727],{"class":287}," status",[51,729,525],{"class":57},[51,731,710],{"class":60},[51,733,366],{"class":84},[51,735,715],{"class":60},[51,737,718],{"class":304},[51,739,610],{"class":60},[51,741,742,745,748,750,753],{"class":53,"line":327},[51,743,744],{"class":60},"    app.Logger.",[51,746,747],{"class":304},"LogInformation",[51,749,212],{"class":60},[51,751,752],{"class":84},"\"Delivery report for {OutboxId}: {Status}\"",[51,754,755],{"class":60},", outboxId, status);\n",[51,757,758,761,764,767],{"class":53,"line":356},[51,759,760],{"class":57},"    return",[51,762,763],{"class":60}," Results.",[51,765,766],{"class":304},"Ok",[51,768,610],{"class":60},[51,770,771],{"class":53,"line":379},[51,772,773],{"class":60},"});\n",[51,775,776],{"class":53,"line":418},[51,777,196],{"emptyLinePlaceholder":195},[51,779,780,782,785],{"class":53,"line":431},[51,781,670],{"class":60},[51,783,784],{"class":304},"Run",[51,786,610],{"class":60},[788,789,790],"style",{},"html pre.shiki code .sHUrx, html code.shiki .sHUrx{--shiki-default:#A0111F;--shiki-dark:#FF9492}html pre.shiki code .suds8, html code.shiki .suds8{--shiki-default:#0E1116;--shiki-dark:#F0F3F6}html pre.shiki code .s-5SL, html code.shiki .s-5SL{--shiki-default:#023B95;--shiki-dark:#91CBFF}html pre.shiki code .sne4z, html code.shiki .sne4z{--shiki-default:#024C1A;--shiki-dark:#72F088}html pre.shiki code .sT6z2, html code.shiki .sT6z2{--shiki-default:#032563;--shiki-dark:#ADDCFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sLBg1, html code.shiki .sLBg1{--shiki-default:#66707B;--shiki-dark:#BDC4CC}html pre.shiki code .soyes, html code.shiki .soyes{--shiki-default:#702C00;--shiki-dark:#FFB757}html pre.shiki code .sKwhi, html code.shiki .sKwhi{--shiki-default:#622CBC;--shiki-dark:#DBB7FF}",{"title":46,"searchDepth":171,"depth":171,"links":792},[793,794,795],{"id":32,"depth":74,"text":33},{"id":88,"depth":74,"text":89},{"id":122,"depth":74,"text":123},"Wire2Air calls your server with the status of each message you sent, identified by its outbox ID.","md",null,{},"\u002Fdocs\u002Fwebhooks\u002Fdelivery-reports","---\ntitle: Delivery reports\ndescription: Wire2Air calls your server with the status of each message you sent, identified by its outbox ID.\nupdated: '2026-10-06'\n---\n\nA delivery report tells you what happened to a message after Wire2Air accepted it: delivered to the handset, failed, and so on.\n\n::callout{type=\"advanced\"}\nThe HTTP API send page lists delivery reports as a feature of the Advanced Developer API account.\n::\n\n::endpoint{method=\"GET\" url=\"https:\u002F\u002Fyour-server.example\u002Fwire2air\u002Fdelivery-report\" auth=\"none\"}\nYour URL. Wire2Air appends the parameters below as a query string.\n::\n\n## Parameters\n\n::param-table{id=\"param\"}\n---\nparams:\n  - name: smsoutboxid\n    in: query\n    type: string\n    required: true\n    description: \"The reference number of the message you sent.\"\n  - name: statuscode\n    in: query\n    type: string\n    required: true\n    description: \"The message's status.\"\n---\n::\n\n```http [Request from Wire2Air]\nGET \u002Fwire2air\u002Fdelivery-report?smsoutboxid=85582790&statuscode=STATUS HTTP\u002F1.1\nHost: your-server.example\n```\n\n## Status codes\n\n::callout{type=\"pending\" question=\"OQ-14\"}\nThe status codes are not in these docs. The previous page linked to a help-centre article, \"Delivery Report Status codes\" (`wire2air.zendesk.com`, article 204529925), which could not be read when these docs were written. The table will be added here once engineering supplies it. Also unconfirmed: whether `smsoutboxid` is the same number as the `ID` a REST send returns and the `SMSID` in an HTTP API `JOBID` response, which is how you would match a report to a message.\n::\n\nUntil then, store every report as received (outbox ID, status code, time) so you can interpret it later.\n\n## Examples\n\n::code-group\n```php [PHP]\n\u003C?php\n$outboxId = $_GET['smsoutboxid'] ?? '';\n$status = $_GET['statuscode'] ?? '';\n\n\u002F\u002F Record the status against the message you sent.\nerror_log(sprintf('Delivery report for %s: %s', $outboxId, $status));\nhttp_response_code(200);\n```\n```python [Python 3]\nfrom http.server import BaseHTTPRequestHandler, HTTPServer\nfrom urllib.parse import parse_qs, urlparse\n\n\nclass DeliveryReport(BaseHTTPRequestHandler):\n    def do_GET(self):\n        params = parse_qs(urlparse(self.path).query)\n        outbox_id = params.get(\"smsoutboxid\", [\"\"])[0]\n        status = params.get(\"statuscode\", [\"\"])[0]\n        print(f\"Delivery report for {outbox_id}: {status}\")\n        self.send_response(200)\n        self.end_headers()\n\n\nHTTPServer((\"\", 8080), DeliveryReport).serve_forever()\n```\n```javascript [Node]\nimport { createServer } from \"node:http\";\n\ncreateServer((req, res) => {\n  const params = new URL(req.url, \"http:\u002F\u002Flocalhost\").searchParams;\n  console.log(`Delivery report for ${params.get(\"smsoutboxid\")}: ${params.get(\"statuscode\")}`);\n  res.writeHead(200).end();\n}).listen(8080);\n```\n```csharp [C#]\n\u002F\u002F ASP.NET Core minimal API (.NET 6+, project SDK Microsoft.NET.Sdk.Web).\nvar app = WebApplication.CreateBuilder(args).Build();\n\napp.MapGet(\"\u002Fwire2air\u002Fdelivery-report\", (HttpRequest request) =>\n{\n    var outboxId = request.Query[\"smsoutboxid\"].ToString();\n    var status = request.Query[\"statuscode\"].ToString();\n    app.Logger.LogInformation(\"Delivery report for {OutboxId}: {Status}\", outboxId, status);\n    return Results.Ok();\n});\n\napp.Run();\n```\n::\n",{"title":5,"description":796},"current","docs\u002F08.webhooks\u002F04.delivery-reports","2026-10-06","1L_asZGq9yvaYSe0aP2bkqJ48FjwhFAQ6YQuG7PZaBE",[808],{"title":809,"path":810,"stem":811,"children":812,"navTitle":814,"group":798,"status":803},"Wire2Air developer docs","\u002Fdocs","docs\u002F01.index",[813,815,819,823,827,831,850,873,888,931,944],{"title":809,"path":810,"stem":811,"navTitle":814,"group":798,"status":803},"Overview",{"title":816,"path":817,"stem":818,"navTitle":798,"group":816,"status":803},"Getting started","\u002Fdocs\u002Fgetting-started","docs\u002F02.getting-started",{"title":820,"path":821,"stem":822,"navTitle":798,"group":816,"status":803},"Authentication","\u002Fdocs\u002Fauthentication","docs\u002F03.authentication",{"title":824,"path":825,"stem":826,"navTitle":798,"group":816,"status":803},"Errors","\u002Fdocs\u002Ferrors","docs\u002F04.errors",{"title":828,"path":829,"stem":830,"navTitle":798,"group":816,"status":803},"Rate limits","\u002Fdocs\u002Frate-limits","docs\u002F05.rate-limits",{"title":832,"navTitle":798,"group":798,"status":803,"path":833,"stem":834,"children":835,"page":849},"Guides","\u002Fdocs\u002Fguides","docs\u002F06.guides",[836,841,845],{"title":837,"path":838,"stem":839,"navTitle":840,"group":798,"status":803},"Character encoding and message length","\u002Fdocs\u002Fguides\u002Fencoding","docs\u002F06.guides\u002F01.encoding","Encoding and length",{"title":842,"path":843,"stem":844,"navTitle":798,"group":798,"status":803},"Bulk messaging","\u002Fdocs\u002Fguides\u002Fbulk-messaging","docs\u002F06.guides\u002F02.bulk-messaging",{"title":846,"path":847,"stem":848,"navTitle":798,"group":798,"status":803},"Scheduling messages","\u002Fdocs\u002Fguides\u002Fscheduling","docs\u002F06.guides\u002F03.scheduling",false,{"title":851,"path":852,"stem":853,"children":854,"navTitle":798,"group":798,"status":803},"REST API v1","\u002Fdocs\u002Frest","docs\u002F07.rest\u002F01.index",[855,856,869],{"title":851,"path":852,"stem":853,"navTitle":814,"group":798,"status":803},{"title":857,"navTitle":798,"group":798,"status":803,"path":858,"stem":859,"children":860,"page":849},"Messages","\u002Fdocs\u002Frest\u002Fmessages","docs\u002F07.rest\u002F02.messages",[861,865],{"title":862,"path":863,"stem":864,"navTitle":798,"group":798,"status":803},"Send a message","\u002Fdocs\u002Frest\u002Fmessages\u002Fsend","docs\u002F07.rest\u002F02.messages\u002F01.send",{"title":866,"path":867,"stem":868,"navTitle":798,"group":798,"status":803},"List received messages","\u002Fdocs\u002Frest\u002Fmessages\u002Flist","docs\u002F07.rest\u002F02.messages\u002F02.list",{"title":870,"path":871,"stem":872,"navTitle":798,"group":798,"status":803},"Campaigns","\u002Fdocs\u002Frest\u002Fcampaigns","docs\u002F07.rest\u002F03.campaigns",{"title":874,"path":875,"stem":876,"children":877,"navTitle":798,"group":798,"status":803},"Webhooks","\u002Fdocs\u002Fwebhooks","docs\u002F08.webhooks\u002F01.index",[878,879,883,887],{"title":874,"path":875,"stem":876,"navTitle":814,"group":798,"status":803},{"title":880,"path":881,"stem":882,"navTitle":798,"group":798,"status":803},"Inbound SMS","\u002Fdocs\u002Fwebhooks\u002Finbound-sms","docs\u002F08.webhooks\u002F02.inbound-sms",{"title":884,"path":885,"stem":886,"navTitle":798,"group":798,"status":803},"Inbound SMS and MMS","\u002Fdocs\u002Fwebhooks\u002Finbound-mms","docs\u002F08.webhooks\u002F03.inbound-mms",{"title":5,"path":800,"stem":804,"navTitle":798,"group":798,"status":803},{"title":889,"path":890,"stem":891,"children":892,"navTitle":798,"group":798,"status":894},"HTTP API","\u002Fdocs\u002Fhttp-api","docs\u002F09.http-api\u002F01.index",[893,895,899,903,907,911,915,919,923,927],{"title":889,"path":890,"stem":891,"navTitle":814,"group":798,"status":894},"legacy",{"title":896,"path":897,"stem":898,"navTitle":798,"group":798,"status":894},"Send SMS","\u002Fdocs\u002Fhttp-api\u002Fsend-sms","docs\u002F09.http-api\u002F02.send-sms",{"title":900,"path":901,"stem":902,"navTitle":798,"group":798,"status":894},"Send MMS","\u002Fdocs\u002Fhttp-api\u002Fsend-mms","docs\u002F09.http-api\u002F03.send-mms",{"title":904,"path":905,"stem":906,"navTitle":798,"group":798,"status":894},"Credit balance","\u002Fdocs\u002Fhttp-api\u002Fcredit-balance","docs\u002F09.http-api\u002F04.credit-balance",{"title":908,"path":909,"stem":910,"navTitle":798,"group":798,"status":894},"Carrier lookup","\u002Fdocs\u002Fhttp-api\u002Fcarrier-lookup","docs\u002F09.http-api\u002F05.carrier-lookup",{"title":912,"path":913,"stem":914,"navTitle":798,"group":798,"status":894},"Keyword lookup","\u002Fdocs\u002Fhttp-api\u002Fkeyword-lookup","docs\u002F09.http-api\u002F06.keyword-lookup",{"title":916,"path":917,"stem":918,"navTitle":798,"group":798,"status":894},"Keyword register","\u002Fdocs\u002Fhttp-api\u002Fkeyword-register","docs\u002F09.http-api\u002F07.keyword-register",{"title":920,"path":921,"stem":922,"navTitle":798,"group":798,"status":894},"Keyword credits","\u002Fdocs\u002Fhttp-api\u002Fkeyword-credits","docs\u002F09.http-api\u002F08.keyword-credits",{"title":924,"path":925,"stem":926,"navTitle":798,"group":798,"status":894},"Subscribe user","\u002Fdocs\u002Fhttp-api\u002Fsubscribe-user","docs\u002F09.http-api\u002F09.subscribe-user",{"title":928,"path":929,"stem":930,"navTitle":798,"group":798,"status":894},"Send invitation","\u002Fdocs\u002Fhttp-api\u002Fsend-invitation","docs\u002F09.http-api\u002F10.send-invitation",{"title":932,"navTitle":798,"group":798,"status":803,"path":933,"stem":934,"children":935,"page":849},"Integrations","\u002Fdocs\u002Fintegrations","docs\u002F10.integrations",[936,940],{"title":937,"path":938,"stem":939,"navTitle":798,"group":798,"status":803},"RSA Authentication Manager","\u002Fdocs\u002Fintegrations\u002Frsa-authentication-manager","docs\u002F10.integrations\u002F01.rsa-authentication-manager",{"title":941,"path":942,"stem":943,"navTitle":798,"group":798,"status":803},"Zapier","\u002Fdocs\u002Fintegrations\u002Fzapier","docs\u002F10.integrations\u002F02.zapier",{"title":945,"path":946,"stem":947,"navTitle":798,"group":798,"status":803},"Changelog","\u002Fdocs\u002Fchangelog","docs\u002F11.changelog",[949,951],{"title":884,"path":885,"stem":886,"description":950,"children":-1},"Wire2Air forwards picture messages (and text) sent to your short code to your server as a GET request with the subject, the media location and the file names.",{"title":889,"path":890,"stem":891,"description":952,"children":-1},"The legacy Wire2Air HTTP API (version 2.0) sends credentials as request parameters and answers in plain text. Hosts, credentials, request and response conventions.",[954,958,961,964,967,970,973,976],[955,956],"path",{"d":957},"M3 21l18 0",[955,959],{"d":960},"M3 10l18 0",[955,962],{"d":963},"M5 6l7 -3l7 3",[955,965],{"d":966},"M4 10l0 11",[955,968],{"d":969},"M20 10l0 11",[955,971],{"d":972},"M8 14l0 3",[955,974],{"d":975},"M12 14l0 3",[955,977],{"d":978},"M16 14l0 3",[980,982,985,988,991],[955,981],{"d":957},[955,983],{"d":984},"M3 7v1a3 3 0 0 0 6 0v-1m0 1a3 3 0 0 0 6 0v-1m0 1a3 3 0 0 0 6 0v-1h-18l2 -4h14l2 4",[955,986],{"d":987},"M5 21l0 -10.15",[955,989],{"d":990},"M19 21l0 -10.15",[955,992],{"d":993},"M9 21v-4a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v4",[995,998,1001,1004],[955,996],{"d":997},"M3 13a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -6",[955,999],{"d":1000},"M15 9a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v10a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -10",[955,1002],{"d":1003},"M9 5a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1l0 -14",[955,1005],{"d":1006},"M4 20h14",[1008,1011],[955,1009],{"d":1010},"M10 3.2a9 9 0 1 0 10.8 10.8a1 1 0 0 0 -1 -1h-6.8a2 2 0 0 1 -2 -2v-7a.9 .9 0 0 0 -1 -.8",[955,1012],{"d":1013},"M15 3.5a9 9 0 0 1 5.5 5.5h-4.5a1 1 0 0 1 -1 -1v-4.5",[1015,1018,1021],[955,1016],{"d":1017},"M7 8l-4 4l4 4",[955,1019],{"d":1020},"M17 8l4 4l-4 4",[955,1022],{"d":1023},"M14 4l-4 16",[1025,1028,1032,1035],[955,1026],{"d":1027},"M9 15l6 -6",[955,1029],{"d":1030,"fill":1031},"M9 9.5a.5 .5 0 1 0 1 0a.5 .5 0 1 0 -1 0","currentColor",[955,1033],{"d":1034,"fill":1031},"M14 14.5a.5 .5 0 1 0 1 0a.5 .5 0 1 0 -1 0",[955,1036],{"d":1037},"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",[1039,1042,1045,1048],[955,1040],{"d":1041},"M19.5 12.572l-7.5 7.428l-7.5 -7.428a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572",[955,1043],{"d":1044},"M12 6l-3.293 3.293a1 1 0 0 0 0 1.414l.543 .543c.69 .69 1.81 .69 2.5 0l1 -1a3.182 3.182 0 0 1 4.5 0l2.25 2.25",[955,1046],{"d":1047},"M12.5 15.5l2 2",[955,1049],{"d":1050},"M15 13l2 2",[1052,1055,1058,1061],[955,1053],{"d":1054},"M12 18h-7a2 2 0 0 1 -2 -2v-10a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v7.5",[955,1056],{"d":1057},"M3 6l9 6l9 -6",[955,1059],{"d":1060},"M15 18h6",[955,1062],{"d":1063},"M18 15l3 3l-3 3",[1065,1068],[955,1066],{"d":1067},"M21 14l-3 -3h-7a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1h9a1 1 0 0 1 1 1v10",[955,1069],{"d":1070},"M14 15v2a1 1 0 0 1 -1 1h-7l-3 3v-10a1 1 0 0 1 1 -1h2",[1072,1075],[955,1073],{"d":1074},"M15 12.9a5 5 0 1 0 -3.902 -3.9",[955,1076],{"d":1077},"M15 12.9l-3.902 -3.899l-7.513 8.584a2 2 0 1 0 2.827 2.83l8.588 -7.515",[1079,1082,1085,1088],[955,1080],{"d":1081},"M15 8h.01",[955,1083],{"d":1084},"M3 6a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3v-12",[955,1086],{"d":1087},"M3 16l5 -5c.928 -.893 2.072 -.893 3 0l5 5",[955,1089],{"d":1090},"M14 14l1 -1c.928 -.893 2.072 -.893 3 0l3 3",[1092,1095,1098,1101,1104,1107],[955,1093],{"d":1094},"M7 12l5 5l-1.5 1.5a3.536 3.536 0 1 1 -5 -5l1.5 -1.5",[955,1096],{"d":1097},"M17 12l-5 -5l1.5 -1.5a3.536 3.536 0 1 1 5 5l-1.5 1.5",[955,1099],{"d":1100},"M3 21l2.5 -2.5",[955,1102],{"d":1103},"M18.5 5.5l2.5 -2.5",[955,1105],{"d":1106},"M10 11l-2 2",[955,1108],{"d":1109},"M13 14l-2 2",[1111,1114],[955,1112],{"d":1113},"M22 9l-10 -4l-10 4l10 4l10 -4v6",[955,1115],{"d":1116},"M6 10.6v5.4a6 3 0 0 0 12 0v-5.4",[1118,1121,1124],[955,1119],{"d":1120},"M18 8a3 3 0 0 1 0 6",[955,1122],{"d":1123},"M10 8v11a1 1 0 0 1 -1 1h-1a1 1 0 0 1 -1 -1v-5",[955,1125],{"d":1126},"M12 8l4.524 -3.77a.9 .9 0 0 1 1.476 .692v12.156a.9 .9 0 0 1 -1.476 .692l-4.524 -3.77h-8a1 1 0 0 1 -1 -1v-4a1 1 0 0 1 1 -1h8",[1128,1131,1134,1137,1140],[955,1129],{"d":1130},"M6 4h-1a2 2 0 0 0 -2 2v3.5a5.5 5.5 0 0 0 11 0v-3.5a2 2 0 0 0 -2 -2h-1",[955,1132],{"d":1133},"M8 15a6 6 0 1 0 12 0v-3",[955,1135],{"d":1136},"M11 3v2",[955,1138],{"d":1139},"M6 3v2",[955,1141],{"d":1142},"M18 10a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",[1144,1147,1150,1153,1156,1159],[955,1145],{"d":1146},"M8 21l8 0",[955,1148],{"d":1149},"M12 17l0 4",[955,1151],{"d":1152},"M7 4l10 0",[955,1154],{"d":1155},"M17 4v8a5 5 0 0 1 -10 0v-8",[955,1157],{"d":1158},"M3 9a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",[955,1160],{"d":1161},"M17 9a2 2 0 1 0 4 0a2 2 0 1 0 -4 0",[1163,1166,1169,1172],[955,1164],{"d":1165},"M8 7a4 4 0 1 0 8 0a4 4 0 0 0 -8 0",[955,1167],{"d":1168},"M16 19h6",[955,1170],{"d":1171},"M19 16v6",[955,1173],{"d":1174},"M6 21v-2a4 4 0 0 1 4 -4h4",3529977955]