Unsuspend Email Account
https://bll.titan.email/partner/unsuspendEmailAccountAPI to unsuspend any suspended Email Account
Body
application/jsonThe unique order ID against each domain provisioned with Titan
The unique mail account ID against each email provisioned with Titan
The email account within the mail order to be unsuspended.
Reason for the suspension (e.g. abuse, expiry, or any custom value).
Any internal description / ticket ID, visible in the parter-panel only to the partners support team. This is so that more info is communicated, and the next agent knows what to do with this case.
Responses
200OKapplication/json
Account can have multiple suspensions added by a partner due to non-payment or added by titan due to abuse. so after removal of suspension added by partner domain may still stay on suspended status. This newStatus reflects status after this unsuspend API call.
/partner/unsuspendEmailAccount#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/unsuspendEmailAccount");
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"
" \"titanAccountId\": 1,\n"
" \"email\": \"info@xyz.com\",\n"
" \"suspensionType\": \"abuse\",\n"
" \"note\": \"some reason\"\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/unsuspendEmailAccount");
request.Headers.TryAddWithoutValidation("Authorization", "API.Key");
request.Content = new StringContent(
"""
{
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
""",
System.Text.Encoding.UTF8, "application/json");
using var response = await client.SendAsync(request);var client = new RestClient("https://bll.titan.email/partner/unsuspendEmailAccount");
var request = new RestRequest("", Method.Post);
request.AddHeader("Authorization", "API.Key");
request.AddHeader("Content-Type", "application/json");
request.AddStringBody("""
{
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
""", ContentType.Json);
var response = await client.ExecuteAsync(request);(require '[clj-http.client :as client])
(client/post "https://bll.titan.email/partner/unsuspendEmailAccount" {:headers {:Authorization "API.Key"}
:content-type :json
:form-params {:titanOrderId 1
:titanAccountId 1
:email "info@xyz.com"
:suspensionType "abuse"
:note "some reason"}})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,"titanAccountId":1,"email":"info@xyz.com","suspensionType":"abuse","note":"some reason"}';
final response = await http.post(Uri.parse('https://bll.titan.email/partner/unsuspendEmailAccount'), headers: headers, body: body);
print(response.body);
}let httpRequestMessage = new HttpRequestMessage(
HttpMethod("POST"),
new Uri("https://bll.titan.email/partner/unsuspendEmailAccount")
)
httpRequestMessage.Headers.Add("Authorization", "API.Key")
httpRequestMessage.Headers.Add("Content-Type", "application/json")
let content = new StringContent("""{
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}""", 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/unsuspendEmailAccount"
payload := strings.NewReader(`{
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}`)
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/unsuspendEmailAccount HTTP/1.1
Host: bll.titan.email
Authorization: API.Key
Content-Type: application/json
{"titanOrderId":1,"titanAccountId":1,"email":"info@xyz.com","suspensionType":"abuse","note":"some reason"}POST /bll/partner/unsuspendEmailAccount HTTP/1.1
Host: api-euc1.titan.email
Authorization: API.Key
Content-Type: application/json
{"titanOrderId":1,"titanAccountId":1,"email":"info@xyz.com","suspensionType":"abuse","note":"some reason"}java.io.ByteArrayOutputStream body = new java.io.ByteArrayOutputStream();
body.write("{\"titanOrderId\":1,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}".getBytes(java.nio.charset.StandardCharsets.UTF_8));
try (AsyncHttpClient client = new DefaultAsyncHttpClient()) {
Response response = client.prepare("POST", "https://bll.titan.email/partner/unsuspendEmailAccount")
.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,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}".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/unsuspendEmailAccount"))
.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,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}");
Request request = new Request.Builder()
.url("https://bll.titan.email/partner/unsuspendEmailAccount")
.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,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}".getBytes(java.nio.charset.StandardCharsets.UTF_8));
HttpResponse<String> response = Unirest.request("POST", "https://bll.titan.email/partner/unsuspendEmailAccount")
.header("Authorization", "API.Key")
.header("Content-Type", "application/json")
.body(body.toByteArray())
.asString();
System.out.println(response.getBody());fetch('https://bll.titan.email/partner/unsuspendEmailAccount', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
titanOrderId: 1,
titanAccountId: 1,
email: 'info@xyz.com',
suspensionType: 'abuse',
note: 'some reason'
})
})import axios from 'axios'
const options = {
method: 'POST',
url: 'https://bll.titan.email/partner/unsuspendEmailAccount',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
data: {
titanOrderId: 1,
titanAccountId: 1,
email: 'info@xyz.com',
suspensionType: 'abuse',
note: 'some reason'
}
}
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/unsuspendEmailAccount', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: {
titanOrderId: 1,
titanAccountId: 1,
email: 'info@xyz.com',
suspensionType: 'abuse',
note: 'some reason'
}
})$.ajax({
url: "https://bll.titan.email/partner/unsuspendEmailAccount",
method: "POST",
processData: false,
contentType: false,
beforeSend(xhr) {
xhr.setRequestHeader("Authorization", "API.Key");
xhr.setRequestHeader("Content-Type", "application/json");
},
data: "{\"titanOrderId\":1,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}"
}).done((response) => console.log(response));const xhr = new XMLHttpRequest();
xhr.open("POST", "https://bll.titan.email/partner/unsuspendEmailAccount");
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,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}");using HTTP
using JSON
response = HTTP.post(
"https://bll.titan.email/partner/unsuspendEmailAccount",
[
"Authorization" => "API.Key",
"Content-Type" => "application/json"
],
JSON.json(Dict(
"titanOrderId" => 1,
"titanAccountId" => 1,
"email" => "info@xyz.com",
"suspensionType" => "abuse",
"note" => "some reason"
))
)
println(String(response.body))val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\"titanOrderId\":1,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}")
val request = Request.Builder()
.url("https://bll.titan.email/partner/unsuspendEmailAccount")
.post(body)
.addHeader("Authorization", "API.Key")
.addHeader("Content-Type", "application/json")
.build()
val response = client.newCall(request).execute()fetch('https://bll.titan.email/partner/unsuspendEmailAccount', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
titanOrderId: 1,
titanAccountId: 1,
email: 'info@xyz.com',
suspensionType: 'abuse',
note: 'some reason'
})
})import axios from 'axios'
const options = {
method: 'POST',
url: 'https://bll.titan.email/partner/unsuspendEmailAccount',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
data: {
titanOrderId: 1,
titanAccountId: 1,
email: 'info@xyz.com',
suspensionType: 'abuse',
note: 'some reason'
}
}
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/unsuspendEmailAccount', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: {
titanOrderId: 1,
titanAccountId: 1,
email: 'info@xyz.com',
suspensionType: 'abuse',
note: 'some reason'
}
})import { request } from 'undici'
const { statusCode, body } = await request('https://bll.titan.email/partner/unsuspendEmailAccount', {
method: 'POST',
headers: {
Authorization: 'API.Key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
titanOrderId: 1,
titanAccountId: 1,
email: 'info@xyz.com',
suspensionType: 'abuse',
note: 'some reason'
})
})#import <Foundation/Foundation.h>
NSDictionary *headers = @{ @"Authorization": @"API.Key",
@"Content-Type": @"application/json" };
NSDictionary *parameters = @{ @"titanOrderId": @1,
@"titanAccountId": @1,
@"email": @"info@xyz.com",
@"suspensionType": @"abuse",
@"note": @"some reason" };
NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://bll.titan.email/partner/unsuspendEmailAccount"]
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/unsuspendEmailAccount" in
let headers = Cohttp.Header.of_list [
("Authorization", "API.Key");
("Content-Type", "application/json");
] in
let part0 = "{\"titanOrderId\":1,\"titanAccountId\":1,\"email\":\"info@xyz.com\",\"suspensionType\":\"abuse\",\"note\":\"some reason\"}" 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/unsuspendEmailAccount");
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,
'titanAccountId' => 1,
'email' => 'info@xyz.com',
'suspensionType' => 'abuse',
'note' => 'some reason'
]));
curl_exec($ch);
curl_close($ch);$client = new GuzzleHttp\Client();
$response = $client->request('POST', 'https://bll.titan.email/partner/unsuspendEmailAccount', [
'headers' => [
'Authorization' => 'API.Key',
'Content-Type' => 'application/json'
],
'json' => [
'titanOrderId' => 1,
'titanAccountId' => 1,
'email' => 'info@xyz.com',
'suspensionType' => 'abuse',
'note' => 'some reason'
]
]);use Illuminate\Support\Facades\Http;
$response = Http::withHeaders([
'Authorization' => 'API.Key',
'Content-Type' => 'application/json'
])
->post('https://bll.titan.email/partner/unsuspendEmailAccount', [
'titanOrderId' => 1,
'titanAccountId' => 1,
'email' => 'info@xyz.com',
'suspensionType' => 'abuse',
'note' => 'some reason'
]);$headers = @{
'Authorization' = 'API.Key'
'Content-Type' = 'application/json'
}
$body = [System.IO.MemoryStream]::new()
$bytes = [System.Text.Encoding]::UTF8.GetBytes('{"titanOrderId":1,"titanAccountId":1,"email":"info@xyz.com","suspensionType":"abuse","note":"some reason"}')
$body.Write($bytes, 0, $bytes.Length)
$response = Invoke-WebRequest -Uri 'https://bll.titan.email/partner/unsuspendEmailAccount' -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,"titanAccountId":1,"email":"info@xyz.com","suspensionType":"abuse","note":"some reason"}')
$body.Write($bytes, 0, $bytes.Length)
$response = Invoke-RestMethod -Uri 'https://bll.titan.email/partner/unsuspendEmailAccount' -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,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
})
headers = {
"Authorization": "API.Key",
"Content-Type": "application/json"
}
conn.request(
"POST",
"/partner/unsuspendEmailAccount",
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,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
})
headers = {
"Authorization": "API.Key",
"Content-Type": "application/json"
}
conn.request(
"POST",
"/bll/partner/unsuspendEmailAccount",
body=payload,
headers=headers,
)
response = conn.getresponse()
print(response.read().decode())
conn.close()requests.post(
"https://bll.titan.email/partner/unsuspendEmailAccount",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
)async with aiohttp.ClientSession() as session:
await session.post(
"https://bll.titan.email/partner/unsuspendEmailAccount",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
)httpx.post(
"https://bll.titan.email/partner/unsuspendEmailAccount",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
)async with httpx.AsyncClient() as client:
await client.post(
"https://bll.titan.email/partner/unsuspendEmailAccount",
headers={
"Authorization": "API.Key",
"Content-Type": "application/json"
},
json={
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
)library(httr2)
response <- request("https://bll.titan.email/partner/unsuspendEmailAccount") |>
req_method("POST") |>
req_headers(
"Authorization" = "API.Key",
"Content-Type" = "application/json"
) |>
req_body_json(list(
titanOrderId = 1,
titanAccountId = 1,
email = "info@xyz.com",
suspensionType = "abuse",
note = "some reason"
)) |>
req_perform()
resp_body_string(response)require 'uri'
require 'net/http'
url = URI("https://bll.titan.email/partner/unsuspendEmailAccount")
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,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
JSON
response = http.request(request)
puts response.read_bodylet client = reqwest::Client::new();
let request = client
.post("https://bll.titan.email/partner/unsuspendEmailAccount")
.header("Authorization", "API.Key")
.header("Content-Type", "application/json")
.json(&serde_json::json!({
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}));
let response = request.send().await?;curl https://bll.titan.email/partner/unsuspendEmailAccount \
--request POST \
--header 'Authorization: API.Key' \
--header 'Content-Type: application/json' \
--data '{
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}'wget --quiet \
--method POST \
--header 'Authorization: API.Key' \
--header 'Content-Type: application/json' \
--body-data '{
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}' \
--output-document \
- https://bll.titan.email/partner/unsuspendEmailAccounthttp --ignore-stdin 'POST' 'https://bll.titan.email/partner/unsuspendEmailAccount' \
'Authorization:API.Key' \
'Content-Type:application/json' \
--raw='{"titanOrderId":1,"titanAccountId":1,"email":"info@xyz.com","suspensionType":"abuse","note":"some reason"}'import Foundation
var request = URLRequest(url: URL(string: "https://bll.titan.email/partner/unsuspendEmailAccount")!)
request.httpMethod = "POST"
request.setValue("API.Key", forHTTPHeaderField: "Authorization")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
let jsonBody = #"""
{
"titanOrderId": 1,
"titanAccountId": 1,
"email": "info@xyz.com",
"suspensionType": "abuse",
"note": "some reason"
}
"""#
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": "server.req.id",
"newStatus": "active"
}