true
Shortcut: TrackOrder
true
TrackOrder
false
Confirm Dialog: 3
Add or Delete?
Add
Delete
IGNORE
false
60000
true
false
Confirm Dialog: delete
Conform Delete
selected items will be removed
No
Yes
IGNORE
false
60000
true
true
Expression: contains(response_aftership,'"code":201')
contains(response_aftership,'"code":201')
true
Expression: contains(value,"#Add or Remove#");
contains(value,"#Add or Remove#");
true
Expression: i<deletesize;
i<deletesize;
true
Expression: operation=="ok";
operation=="ok";
true
Expression: trackings_size=="-1";
trackings_size=="-1";
true
Expression: value=="[#Add or Remove#]";
value=="[#Add or Remove#]";
false
HTTP Request: DELETE https://api.aftership.com/v4/trackings/{deleteslug[i]}/{deletelist[i]} store in response_aftership4
https://api.aftership.com/v4/trackings/{deleteslug[i]}/{deletelist[i]}
true
false
false
DELETE
X_WWW_FORM_URLENCODED
text/plain
Lastname=XYZ,Firstname=ABC
upload_field
60000
true
aftership-api-key: {api_key}
Content-Type: application/json
true
response_aftership
/storage/emulated/0/Download/file.bin
true
false
HTTP Request: GET https://api.aftership.com/v4/couriers/all store in response_aftership2
https://api.aftership.com/v4/couriers/all
true
false
false
GET
X_WWW_FORM_URLENCODED
text/plain
Lastname=XYZ,Firstname=ABC
upload_field
60000
true
aftership-api-key: {api_key}
Content-Type: application/json
true
response_aftership
/storage/emulated/0/Download/file.bin
true
false
HTTP Request: GET https://api.aftership.com/v4/trackings store in response_aftership1
https://api.aftership.com/v4/trackings
true
false
false
GET
X_WWW_FORM_URLENCODED
text/plain
Lastname=XYZ,Firstname=ABC
upload_field
60000
true
aftership-api-key: {api_key}
Content-Type: application/json
true
response_aftership
/storage/emulated/0/Download/file.bin
true
false
HTTP Request: GET https://api.aftership.com/v4/trackings store in response_aftership3
https://api.aftership.com/v4/trackings
true
false
false
GET
X_WWW_FORM_URLENCODED
text/plain
Lastname=XYZ,Firstname=ABC
upload_field
60000
true
aftership-api-key: {api_key}
Content-Type: application/json
true
response_aftership
/storage/emulated/0/Download/file.bin
true
false
HTTP Request: POST https://api.aftership.com/v4/trackings text/plain {json_data} store in response_aftership5
https://api.aftership.com/v4/trackings
true
false
false
POST
GENERAL_TEXT
text/plain
{json_data}
tracking
/storage/emulated/0/track.txt
60000
true
aftership-api-key: {api_key}
Content-Type: application/json
true
response_aftership
/storage/emulated/0/Download/file.bin
true
true
Input Dialog: Multi Choice {slugs}
MULTI_CHOICE
{slugs}
DEFAULT
DEFAULT
DEFAULT
false
60000
false
false
false
false
false
true
Input Dialog: Multi Choice {slugs},#Add or Remove#
MULTI_CHOICE
{slugs},#Add or Remove#
DEFAULT
DEFAULT
DEFAULT
false
60000
false
false
false
false
false
false
Input Dialog: Multi-line text val
{message2}
false
60000
true
Input Dialog: Choose your country code Single Choice {all_countries}
Choose your country code
SINGLE_CHOICE
{all_countries}
DEFAULT
DEFAULT
DEFAULT
false
60000
false
false
false
false
false
true
Input Dialog: Choose your courier Single Choice {cnt_couriers}
Choose your courier
SINGLE_CHOICE
{cnt_couriers}
DEFAULT
DEFAULT
DEFAULT
false
60000
false
false
false
false
false
false
Input Dialog: Enter AWB No. Single-line text 1
Enter AWB No.
SINGLE_LINE_TEXT
{ind_couriers}
{global_trackingno}
DEFAULT
DEFAULT
DEFAULT
false
60000
false
false
false
false
false
true
Input Dialog: Enter Title Single-line text you can give any title you want
Enter Title
SINGLE_LINE_TEXT
you can give any title you want
{ind_couriers}
DEFAULT
DEFAULT
DEFAULT
false
60000
false
false
false
false
false
true
Notification on Screen: Deleted
true
Deleted
200
250
false
1.00
false
false
TOP_LEFT
0
0
true
Notification on Screen: Deselect 'Add or Remove' From Selection ( or choose it solely) (long)
true
Deselect 'Add or Remove' From Selection ( or choose it solely)
200
250
false
1.00
true
true
CENTER_CENTER
0
0
true
Notification on Screen: Loading List
true
Loading List
200
250
false
1.00
false
true
CENTER_CENTER
0
0
true
Notification on Screen: No entries available [!empty list] (long)
true
No entries available [!empty list]
200
250
false
1.00
true
true
CENTER_CENTER
0
0
true
Notification on Screen: Please Wait
true
Please Wait
200
250
false
1.00
false
true
CENTER_CENTER
0
0
true
Notification on Screen: Please Wait...
true
Please Wait...
200
250
false
1.00
false
true
CENTER_CENTER
0
0
true
Notification on Screen: Successfully Added to Track list
true
Successfully Added to Track list
200
250
false
1.00
false
false
TOP_LEFT
0
0
true
Script: all_couriers=newList(); all_countries=newList(); cnt_couriers=newList(); couriers=fromJSON(response_aftership); size1=(couriers["data"]["total"])-1; for(i in [0 to size1]){ all_couriers=addElement(all_couriers,couriers["data"]["couriers"][i]["slug"]); all_couriers=addElement(all_couriers,replaceAll(couriers["data"]["couriers"][i]["service_from_country_iso3"], '[\\[\\]]', '')); } all_countries=sort(removeDuplicateElements(findAll(all_couriers,'[A-Z]{3}')),false,true);
true
Script: api_key="d11a3472-cb66-40be-a27f-1c0226637508"; //remove this with your api key obtained from aftership, this is a sample api-key and will not work.
true
Script: cnt_couriers=newList(); string='[\\w\\d\\-]+(?=,'+"{value})"; cnt_couriers=sort(findAll(all_couriers,string), false, true);
true
Script: deletelist=newList(); deletelist=newList(); deleteslug=newList(); deleteslug1=newList(); deletelist=findAll(value, '\\d{6,20}'); deletelist=removeDuplicateElements(deletelist); deletesize=length(deletelist)-1; deleteslug=findAll(value,'(?<= \\- )((\\D(?<!\\s\\-))+)');//or you can use '(?<= \\- )((\\D(?<!\\s\\-))+)' //'(?<= \\- )(\\w|\\-)+? ' deleteslugsize=length(deleteslug)-1; for (i in [0 to deleteslugsize]) { deleteslug1=addElement(deleteslug1,trim(deleteslug[i]));} i=-1;
true
Script: global_trackingno=value;
true
Script: i=i+1;
true
Script: json_data='{ "tracking": { "slug": "delhivery", "tracking_number": "1950334246683", "title": "Title Name", "smses": [], "emails": [ "", "" ], "order_id": "", "order_id_path": "", "custom_fields": { "product_name": "", "product_price": "" }, "language": "en" } }'; json_data=replaceAll(json_data,'(?<=slug": ")((\\w|\\W(?<!\\").)+)',slug); json_data=replaceAll(json_data,'(?<=tracking_number": ")((\\w|\\W(?<!\\").)+)',global_trackingno); json_data=replaceAll(json_data,'(?<=title": ")((\\w|\\W(?<!\\").)+)',value);
true
Script: message1=newList(); //message1=addElement(message1," "); for (i in [0 to size_i]) { message1=addElement(message1," ###{tracking_title[i]}###\n\n{courier[i]} - {tracking_no[i]}\n\nStatus:-{status[i]}\n\nFull Status :- {message[i]}\n\nLast Checkpoint :- {current_location[i]}\n\nTime at Checkpoint :-{checkpoint_time[i]}\n\nExpected delivery :- {expected_delivery1[i]}\n-------------------------------------------------------\n\n") } message2=replaceAll(message1,'[\\[\\]\\,]','') //size_m=length(message); //message2=addElement(message1,0,message[)
true
Script: size_i=length(indices)-1; expected_delivery=newList(); current_location=newList(); tracking_title=newList(); message=newList(); checkpoint_time=newList(); status=newList(); expected_delivery1=newList(); for(i in [0 to size_i]){ expected_delivery=addElement(expected_delivery,"TBD"); current_location=addElement(current_location,"TBD"); tracking_title=addElement(tracking_title,"TBD"); message=addElement(message,"TBD"); checkpoint_time=addElement(checkpoint_time,"TBD"); status=addElement(status,"TBD"); expected_delivery1=addElement(expected_delivery1,"TBD"); } for (i in [0 to size_i]){ courier=addElement(courier,track["data"]["trackings"][indices[i]]["slug"]); if(track["data"]["trackings"][indices[i]]["expected_delivery"]!=null OR track["data"]["trackings"][indices[i]]["expected_delivery"]!="null"){ expected_delivery=addElement(expected_delivery,i,track["data"]["trackings"][indices[i]]["expected_delivery"]); } if(track["data"]["trackings"][indices[i]]["title"]!=null){ tracking_title=addElement(tracking_title,i,track["data"]["trackings"][indices[i]]["title"]);} tracking_no=addElement(tracking_no,track["data"]["trackings"][indices[i]]["tracking_number"]); size=length(track["data"]["trackings"][indices[i]]["checkpoints"])-1; if(size>=0){ if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]!=null){ current_location=addElement(current_location,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]!=null){ message=addElement(message,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"]!=null){ checkpoint_time=addElement(checkpoint_time,i,replaceAll(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"],'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d:\\d\\d:\\d\\d)', '$4 $3-$2-$1'));}} if(track["data"]["trackings"][indices[i]]["tag"]!=null){ status=addElement(status,i,track["data"]["trackings"][indices[i]]["tag"]); } if(expected_delivery[i]!=null){ expected_delivery1=addElement(expected_delivery1,i,replaceAll(findAll(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}'),'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)', '$3-$2-$1'));} else {expected_delivery1=addElement(expected_delivery1,i,"TBD")} } //matches(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}')==true
true
Script: size_i=length(indices)-1; for(i in [0 to size_i]){ sz="TBD,"+i;} sz=replaceAll(sz,'\\d',''); //sz=text*(size_i+1); expected_delivery=newList(sz); current_location=newList(sz); tracking_title=newList(sz); message=newList(sz); checkpoint_time=newList(sz); status=newList(sz); expected_delivery1=newList(sz); tracking_title=newList(sz); for (i in [0 to size_i]){ courier=addElement(courier,track["data"]["trackings"][indices[i]]["slug"]); if(track["data"]["trackings"][indices[i]]["expected_delivery"]!=null){ expected_delivery=addElement(expected_delivery,i,track["data"]["trackings"][indices[i]]["expected_delivery"]);} if(track["data"]["trackings"][indices[i]]["title"]!=null){ tracking_title=addElement(tracking_title,i,track["data"]["trackings"][indices[i]]["title"]);} tracking_no=addElement(tracking_no,track["data"]["trackings"][indices[i]]["tracking_number"]); size=length(track["data"]["trackings"][indices[i]]["checkpoints"])-1; if(size>=0){ if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]!=null){ current_location=addElement(current_location,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]!=null){ message=addElement(message,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"]!=null){ checkpoint_time=addElement(checkpoint_time,i,replaceAll(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"],'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d:\\d\\d:\\d\\d)', '$4 $3-$2-$1'));}} if(track["data"]["trackings"][indices[i]]["tag"]!=null){ status=addElement(status,i,track["data"]["trackings"][indices[i]]["tag"]); } if(expected_delivery[i]!="null"){ expected_delivery1=addElement(expected_delivery1,i,replaceAll(findAll(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}'),'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)', '$3-$2-$1'));} else {expected_delivery1=addElement(expected_delivery1,i,"TBD")} } //matches(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}')==true
true
Script: slug=value;
true
Script: track=fromJSON(response_aftership); trackings_size=length(track["data"]["trackings"])-1; if(trackings_size!="-1") { slugs=newList(); for (i in [0 to trackings_size]) {slugs=addElement(slugs,track["data"]["trackings"][i]["title"]+" - "+track["data"]["trackings"][i]["slug"]+" - "+track["data"]["trackings"][i]["tracking_number"])} slugs=replaceAll(slugs,'[\\[\\]]','');}
true
Script: track=fromJSON(response_aftership); trackings_size=length(track["data"]["trackings"])-1; if(trackings_size!="-1") {slugs=newList(); for (i in [0 to trackings_size]) {slugs=addElement(slugs,track["data"]["trackings"][i]["title"]+" - "+track["data"]["trackings"][i]["slug"]+" - "+track["data"]["trackings"][i]["tracking_number"])} slugs=replaceAll(slugs,'[\\[\\]]','');}
true
Sleep: 3s (keep device awake)
3s
true
false
aftership
Aftership
false
STOP
Shortcut: TrackOrder
Script: i=i+1;
Expression: i<deletesize;
Expression: contains(response_aftership,'"code":201')
Script: global_trackingno=value;
Expression: operation=="ok";
Expression: operation=="ok";
Input Dialog: Multi Choice {slugs}
Script: deletelist=newList(); deletelist=newList(); deleteslug=newList(); deleteslug1=newList(); deletelist=findAll(value, '\\d{6,20}'); deletelist=removeDuplicateElements(deletelist); deletesize=length(deletelist)-1; deleteslug=findAll(value,'(?<= \\- )((\\D(?<!\\s\\-))+)');//or you can use '(?<= \\- )((\\D(?<!\\s\\-))+)' //'(?<= \\- )(\\w|\\-)+? ' deleteslugsize=length(deleteslug)-1; for (i in [0 to deleteslugsize]) { deleteslug1=addElement(deleteslug1,trim(deleteslug[i]));} i=-1;
Expression: operation=="ok";
Confirm Dialog: delete
Notification on Screen: Deleted
Notification on Screen: Please Wait...
Script: slug=value;
Expression: trackings_size=="-1";
Notification on Screen: No entries available [!empty list] (long)
Script: track=fromJSON(response_aftership); trackings_size=length(track["data"]["trackings"])-1; if(trackings_size!="-1") {slugs=newList(); for (i in [0 to trackings_size]) {slugs=addElement(slugs,track["data"]["trackings"][i]["title"]+" - "+track["data"]["trackings"][i]["slug"]+" - "+track["data"]["trackings"][i]["tracking_number"])} slugs=replaceAll(slugs,'[\\[\\]]','');}
Confirm Dialog: 3
Expression: operation=="ok";
Expression: operation=="ok";
Notification on Screen: Loading List
Script: track=fromJSON(response_aftership); trackings_size=length(track["data"]["trackings"])-1; if(trackings_size!="-1") { slugs=newList(); for (i in [0 to trackings_size]) {slugs=addElement(slugs,track["data"]["trackings"][i]["title"]+" - "+track["data"]["trackings"][i]["slug"]+" - "+track["data"]["trackings"][i]["tracking_number"])} slugs=replaceAll(slugs,'[\\[\\]]','');}
Notification on Screen: Please Wait
HTTP Request: GET https://api.aftership.com/v4/trackings store in response_aftership3
HTTP Request: DELETE https://api.aftership.com/v4/trackings/{deleteslug[i]}/{deletelist[i]} store in response_aftership4
Input Dialog: Enter AWB No. Single-line text 1
Input Dialog: Enter Title Single-line text you can give any title you want
Notification on Screen: Successfully Added to Track list
Script: cnt_couriers=newList(); string='[\\w\\d\\-]+(?=,'+"{value})"; cnt_couriers=sort(findAll(all_couriers,string), false, true);
Input Dialog: Choose your courier Single Choice {cnt_couriers}
Input Dialog: Choose your country code Single Choice {all_countries}
Script: all_couriers=newList(); all_countries=newList(); cnt_couriers=newList(); couriers=fromJSON(response_aftership); size1=(couriers["data"]["total"])-1; for(i in [0 to size1]){ all_couriers=addElement(all_couriers,couriers["data"]["couriers"][i]["slug"]); all_couriers=addElement(all_couriers,replaceAll(couriers["data"]["couriers"][i]["service_from_country_iso3"], '[\\[\\]]', '')); } all_countries=sort(removeDuplicateElements(findAll(all_couriers,'[A-Z]{3}')),false,true);
HTTP Request: GET https://api.aftership.com/v4/couriers/all store in response_aftership2
Expression: trackings_size=="-1";
Input Dialog: Multi Choice {slugs},#Add or Remove#
Expression: operation=="ok";
Sleep: 3s (keep device awake)
Notification on Screen: Deselect 'Add or Remove' From Selection ( or choose it solely) (long)
Expression: value=="[#Add or Remove#]";
HTTP Request: POST https://api.aftership.com/v4/trackings text/plain {json_data} store in response_aftership5
Script: json_data='{ "tracking": { "slug": "delhivery", "tracking_number": "1950334246683", "title": "Title Name", "smses": [], "emails": [ "", "" ], "order_id": "", "order_id_path": "", "custom_fields": { "product_name": "", "product_price": "" }, "language": "en" } }'; json_data=replaceAll(json_data,'(?<=slug": ")((\\w|\\W(?<!\\").)+)',slug); json_data=replaceAll(json_data,'(?<=tracking_number": ")((\\w|\\W(?<!\\").)+)',global_trackingno); json_data=replaceAll(json_data,'(?<=title": ")((\\w|\\W(?<!\\").)+)',value);
Notification on Screen: Please Wait...
HTTP Request: GET https://api.aftership.com/v4/trackings store in response_aftership1
Script: message1=newList(); //message1=addElement(message1," "); for (i in [0 to size_i]) { message1=addElement(message1," ###{tracking_title[i]}###\n\n{courier[i]} - {tracking_no[i]}\n\nStatus:-{status[i]}\n\nFull Status :- {message[i]}\n\nLast Checkpoint :- {current_location[i]}\n\nTime at Checkpoint :-{checkpoint_time[i]}\n\nExpected delivery :- {expected_delivery1[i]}\n-------------------------------------------------------\n\n") } message2=replaceAll(message1,'[\\[\\]\\,]','') //size_m=length(message); //message2=addElement(message1,0,message[)
Insert your api key here
Script: size_i=length(indices)-1; expected_delivery=newList(); current_location=newList(); tracking_title=newList(); message=newList(); checkpoint_time=newList(); status=newList(); expected_delivery1=newList(); for(i in [0 to size_i]){ expected_delivery=addElement(expected_delivery,"TBD"); current_location=addElement(current_location,"TBD"); tracking_title=addElement(tracking_title,"TBD"); message=addElement(message,"TBD"); checkpoint_time=addElement(checkpoint_time,"TBD"); status=addElement(status,"TBD"); expected_delivery1=addElement(expected_delivery1,"TBD"); } for (i in [0 to size_i]){ courier=addElement(courier,track["data"]["trackings"][indices[i]]["slug"]); if(track["data"]["trackings"][indices[i]]["expected_delivery"]!=null OR track["data"]["trackings"][indices[i]]["expected_delivery"]!="null"){ expected_delivery=addElement(expected_delivery,i,track["data"]["trackings"][indices[i]]["expected_delivery"]); } if(track["data"]["trackings"][indices[i]]["title"]!=null){ tracking_title=addElement(tracking_title,i,track["data"]["trackings"][indices[i]]["title"]);} tracking_no=addElement(tracking_no,track["data"]["trackings"][indices[i]]["tracking_number"]); size=length(track["data"]["trackings"][indices[i]]["checkpoints"])-1; if(size>=0){ if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]!=null){ current_location=addElement(current_location,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]!=null){ message=addElement(message,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"]!=null){ checkpoint_time=addElement(checkpoint_time,i,replaceAll(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"],'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d:\\d\\d:\\d\\d)', '$4 $3-$2-$1'));}} if(track["data"]["trackings"][indices[i]]["tag"]!=null){ status=addElement(status,i,track["data"]["trackings"][indices[i]]["tag"]); } if(expected_delivery[i]!=null){ expected_delivery1=addElement(expected_delivery1,i,replaceAll(findAll(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}'),'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)', '$3-$2-$1'));} else {expected_delivery1=addElement(expected_delivery1,i,"TBD")} } //matches(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}')==true
Expression: contains(value,"#Add or Remove#");
Script: size_i=length(indices)-1; for(i in [0 to size_i]){ sz="TBD,"+i;} sz=replaceAll(sz,'\\d',''); //sz=text*(size_i+1); expected_delivery=newList(sz); current_location=newList(sz); tracking_title=newList(sz); message=newList(sz); checkpoint_time=newList(sz); status=newList(sz); expected_delivery1=newList(sz); tracking_title=newList(sz); for (i in [0 to size_i]){ courier=addElement(courier,track["data"]["trackings"][indices[i]]["slug"]); if(track["data"]["trackings"][indices[i]]["expected_delivery"]!=null){ expected_delivery=addElement(expected_delivery,i,track["data"]["trackings"][indices[i]]["expected_delivery"]);} if(track["data"]["trackings"][indices[i]]["title"]!=null){ tracking_title=addElement(tracking_title,i,track["data"]["trackings"][indices[i]]["title"]);} tracking_no=addElement(tracking_no,track["data"]["trackings"][indices[i]]["tracking_number"]); size=length(track["data"]["trackings"][indices[i]]["checkpoints"])-1; if(size>=0){ if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]!=null){ current_location=addElement(current_location,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["location"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]!=null){ message=addElement(message,i,track["data"]["trackings"][indices[i]]["checkpoints"][size]["message"]);} if(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"]!=null){ checkpoint_time=addElement(checkpoint_time,i,replaceAll(track["data"]["trackings"][indices[i]]["checkpoints"][size]["checkpoint_time"],'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)T(\\d\\d:\\d\\d:\\d\\d)', '$4 $3-$2-$1'));}} if(track["data"]["trackings"][indices[i]]["tag"]!=null){ status=addElement(status,i,track["data"]["trackings"][indices[i]]["tag"]); } if(expected_delivery[i]!="null"){ expected_delivery1=addElement(expected_delivery1,i,replaceAll(findAll(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}'),'(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)', '$3-$2-$1'));} else {expected_delivery1=addElement(expected_delivery1,i,"TBD")} } //matches(expected_delivery[i], '^\\d{4}-\\d{2}-\\d{2}')==true
Input Dialog: Multi-line text val
Script: api_key="d11a3472-cb66-40be-a27f-1c0226637508"; //remove this with your api key obtained from aftership, this is a sample api-key and will not work.