Skip to contentSkip to navigationSkip to topbar
On this page

NetworkAccessProfile Resource


NetworkAccessProfile resources control which public land mobile networks (PLMNs) your Super SIMs can connect to:

https://supersim.twilio.com/v1/NetworkAccessProfiles

A NetworkAccessProfile resource can be referenced in the API by either by its unique Sid or UniqueName:

1
https://supersim.twilio.com/v1/NetworkAccessProfiles/{Sid}
2
https://supersim.twilio.com/v1/NetworkAccessProfiles/{UniqueName}

Each NetworkAccessProfile (NAP) resource has a Networks subresource (NAP Networks):

https://supersim.twilio.com/v1/NetworkAccessProfiles/{Sid}/Networks

Each NAP Network resource represents a cellular network that Super SIMs can connect to — an allowed Network.

The NAP Network resources in the Networks subresource will be a subset of all of the Network resources available from the main Networks resource. You can add or remove NAP Network resources from the NAP Networks subresource at any time to change which cellular networks your Super SIMs can access.

(information)

Info

The Super SIM Networks resource is a read-only resource which lists all of the cellular networks to which it is possible for Super SIMs to connect: it is a catalog of available networks for you to choose from. Once you've identified a cellular network you want to allow your Super SIMs to connect to, use its sid to add it to a NetworkAccessProfile resource's Networks subresource. See these examples to learn how to add or remove NAP Network resources.

(warning)

Warning

If your Super SIM has already attached to a network, authentication and authorization information may be cached in that network to allow devices to continue to use that network without re-authenticating. When you disable a network in a NAP, it may not take immediate effect for that Super SIM. The cached information for that Super SIM will need to expire before the Super SIM can no longer use that network. This may take up to a week, but varies by network.

To make use of a NetworkAccessProfile resource, it needs to be referenced by a Fleet resource. All of the Sim resources assigned to that Fleet will then be able to attach to the cellular networks allowed by the NetworkAccessProfile's Networks subresource. A NetworkAccessProfile can be used by multiple Fleet resources.


Forbidden networks

forbidden-networks page anchor

The Networks subresource serves as an allow list of the cellular networks to which Super SIMs can connect. Network resources not present in the Networks subresource are therefore blocked (i.e., forbidden).

When your device scans for available cellular networks to attempt to attach to, it may find a number of cellular networks. Super SIMs can only attach to a cellular network if the Network resource that represents the cellular network is present in the Networks subresource. If your device explicitly tries to attach to a cellular network that has not been allowed, the network will return the error 5004 / ROAMING_NOT_ALLOWED.

(warning)

Warning

There will be some cellular networks for which there is no Network resource available. As such there is no way to add them to the list of allowed cellular networks in a NetworkAccessProfile resource. No Super SIMs will be able to attach to these cellular networks.


New Feature Customers can now delete unused and unwanted NAPs and their associated data. This can be done in Console(link takes you to an external page): visit Internet of Things > Network access profiles(link takes you to an external page), click on the name of the NAP you wish to delete, and click the Delete NAP link at the bottom of the page. You will be asked to confirm your action before the NAP is deleted. NAPs which are currently assigned to Fleets cannot be deleted.

delete network access profile form in console.

NetworkAccessProfile Properties

networkaccessprofile-properties page anchor
Property nameTypeRequiredDescriptionChild properties
sidSID<HA>

Optional

Not PII

The unique string that identifies the Network Access Profile resource.

Pattern: ^HA[0-9a-fA-F]{32}$Min length: 34Max length: 34

unique_namestring

Optional

An application-defined string that uniquely identifies the resource. It can be used in place of the resource's sid in the URL to address the resource.


account_sidSID<AC>

Optional

The SID of the Account that the Network Access Profile belongs to.

Pattern: ^AC[0-9a-fA-F]{32}$Min length: 34Max length: 34

date_createdstring<date-time>

Optional

The date and time in GMT when the resource was created specified in ISO 8601(link takes you to an external page) format.


date_updatedstring<date-time>

Optional

The date and time in GMT when the resource was last updated specified in ISO 8601(link takes you to an external page) format.


urlstring<uri>

Optional

The absolute URL of the Network Access Profile resource.


linksobject<uri-map>

Optional


Create a NetworkAccessProfile resource

create-a-networkaccessprofile-resource page anchor
POST https://supersim.twilio.com/v1/NetworkAccessProfiles

Request body parameters

request-body-parameters page anchor
Encoding type:application/x-www-form-urlencoded
SchemaExample
Property nameTypeRequiredDescriptionChild properties
UniqueNamestring

Optional

An application-defined string that uniquely identifies the resource. It can be used in place of the resource's sid in the URL to address the resource.


Networksarray[string]

Optional

List of Network SIDs that this Network Access Profile will allow connections to.

Create a NetworkAccessProfile resourceLink to code sample: Create a NetworkAccessProfile resource
1
// Download the helper library from https://www.twilio.com/docs/node/install
2
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
3
4
// Find your Account SID and Auth Token at twilio.com/console
5
// and set the environment variables. See http://twil.io/secure
6
const accountSid = process.env.TWILIO_ACCOUNT_SID;
7
const authToken = process.env.TWILIO_AUTH_TOKEN;
8
const client = twilio(accountSid, authToken);
9
10
async function createNetworkAccessProfile() {
11
const networkAccessProfile =
12
await client.supersim.v1.networkAccessProfiles.create({ uniqueName: "" });
13
14
console.log(networkAccessProfile.sid);
15
}
16
17
createNetworkAccessProfile();

Output

1
{
2
"unique_name": "",
3
"sid": "HAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
4
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
5
"date_created": "2020-05-01T20:00:00Z",
6
"date_updated": "2020-05-01T20:00:00Z",
7
"url": "https://supersim.twilio.com/v1/NetworkAccessProfiles/HAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
8
"links": {
9
"networks": "https://supersim.twilio.com/v1/NetworkAccessProfiles/HAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Networks"
10
}
11
}

Fetch a NetworkAccessProfile resource

fetch-a-networkaccessprofile-resource page anchor
GET https://supersim.twilio.com/v1/NetworkAccessProfiles/{Sid}

Property nameTypeRequiredPIIDescription
Sidstringrequired

The SID of the Network Access Profile resource to fetch.

1
// Download the helper library from https://www.twilio.com/docs/node/install
2
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
3
4
// Find your Account SID and Auth Token at twilio.com/console
5
// and set the environment variables. See http://twil.io/secure
6
const accountSid = process.env.TWILIO_ACCOUNT_SID;
7
const authToken = process.env.TWILIO_AUTH_TOKEN;
8
const client = twilio(accountSid, authToken);
9
10
async function fetchNetworkAccessProfile() {
11
const networkAccessProfile = await client.supersim.v1
12
.networkAccessProfiles("Sid")
13
.fetch();
14
15
console.log(networkAccessProfile.sid);
16
}
17
18
fetchNetworkAccessProfile();

Output

1
{
2
"unique_name": "My Network Access Profile",
3
"sid": "Sid",
4
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
5
"date_created": "2020-05-01T20:00:00Z",
6
"date_updated": "2020-05-01T20:00:00Z",
7
"url": "https://supersim.twilio.com/v1/NetworkAccessProfiles/HAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
8
"links": {
9
"networks": "https://supersim.twilio.com/v1/NetworkAccessProfiles/HAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Networks"
10
}
11
}

Read multiple NetworkAccessProfile resources

read-multiple-networkaccessprofile-resources page anchor
GET https://supersim.twilio.com/v1/NetworkAccessProfiles

Property nameTypeRequiredPIIDescription
PageSizeinteger

Optional

How many resources to return in each list page. The default is 50, and the maximum is 1000.

Minimum: 1Maximum: 1000

Pageinteger

Optional

The page index. This value is simply for client state.

Minimum: 0

PageTokenstring

Optional

The page token. This is provided by the API.

1
// Download the helper library from https://www.twilio.com/docs/node/install
2
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
3
4
// Find your Account SID and Auth Token at twilio.com/console
5
// and set the environment variables. See http://twil.io/secure
6
const accountSid = process.env.TWILIO_ACCOUNT_SID;
7
const authToken = process.env.TWILIO_AUTH_TOKEN;
8
const client = twilio(accountSid, authToken);
9
10
async function listNetworkAccessProfile() {
11
const networkAccessProfiles =
12
await client.supersim.v1.networkAccessProfiles.list({ limit: 20 });
13
14
networkAccessProfiles.forEach((n) => console.log(n.sid));
15
}
16
17
listNetworkAccessProfile();

Output

1
{
2
"network_access_profiles": [],
3
"meta": {
4
"first_page_url": "https://supersim.twilio.com/v1/NetworkAccessProfiles?PageSize=50&Page=0",
5
"key": "network_access_profiles",
6
"next_page_url": null,
7
"page": 0,
8
"page_size": 50,
9
"previous_page_url": null,
10
"url": "https://supersim.twilio.com/v1/NetworkAccessProfiles?PageSize=50&Page=0"
11
}
12
}

Update a NetworkAccessProfile resource

update-a-networkaccessprofile-resource page anchor
POST https://supersim.twilio.com/v1/NetworkAccessProfiles/{Sid}

Property nameTypeRequiredPIIDescription
Sidstringrequired

The SID of the Network Access Profile to update.

Encoding type:application/x-www-form-urlencoded
SchemaExample
Property nameTypeRequiredDescriptionChild properties
UniqueNamestring

Optional

The new unique name of the Network Access Profile.

1
// Download the helper library from https://www.twilio.com/docs/node/install
2
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
3
4
// Find your Account SID and Auth Token at twilio.com/console
5
// and set the environment variables. See http://twil.io/secure
6
const accountSid = process.env.TWILIO_ACCOUNT_SID;
7
const authToken = process.env.TWILIO_AUTH_TOKEN;
8
const client = twilio(accountSid, authToken);
9
10
async function updateNetworkAccessProfile() {
11
const networkAccessProfile = await client.supersim.v1
12
.networkAccessProfiles("Sid")
13
.update({ uniqueName: "new_unique_name" });
14
15
console.log(networkAccessProfile.uniqueName);
16
}
17
18
updateNetworkAccessProfile();

Output

1
{
2
"unique_name": "new_unique_name",
3
"sid": "Sid",
4
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
5
"date_created": "2020-05-01T20:00:00Z",
6
"date_updated": "2020-05-01T20:00:00Z",
7
"url": "https://supersim.twilio.com/v1/NetworkAccessProfiles/HAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
8
"links": {
9
"networks": "https://supersim.twilio.com/v1/NetworkAccessProfiles/HAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Networks"
10
}
11
}

Need some help?

Terms of service

Copyright © 2024 Twilio Inc.