Modify Mail Order
https://bll.titan.email/partner/modifyMailOrderAPI to modify an existing Mail Order on Titan
Body
application/jsonThe unique order ID against each domain provisioned with Titan
The order ID stored on your end for this mail order, if any. If needed, You can use this data to correlate orders at your end and in Titan.The data is returned in listMailOrders call.
This is the Titan mail plan to be provisioned against the domain. In case the plan needs to be changed, the updated plan must be provided
Required if domain is moving to paid plan or will remain on paid plan. This needs to be passed in customer's currency. It is the actual cost that the user has paid while purchasing the order after any discount (which also includes tax if any).
Total amount charged by the partner to the end customer in USD for this purchase including taxAmount. It is the actual cost that the user has paid in USD while purchasing after any discount (which also includes tax if any). Partner should provide this value, if the order is provisioned on paid plan. Open exchange rates will be used if the partner does not provide this value.
Any ad hoc discount given to the customer for this purchase. This should be passed in the original currency in which amount was charged to the customers. Titan will use this as a placeholder to check if there are any discounts given to the customer.
Amount collected from the user as TAX amount in the customer's currency for this purchase. Titan will deduct this amount from the chargedAmount to get revenue sharing amount. Precision upto 2 decimal places.
This defines the period for which the customer has been billed for Titan mail by the partner. This is for Titan to track the billing cycle/details for that customer. Existing options are
In yyyy-MM-dd format.
Required for Paid and Trial Plans.
If the billing is managed by partner then partner should mark order suspended on expiry date. Titan does not suspend, expire, or delete the order on your behalf in this mode, except as a safety-net measure: Titan may suspend an order whose expiryDate has remained stale for an extended period with no partner action.
If the billing is managed by Titan, then Titan will mark order suspended on non-renewal on expiry day.
And after 7 days of expiry, order will be marked deleted. The permanent deletion of order data happens after 30 days of deletion.
If order is on the free plan or moving to free plan and partner wants to reset expiry date to empty, then partner should send "" (empty string) as expiry date.
The number of accounts or mailboxes to be provisioned after modification. E.g. User had 3 mailboxes and wants to buy 2 more, this parameter will have to be 2+3->5. This is used as a limiting parameter for the user to create accounts within the control panel. E.g. if this is set to 5, the user will not be allowed to create more than 5 mailboxes
Description for the type of modifications being performed
The source from which the order is received - Refers to the kind of package provisioned on the partners end. Source field should be either of these values - domain, standalone, hosting, migrated. It will be validated against these values when the Api call is made
The purchase hook from where Titan plan has been purchased by the customer
Purpose - This is used by Titan for reference and analyse the efficacy of various purchase hooks within the partner ecosystem from where customers are purchasing Titan paid plans. Some examples for sourceContext can be "website", "hpanel_store", "cPanel_hosting_email_section", "cPanel_email_tab", "email_marketing", etc.
Details of associated partner order
Show propertiesHide properties
partner brand using which order modification happened
payment method used during purchase, i.e : credit_card, paypal, etc
true/false, auto-renew value
Responses
200OKapplication/json
/partner/modifyMailOrder#include <curl/curl.h>
int main(void) {
curl_global_init(CURL_GLOBAL_DEFAULT);
CURL *curl = curl_easy_init();
if (!curl) {
curl_global_cleanup();
return 1;
}
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(curl, CURLOPT_URL, "https://bll.titan.email/partner/modifyMailOrder");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: API.Key");
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS,
"{\n"
" \"titanOrderId\": 1,\n"
" \"orderId\": \"partner.order.id\",\n"
" \"planType\": \"pro\",\n"
" \"paymentTxnId\": \"qweradsf\",\n"
" \"chargedAmount\": 1.1,\n"
" \"chargedUSDAmount\": 1.1,\n"
" \"discountAmount\": 0.1,\n"
" \"taxAmount\": 0.1,\n"
" \"billingCycle\": \"monthly\",\n"
" \"expiryDate\": \"2020-02-20\",\n"
" \"currency\": \"USD\",\n"
" \"noOfAccounts\": 10,\n"
" \"action\": \"newPurchase\",\n"
" \"source\": \"domain\",\n"
" \"sourceContext\": \"website\",\n"
" \"metadata\": {\n"
" \"partnerBrand\": \"string\",\n"
" \"paymentMethod\": \"string\",\n"
" \"autoRenew\": \"string\"\n"
" }\n"
"}");
CURLcode res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
curl_slist_free_all(headers);
curl_global_cleanup();
return (int)res;
}using var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://bll.titan.email/partner/modifyMailOrder");
request.Headers.TryAddWithoutValidation("Authorization", "API.Key");
request.Content = new StringContent(
"""
{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
""",
System.Text.Encoding.UTF8, "application/json");
using var response = await client.SendAsync(request);var client = new RestClient("https://bll.titan.email/partner/modifyMailOrder");
var request = new RestRequest("", Method.Post);
request.AddHeader("Authorization", "API.Key");
request.AddHeader("Content-Type", "application/json");
request.AddStringBody("""
{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
""", ContentType.Json);
var response = await client.ExecuteAsync(request);(require '[clj-http.client :as client])
(client/post "https://bll.titan.email/partner/modifyMailOrder" {:headers {:Authorization "API.Key"}
:content-type :json
:form-params {:titanOrderId 1
:orderId "partner.order.id"
:planType "pro"
:paymentTxnId "qweradsf"
:chargedAmount 1.1
:chargedUSDAmount 1.1
:discountAmount 0.1
:taxAmount 0.1
:billingCycle "monthly"
:expiryDate "2020-02-20"
:currency "USD"
:noOfAccounts 10
:action "newPurchase"
:source "domain"
:sourceContext "website"
:metadata {:partnerBrand "string"
:paymentMethod "string"
:autoRenew "string"}}})import 'package:http/http.dart' as http;
void main() async {
final headers = <String,String>{
'Authorization': 'API.Key',
'Content-Type': 'application/json',
};
final body = r'{"titanOrderId":1,"orderId":"partner.order.id","planType":"pro","paymentTxnId":"qweradsf","chargedAmount":1.1,"chargedUSDAmount":1.1,"discountAmount":0.1,"taxAmount":0.1,"billingCycle":"monthly","expiryDate":"2020-02-20","currency":"USD","noOfAccounts":10,"action":"newPurchase","source":"domain","sourceContext":"website","metadata":{"partnerBrand":"string","paymentMethod":"string","autoRenew":"string"}}';
final response = await http.post(Uri.parse('https://bll.titan.email/partner/modifyMailOrder'), headers: headers, body: body);
print(response.body);
}let httpRequestMessage = new HttpRequestMessage(
HttpMethod("POST"),
new Uri("https://bll.titan.email/partner/modifyMailOrder")
)
httpRequestMessage.Headers.Add("Authorization", "API.Key")
httpRequestMessage.Headers.Add("Content-Type", "application/json")
let content = new StringContent("""{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}""", Encoding.UTF8, "application/json")
httpRequestMessage.Content <- content
let client = new HttpClient()
let! result = client.SendAsync(httpRequestMessage)
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
requestUrl := "https://bll.titan.email/partner/modifyMailOrder"
payload := strings.NewReader(`{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}`)
req, _ := http.NewRequest("POST", requestUrl, payload)
req.Header.Add("Authorization", "API.Key")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}POST /partner/modifyMailOrder HTTP/1.1
Host: bll.titan.email
Authorization: API.Key
Content-Type: application/json
{"titanOrderId":1,"orderId":"partner.order.id","planType":"pro","paymentTxnId":"qweradsf","chargedAmount":1.1,"chargedUSDAmount":1.1,"discountAmount":0.1,"taxAmount":0.1,"billingCycle":"monthly","expiryDate":"2020-02-20","currency":"USD","noOfAccounts":10,"action":"newPurchase","source":"domain","sourceContext":"website","metadata":{"partnerBrand":"string","paymentMethod":"string","autoRenew":"string"}}POST /bll/partner/modifyMailOrder HTTP/1.1
Host: api-euc1.titan.email
Authorization: API.Key
Content-Type: application/json
{"titanOrderId":1,"orderId":"partner.order.id","planType":"pro","paymentTxnId":"qweradsf","chargedAmount":1.1,"chargedUSDAmount":1.1,"discountAmount":0.1,"taxAmount":0.1,"billingCycle":"monthly","expiryDate":"2020-02-20","currency":"USD","noOfAccounts":10,"action":"newPurchase","source":"domain","sourceContext":"website","metadata":{"partnerBrand":"string","paymentMethod":"string","autoRenew":"string"}}java.io.ByteArrayOutputStream body = new java.io.ByteArrayOutputStream();
body.write("{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}".getBytes(java.nio.charset.StandardCharsets.UTF_8));
try (AsyncHttpClient client = new DefaultAsyncHttpClient()) {
Response response = client.prepare("POST", "https://bll.titan.email/partner/modifyMailOrder")
.addHeader("Authorization", "API.Key")
.addHeader("Content-Type", "application/json")
.setBody(body.toByteArray())
.execute()
.get();
System.out.println(response.getResponseBody());
}java.io.ByteArrayOutputStream body = new java.io.ByteArrayOutputStream();
body.write("{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}".getBytes(java.nio.charset.StandardCharsets.UTF_8));
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(java.net.URI.create("https://bll.titan.email/partner/modifyMailOrder"))
.header("Authorization", "API.Key")
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofByteArray(body.toByteArray()))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());OkHttpClient client = new OkHttpClient();
RequestBody body = RequestBody.create(MediaType.parse("application/json"), "{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}");
Request request = new Request.Builder()
.url("https://bll.titan.email/partner/modifyMailOrder")
.method("POST", body)
.addHeader("Authorization", "API.Key")
.addHeader("Content-Type", "application/json")
.build();
try (Response response = client.newCall(request).execute()) {
System.out.println(response.body().string());
}java.io.ByteArrayOutputStream body = new java.io.ByteArrayOutputStream();
body.write("{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}".getBytes(java.nio.charset.StandardCharsets.UTF_8));
HttpResponse<String> response = Unirest.request("POST", "https://bll.titan.email/partner/modifyMailOrder")
.header("Authorization", "API.Key")
.header("Content-Type", "application/json")
.body(body.toByteArray())
.asString();
System.out.println(response.getBody());fetch('https://bll.titan.email/partner/modifyMailOrder', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
titanOrderId: 1,
orderId: 'partner.order.id',
planType: 'pro',
paymentTxnId: 'qweradsf',
chargedAmount: 1.1,
chargedUSDAmount: 1.1,
discountAmount: 0.1,
taxAmount: 0.1,
billingCycle: 'monthly',
expiryDate: '2020-02-20',
currency: 'USD',
noOfAccounts: 10,
action: 'newPurchase',
source: 'domain',
sourceContext: 'website',
metadata: {
partnerBrand: 'string',
paymentMethod: 'string',
autoRenew: 'string'
}
})
})import axios from 'axios'
const options = {
method: 'POST',
url: 'https://bll.titan.email/partner/modifyMailOrder',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
data: {
titanOrderId: 1,
orderId: 'partner.order.id',
planType: 'pro',
paymentTxnId: 'qweradsf',
chargedAmount: 1.1,
chargedUSDAmount: 1.1,
discountAmount: 0.1,
taxAmount: 0.1,
billingCycle: 'monthly',
expiryDate: '2020-02-20',
currency: 'USD',
noOfAccounts: 10,
action: 'newPurchase',
source: 'domain',
sourceContext: 'website',
metadata: {
partnerBrand: 'string',
paymentMethod: 'string',
autoRenew: 'string'
}
}
}
try {
const { data } = await axios.request(options)
console.log(data)
} catch (error) {
console.error(error)
}import { ofetch } from 'ofetch'
ofetch('https://bll.titan.email/partner/modifyMailOrder', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: {
titanOrderId: 1,
orderId: 'partner.order.id',
planType: 'pro',
paymentTxnId: 'qweradsf',
chargedAmount: 1.1,
chargedUSDAmount: 1.1,
discountAmount: 0.1,
taxAmount: 0.1,
billingCycle: 'monthly',
expiryDate: '2020-02-20',
currency: 'USD',
noOfAccounts: 10,
action: 'newPurchase',
source: 'domain',
sourceContext: 'website',
metadata: {
partnerBrand: 'string',
paymentMethod: 'string',
autoRenew: 'string'
}
}
})$.ajax({
url: "https://bll.titan.email/partner/modifyMailOrder",
method: "POST",
processData: false,
contentType: false,
beforeSend(xhr) {
xhr.setRequestHeader("Authorization", "API.Key");
xhr.setRequestHeader("Content-Type", "application/json");
},
data: "{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}"
}).done((response) => console.log(response));const xhr = new XMLHttpRequest();
xhr.open("POST", "https://bll.titan.email/partner/modifyMailOrder");
xhr.withCredentials = true;
xhr.setRequestHeader("Authorization", "API.Key");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.addEventListener("load", () => console.log(xhr.responseText));
xhr.send("{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}");using HTTP
using JSON
response = HTTP.post(
"https://bll.titan.email/partner/modifyMailOrder",
[
"Authorization" => "API.Key",
"Content-Type" => "application/json"
],
JSON.json(Dict(
"titanOrderId" => 1,
"orderId" => "partner.order.id",
"planType" => "pro",
"paymentTxnId" => "qweradsf",
"chargedAmount" => 1.1,
"chargedUSDAmount" => 1.1,
"discountAmount" => 0.1,
"taxAmount" => 0.1,
"billingCycle" => "monthly",
"expiryDate" => "2020-02-20",
"currency" => "USD",
"noOfAccounts" => 10,
"action" => "newPurchase",
"source" => "domain",
"sourceContext" => "website",
"metadata" => Dict(
"partnerBrand" => "string",
"paymentMethod" => "string",
"autoRenew" => "string"
)
))
)
println(String(response.body))val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}")
val request = Request.Builder()
.url("https://bll.titan.email/partner/modifyMailOrder")
.post(body)
.addHeader("Authorization", "API.Key")
.addHeader("Content-Type", "application/json")
.build()
val response = client.newCall(request).execute()fetch('https://bll.titan.email/partner/modifyMailOrder', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
titanOrderId: 1,
orderId: 'partner.order.id',
planType: 'pro',
paymentTxnId: 'qweradsf',
chargedAmount: 1.1,
chargedUSDAmount: 1.1,
discountAmount: 0.1,
taxAmount: 0.1,
billingCycle: 'monthly',
expiryDate: '2020-02-20',
currency: 'USD',
noOfAccounts: 10,
action: 'newPurchase',
source: 'domain',
sourceContext: 'website',
metadata: {
partnerBrand: 'string',
paymentMethod: 'string',
autoRenew: 'string'
}
})
})import axios from 'axios'
const options = {
method: 'POST',
url: 'https://bll.titan.email/partner/modifyMailOrder',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
data: {
titanOrderId: 1,
orderId: 'partner.order.id',
planType: 'pro',
paymentTxnId: 'qweradsf',
chargedAmount: 1.1,
chargedUSDAmount: 1.1,
discountAmount: 0.1,
taxAmount: 0.1,
billingCycle: 'monthly',
expiryDate: '2020-02-20',
currency: 'USD',
noOfAccounts: 10,
action: 'newPurchase',
source: 'domain',
sourceContext: 'website',
metadata: {
partnerBrand: 'string',
paymentMethod: 'string',
autoRenew: 'string'
}
}
}
try {
const { data } = await axios.request(options)
console.log(data)
} catch (error) {
console.error(error)
}import { ofetch } from 'ofetch'
ofetch('https://bll.titan.email/partner/modifyMailOrder', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: {
titanOrderId: 1,
orderId: 'partner.order.id',
planType: 'pro',
paymentTxnId: 'qweradsf',
chargedAmount: 1.1,
chargedUSDAmount: 1.1,
discountAmount: 0.1,
taxAmount: 0.1,
billingCycle: 'monthly',
expiryDate: '2020-02-20',
currency: 'USD',
noOfAccounts: 10,
action: 'newPurchase',
source: 'domain',
sourceContext: 'website',
metadata: {
partnerBrand: 'string',
paymentMethod: 'string',
autoRenew: 'string'
}
}
})import { request } from 'undici'
const { statusCode, body } = await request('https://bll.titan.email/partner/modifyMailOrder', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
titanOrderId: 1,
orderId: 'partner.order.id',
planType: 'pro',
paymentTxnId: 'qweradsf',
chargedAmount: 1.1,
chargedUSDAmount: 1.1,
discountAmount: 0.1,
taxAmount: 0.1,
billingCycle: 'monthly',
expiryDate: '2020-02-20',
currency: 'USD',
noOfAccounts: 10,
action: 'newPurchase',
source: 'domain',
sourceContext: 'website',
metadata: {
partnerBrand: 'string',
paymentMethod: 'string',
autoRenew: 'string'
}
})
})#import <Foundation/Foundation.h>
NSDictionary *headers = @{ @"Authorization": @"API.Key",
@"Content-Type": @"application/json" };
NSDictionary *parameters = @{ @"titanOrderId": @1,
@"orderId": @"partner.order.id",
@"planType": @"pro",
@"paymentTxnId": @"qweradsf",
@"chargedAmount": @1.1,
@"chargedUSDAmount": @1.1,
@"discountAmount": @0.1,
@"taxAmount": @0.1,
@"billingCycle": @"monthly",
@"expiryDate": @"2020-02-20",
@"currency": @"USD",
@"noOfAccounts": @10,
@"action": @"newPurchase",
@"source": @"domain",
@"sourceContext": @"website",
@"metadata": @{ @"partnerBrand": @"string", @"paymentMethod": @"string", @"autoRenew": @"string" } };
NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://bll.titan.email/partner/modifyMailOrder"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"POST"];
[request setAllHTTPHeaderFields:headers];
[request setHTTPBody:postData];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSLog(@"%@", httpResponse);
}
}];
[dataTask resume];open Lwt.Infix
let () =
Lwt_main.run (
let uri = Uri.of_string "https://bll.titan.email/partner/modifyMailOrder" in
let headers = Cohttp.Header.of_list [
("Authorization", "API.Key");
("Content-Type", "application/json");
] in
let part0 = "{\"titanOrderId\":1,\"orderId\":\"partner.order.id\",\"planType\":\"pro\",\"paymentTxnId\":\"qweradsf\",\"chargedAmount\":1.1,\"chargedUSDAmount\":1.1,\"discountAmount\":0.1,\"taxAmount\":0.1,\"billingCycle\":\"monthly\",\"expiryDate\":\"2020-02-20\",\"currency\":\"USD\",\"noOfAccounts\":10,\"action\":\"newPurchase\",\"source\":\"domain\",\"sourceContext\":\"website\",\"metadata\":{\"partnerBrand\":\"string\",\"paymentMethod\":\"string\",\"autoRenew\":\"string\"}}" in
let body = Cohttp_lwt.Body.of_string (String.concat "" [part0]) in
Cohttp_lwt_unix.Client.call ~headers ~body (Cohttp.Code.method_of_string "POST") uri
>>= fun (_response, body) ->
Cohttp_lwt.Body.to_string body >>= Lwt_io.printl
)$ch = curl_init("https://bll.titan.email/partner/modifyMailOrder");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: API.Key', 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'titanOrderId' => 1,
'orderId' => 'partner.order.id',
'planType' => 'pro',
'paymentTxnId' => 'qweradsf',
'chargedAmount' => 1.1,
'chargedUSDAmount' => 1.1,
'discountAmount' => 0.1,
'taxAmount' => 0.1,
'billingCycle' => 'monthly',
'expiryDate' => '2020-02-20',
'currency' => 'USD',
'noOfAccounts' => 10,
'action' => 'newPurchase',
'source' => 'domain',
'sourceContext' => 'website',
'metadata' => [
'partnerBrand' => 'string',
'paymentMethod' => 'string',
'autoRenew' => 'string'
]
]));
curl_exec($ch);
curl_close($ch);$client = new GuzzleHttp\Client();
$response = $client->request('POST', 'https://bll.titan.email/partner/modifyMailOrder', [
'headers' => [
'Authorization' => 'API.Key',
'Content-Type' => 'application/json'
],
'json' => [
'titanOrderId' => 1,
'orderId' => 'partner.order.id',
'planType' => 'pro',
'paymentTxnId' => 'qweradsf',
'chargedAmount' => 1.1,
'chargedUSDAmount' => 1.1,
'discountAmount' => 0.1,
'taxAmount' => 0.1,
'billingCycle' => 'monthly',
'expiryDate' => '2020-02-20',
'currency' => 'USD',
'noOfAccounts' => 10,
'action' => 'newPurchase',
'source' => 'domain',
'sourceContext' => 'website',
'metadata' => [
'partnerBrand' => 'string',
'paymentMethod' => 'string',
'autoRenew' => 'string'
]
]
]);use Illuminate\Support\Facades\Http;
$response = Http::withHeaders([
'Authorization' => 'API.Key',
'Content-Type' => 'application/json'
])
->post('https://bll.titan.email/partner/modifyMailOrder', [
'titanOrderId' => 1,
'orderId' => 'partner.order.id',
'planType' => 'pro',
'paymentTxnId' => 'qweradsf',
'chargedAmount' => 1.1,
'chargedUSDAmount' => 1.1,
'discountAmount' => 0.1,
'taxAmount' => 0.1,
'billingCycle' => 'monthly',
'expiryDate' => '2020-02-20',
'currency' => 'USD',
'noOfAccounts' => 10,
'action' => 'newPurchase',
'source' => 'domain',
'sourceContext' => 'website',
'metadata' => [
'partnerBrand' => 'string',
'paymentMethod' => 'string',
'autoRenew' => 'string'
]
]);$headers = @{
'Authorization' = 'API.Key'
'Content-Type' = 'application/json'
}
$body = [System.IO.MemoryStream]::new()
$bytes = [System.Text.Encoding]::UTF8.GetBytes('{"titanOrderId":1,"orderId":"partner.order.id","planType":"pro","paymentTxnId":"qweradsf","chargedAmount":1.1,"chargedUSDAmount":1.1,"discountAmount":0.1,"taxAmount":0.1,"billingCycle":"monthly","expiryDate":"2020-02-20","currency":"USD","noOfAccounts":10,"action":"newPurchase","source":"domain","sourceContext":"website","metadata":{"partnerBrand":"string","paymentMethod":"string","autoRenew":"string"}}')
$body.Write($bytes, 0, $bytes.Length)
$response = Invoke-WebRequest -Uri 'https://bll.titan.email/partner/modifyMailOrder' -Method 'POST' -Headers $headers -Body $body.ToArray()
$body.Dispose()
$response$headers = @{
'Authorization' = 'API.Key'
'Content-Type' = 'application/json'
}
$body = [System.IO.MemoryStream]::new()
$bytes = [System.Text.Encoding]::UTF8.GetBytes('{"titanOrderId":1,"orderId":"partner.order.id","planType":"pro","paymentTxnId":"qweradsf","chargedAmount":1.1,"chargedUSDAmount":1.1,"discountAmount":0.1,"taxAmount":0.1,"billingCycle":"monthly","expiryDate":"2020-02-20","currency":"USD","noOfAccounts":10,"action":"newPurchase","source":"domain","sourceContext":"website","metadata":{"partnerBrand":"string","paymentMethod":"string","autoRenew":"string"}}')
$body.Write($bytes, 0, $bytes.Length)
$response = Invoke-RestMethod -Uri 'https://bll.titan.email/partner/modifyMailOrder' -Method 'POST' -Headers $headers -Body $body.ToArray()
$body.Dispose()
$responseimport http.client
import json
conn = http.client.HTTPSConnection("bll.titan.email")
payload = json.dumps({
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
})
headers = {
"Authorization": "API.Key",
"Content-Type": "application/json"
}
conn.request(
"POST",
"/partner/modifyMailOrder",
body=payload,
headers=headers,
)
response = conn.getresponse()
print(response.read().decode())
conn.close()import http.client
import json
conn = http.client.HTTPSConnection("api-euc1.titan.email")
payload = json.dumps({
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
})
headers = {
"Authorization": "API.Key",
"Content-Type": "application/json"
}
conn.request(
"POST",
"/bll/partner/modifyMailOrder",
body=payload,
headers=headers,
)
response = conn.getresponse()
print(response.read().decode())
conn.close()requests.post(
"https://bll.titan.email/partner/modifyMailOrder",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
)async with aiohttp.ClientSession() as session:
await session.post(
"https://bll.titan.email/partner/modifyMailOrder",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
)httpx.post(
"https://bll.titan.email/partner/modifyMailOrder",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
)async with httpx.AsyncClient() as client:
await client.post(
"https://bll.titan.email/partner/modifyMailOrder",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
)library(httr2)
response <- request("https://bll.titan.email/partner/modifyMailOrder") |>
req_method("POST") |>
req_headers(
"Authorization" = "API.Key",
"Content-Type" = "application/json"
) |>
req_body_json(list(
titanOrderId = 1,
orderId = "partner.order.id",
planType = "pro",
paymentTxnId = "qweradsf",
chargedAmount = 1.1,
chargedUSDAmount = 1.1,
discountAmount = 0.1,
taxAmount = 0.1,
billingCycle = "monthly",
expiryDate = "2020-02-20",
currency = "USD",
noOfAccounts = 10,
action = "newPurchase",
source = "domain",
sourceContext = "website",
metadata = list(
partnerBrand = "string",
paymentMethod = "string",
autoRenew = "string"
)
)) |>
req_perform()
resp_body_string(response)require 'uri'
require 'net/http'
url = URI("https://bll.titan.email/partner/modifyMailOrder")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'API.Key'
request["Content-Type"] = 'application/json'
request.body = <<~JSON
{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
JSON
response = http.request(request)
puts response.read_bodylet client = reqwest::Client::new();
let request = client
.post("https://bll.titan.email/partner/modifyMailOrder")
.header("Authorization", "API.Key")
.header("Content-Type", "application/json")
.json(&serde_json::json!({
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}));
let response = request.send().await?;curl https://bll.titan.email/partner/modifyMailOrder \
--request POST \
--header 'Authorization: API.Key' \
--header 'Content-Type: application/json' \
--data '{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}'wget --quiet \
--method POST \
--header 'Authorization: API.Key' \
--header 'Content-Type: application/json' \
--body-data '{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}' \
--output-document \
- https://bll.titan.email/partner/modifyMailOrderhttp --ignore-stdin 'POST' 'https://bll.titan.email/partner/modifyMailOrder' \
'Authorization:API.Key' \
'Content-Type:application/json' \
--raw='{"titanOrderId":1,"orderId":"partner.order.id","planType":"pro","paymentTxnId":"qweradsf","chargedAmount":1.1,"chargedUSDAmount":1.1,"discountAmount":0.1,"taxAmount":0.1,"billingCycle":"monthly","expiryDate":"2020-02-20","currency":"USD","noOfAccounts":10,"action":"newPurchase","source":"domain","sourceContext":"website","metadata":{"partnerBrand":"string","paymentMethod":"string","autoRenew":"string"}}'import Foundation
var request = URLRequest(url: URL(string: "https://bll.titan.email/partner/modifyMailOrder")!)
request.httpMethod = "POST"
request.setValue("API.Key", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
let jsonBody = #"""
{
"titanOrderId": 1,
"orderId": "partner.order.id",
"planType": "pro",
"paymentTxnId": "qweradsf",
"chargedAmount": 1.1,
"chargedUSDAmount": 1.1,
"discountAmount": 0.1,
"taxAmount": 0.1,
"billingCycle": "monthly",
"expiryDate": "2020-02-20",
"currency": "USD",
"noOfAccounts": 10,
"action": "newPurchase",
"source": "domain",
"sourceContext": "website",
"metadata": {
"partnerBrand": "string",
"paymentMethod": "string",
"autoRenew": "string"
}
}
"""#
request.httpBody = jsonBody.data(using: .utf8)
let (data, response) = try await URLSession.shared.data(for: request)
guard let httpResponse = response as? HTTPURLResponse,
200..<300 ~= httpResponse.statusCode else {
throw URLError(.badServerResponse)
}
print(String(data: data, encoding: .utf8) ?? ""){
"reqID": "string"
}