{
"PortInNumber": "+15555551234",
"ICCID": "8901240397190195850",
"CurrentCarrierName": "Telegent",
"CurrentAccountNumber": "46512222",
"CurrentAccountPassword": "0000",
"TargetPortinClassification": "mvno",
"SubscriberName": "Telegent",
"CurrentBillingAddress": {
"Street1": "2701 N Thanksgiving Way",
"Street2": "Suite 202",
"City": "Lehi",
"State": "UT",
"Zip": "84043"
}
}curl -X POST https://api.telegent.com/v1.0/numbers/portin \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"PortInNumber": "+15555551234",
"ICCID": "8901240397190195850",
"CurrentCarrierName": "Telegent",
"CurrentAccountNumber": "46512222",
"CurrentAccountPassword": "0000",
"TargetPortinClassification": "mvno",
"SubscriberName": "Telegent",
"CurrentBillingAddress": {"Street1": "2701 N Thanksgiving Way", "Street2": "Suite 202", "City": "Lehi", "State": "UT", "Zip": "84043"}
}'import requests
url = "https://api.telegent.com/v1.0/numbers/portin"
payload = {
"PortInNumber": "+11234567890",
"CurrentCarrierName": "Company LLC",
"CurrentAccountNumber": "4651234567",
"CurrentAccountPassword": "0550",
"CurrentBillingAddress": {
"Street1": "123 N Adddress Way",
"City": "Townsville",
"State": "UT",
"Zip": "84048",
"Street2": "Suite 010"
},
"ICCID": "8901240397190557414F",
"TargetPortinClassification": "mvno",
"SubscriberName": "John Doe"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
PortInNumber: '+11234567890',
CurrentCarrierName: 'Company LLC',
CurrentAccountNumber: '4651234567',
CurrentAccountPassword: '0550',
CurrentBillingAddress: {
Street1: '123 N Adddress Way',
City: 'Townsville',
State: 'UT',
Zip: '84048',
Street2: 'Suite 010'
},
ICCID: '8901240397190557414F',
TargetPortinClassification: 'mvno',
SubscriberName: 'John Doe'
})
};
fetch('https://api.telegent.com/v1.0/numbers/portin', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.telegent.com/v1.0/numbers/portin",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'PortInNumber' => '+11234567890',
'CurrentCarrierName' => 'Company LLC',
'CurrentAccountNumber' => '4651234567',
'CurrentAccountPassword' => '0550',
'CurrentBillingAddress' => [
'Street1' => '123 N Adddress Way',
'City' => 'Townsville',
'State' => 'UT',
'Zip' => '84048',
'Street2' => 'Suite 010'
],
'ICCID' => '8901240397190557414F',
'TargetPortinClassification' => 'mvno',
'SubscriberName' => 'John Doe'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.telegent.com/v1.0/numbers/portin"
payload := strings.NewReader("{\n \"PortInNumber\": \"+11234567890\",\n \"CurrentCarrierName\": \"Company LLC\",\n \"CurrentAccountNumber\": \"4651234567\",\n \"CurrentAccountPassword\": \"0550\",\n \"CurrentBillingAddress\": {\n \"Street1\": \"123 N Adddress Way\",\n \"City\": \"Townsville\",\n \"State\": \"UT\",\n \"Zip\": \"84048\",\n \"Street2\": \"Suite 010\"\n },\n \"ICCID\": \"8901240397190557414F\",\n \"TargetPortinClassification\": \"mvno\",\n \"SubscriberName\": \"John Doe\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.telegent.com/v1.0/numbers/portin")
.header("Content-Type", "application/json")
.body("{\n \"PortInNumber\": \"+11234567890\",\n \"CurrentCarrierName\": \"Company LLC\",\n \"CurrentAccountNumber\": \"4651234567\",\n \"CurrentAccountPassword\": \"0550\",\n \"CurrentBillingAddress\": {\n \"Street1\": \"123 N Adddress Way\",\n \"City\": \"Townsville\",\n \"State\": \"UT\",\n \"Zip\": \"84048\",\n \"Street2\": \"Suite 010\"\n },\n \"ICCID\": \"8901240397190557414F\",\n \"TargetPortinClassification\": \"mvno\",\n \"SubscriberName\": \"John Doe\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.telegent.com/v1.0/numbers/portin")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"PortInNumber\": \"+11234567890\",\n \"CurrentCarrierName\": \"Company LLC\",\n \"CurrentAccountNumber\": \"4651234567\",\n \"CurrentAccountPassword\": \"0550\",\n \"CurrentBillingAddress\": {\n \"Street1\": \"123 N Adddress Way\",\n \"City\": \"Townsville\",\n \"State\": \"UT\",\n \"Zip\": \"84048\",\n \"Street2\": \"Suite 010\"\n },\n \"ICCID\": \"8901240397190557414F\",\n \"TargetPortinClassification\": \"mvno\",\n \"SubscriberName\": \"John Doe\"\n}"
response = http.request(request)
puts response.read_body{
"OrderId": "JNOID-aabbde7a-....-....-....-............",
"OrderDate": "2025-05-14T18:00:00.0000000+00:00",
"Status": "Pending",
"PhoneNumber": "+11234567890",
"ICCID": "12345678900987654321"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}Numbers - Port In
Prerequisites:
- Required: Bearer token —
POST /v1.0/oauth2/tokens - Recommended: Confirm the number is portable first —
POST /v1.0/numbers/portin/eligibility - Required: Losing carrier name, account number, account password, and subscriber billing address
Transfer an existing phone number from another carrier into your Telegent account. Before submitting a port-in, run the Port-In Eligibility check to confirm the number can be ported. You will need the losing carrier name, account number, account password, and the subscriber’s billing address for LNP (Local Number Portability) compliance.
What this does: Submits the port request to the carrier and returns an OrderId with an initial status of Pending. Monitor the order using the OrderId. Port requests typically take 1-5 business days to complete.
Next steps:
- Track the port order status —
GET /v1.0/numbers/order - Cancel if needed —
POST /v1.0/numbers/portin/cancel
{
"PortInNumber": "+15555551234",
"ICCID": "8901240397190195850",
"CurrentCarrierName": "Telegent",
"CurrentAccountNumber": "46512222",
"CurrentAccountPassword": "0000",
"TargetPortinClassification": "mvno",
"SubscriberName": "Telegent",
"CurrentBillingAddress": {
"Street1": "2701 N Thanksgiving Way",
"Street2": "Suite 202",
"City": "Lehi",
"State": "UT",
"Zip": "84043"
}
}curl -X POST https://api.telegent.com/v1.0/numbers/portin \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"PortInNumber": "+15555551234",
"ICCID": "8901240397190195850",
"CurrentCarrierName": "Telegent",
"CurrentAccountNumber": "46512222",
"CurrentAccountPassword": "0000",
"TargetPortinClassification": "mvno",
"SubscriberName": "Telegent",
"CurrentBillingAddress": {"Street1": "2701 N Thanksgiving Way", "Street2": "Suite 202", "City": "Lehi", "State": "UT", "Zip": "84043"}
}'import requests
url = "https://api.telegent.com/v1.0/numbers/portin"
payload = {
"PortInNumber": "+11234567890",
"CurrentCarrierName": "Company LLC",
"CurrentAccountNumber": "4651234567",
"CurrentAccountPassword": "0550",
"CurrentBillingAddress": {
"Street1": "123 N Adddress Way",
"City": "Townsville",
"State": "UT",
"Zip": "84048",
"Street2": "Suite 010"
},
"ICCID": "8901240397190557414F",
"TargetPortinClassification": "mvno",
"SubscriberName": "John Doe"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
PortInNumber: '+11234567890',
CurrentCarrierName: 'Company LLC',
CurrentAccountNumber: '4651234567',
CurrentAccountPassword: '0550',
CurrentBillingAddress: {
Street1: '123 N Adddress Way',
City: 'Townsville',
State: 'UT',
Zip: '84048',
Street2: 'Suite 010'
},
ICCID: '8901240397190557414F',
TargetPortinClassification: 'mvno',
SubscriberName: 'John Doe'
})
};
fetch('https://api.telegent.com/v1.0/numbers/portin', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.telegent.com/v1.0/numbers/portin",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'PortInNumber' => '+11234567890',
'CurrentCarrierName' => 'Company LLC',
'CurrentAccountNumber' => '4651234567',
'CurrentAccountPassword' => '0550',
'CurrentBillingAddress' => [
'Street1' => '123 N Adddress Way',
'City' => 'Townsville',
'State' => 'UT',
'Zip' => '84048',
'Street2' => 'Suite 010'
],
'ICCID' => '8901240397190557414F',
'TargetPortinClassification' => 'mvno',
'SubscriberName' => 'John Doe'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.telegent.com/v1.0/numbers/portin"
payload := strings.NewReader("{\n \"PortInNumber\": \"+11234567890\",\n \"CurrentCarrierName\": \"Company LLC\",\n \"CurrentAccountNumber\": \"4651234567\",\n \"CurrentAccountPassword\": \"0550\",\n \"CurrentBillingAddress\": {\n \"Street1\": \"123 N Adddress Way\",\n \"City\": \"Townsville\",\n \"State\": \"UT\",\n \"Zip\": \"84048\",\n \"Street2\": \"Suite 010\"\n },\n \"ICCID\": \"8901240397190557414F\",\n \"TargetPortinClassification\": \"mvno\",\n \"SubscriberName\": \"John Doe\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.telegent.com/v1.0/numbers/portin")
.header("Content-Type", "application/json")
.body("{\n \"PortInNumber\": \"+11234567890\",\n \"CurrentCarrierName\": \"Company LLC\",\n \"CurrentAccountNumber\": \"4651234567\",\n \"CurrentAccountPassword\": \"0550\",\n \"CurrentBillingAddress\": {\n \"Street1\": \"123 N Adddress Way\",\n \"City\": \"Townsville\",\n \"State\": \"UT\",\n \"Zip\": \"84048\",\n \"Street2\": \"Suite 010\"\n },\n \"ICCID\": \"8901240397190557414F\",\n \"TargetPortinClassification\": \"mvno\",\n \"SubscriberName\": \"John Doe\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.telegent.com/v1.0/numbers/portin")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"PortInNumber\": \"+11234567890\",\n \"CurrentCarrierName\": \"Company LLC\",\n \"CurrentAccountNumber\": \"4651234567\",\n \"CurrentAccountPassword\": \"0550\",\n \"CurrentBillingAddress\": {\n \"Street1\": \"123 N Adddress Way\",\n \"City\": \"Townsville\",\n \"State\": \"UT\",\n \"Zip\": \"84048\",\n \"Street2\": \"Suite 010\"\n },\n \"ICCID\": \"8901240397190557414F\",\n \"TargetPortinClassification\": \"mvno\",\n \"SubscriberName\": \"John Doe\"\n}"
response = http.request(request)
puts response.read_body{
"OrderId": "JNOID-aabbde7a-....-....-....-............",
"OrderDate": "2025-05-14T18:00:00.0000000+00:00",
"Status": "Pending",
"PhoneNumber": "+11234567890",
"ICCID": "12345678900987654321"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}{
"StatusCode": 123,
"Message": "<string>"
}Body
Phone number to port in (E.164 format)
"+11234567890"
Name of the losing carrier
"Company LLC"
Account number with current carrier
"4651234567"
Account PIN/password with current carrier
"0550"
Show child attributes
Show child attributes
SIM card ICCID (optional)
"8901240397190557414F"
Classification type for the port-in
mvno, iot "mvno"
Name of the subscriber (optional)
"John Doe"
Response
Success — returns the port-in order ID and initial status
The response is of type object.