LogoLogo
ProductsDevelopersAPI ReferenceContact Us
API Reference
API Reference
  • Overview
  • Products
    • Super SIM
      • Sim Resource
        • Sim BillingPeriod subresource
      • ESimProfile Resource
      • Fleet Resource
      • NetworkAccessProfile Resource
        • NetworkAccessProfile Network Subresource
      • Network Resource
      • SettingsUpdates Resource
      • Usage Record Resource
      • SMSCommand Resource
      • IPCommand Resource
    • Programmable Wireless
      • Account UsageRecord Resource
      • Command Resource
      • DataSession Resource
      • RatePlan Resource
      • Wireless Sim Resource
      • Sim UsageRecord Resource
  • Global Resources
    • API Clients
      • Ping
      • Clients
    • Identity and Access Management
      • Account
    • Webhook
On this page

Was this helpful?

  1. Products
  2. Programmable Wireless

RatePlan Resource

PreviousDataSession ResourceNextWireless Sim Resource

Last updated 6 months ago

Was this helpful?


To avoid ambiguity throughout this page, Sim (initial cap) refers to the Sim API resource. SIM (all caps) refers to the physical Subscriber Identity Module (that is, a SIM card) associated with a Sim resource.

A Rate Plan determines the capabilities and restrictions of each and every instance associated with it.

https://programmable-wireless.api.korewireless.com/v1/RatePlans

Any number of Sim's can be assigned to the same Rate Plan. Each of those Sim's inherits the same capabilities and restrictions, such as whether or not each SIM can use data or SMS via , how much data each SIM can use each month, and how usage will be billed. To change a SIM's capabilities and restrictions, it's Sim must be assigned to a different Rate Plan.

A Rate Plan instance can be referenced in the API either by its unique <YOUR_SIM_SID> or user-defined <YOUR_SIM_UNIQUENAME>.

https://programmable-wireless.api.korewireless.com/v1/RatePlans/<YOUR_SIM_SID>
https://programmable-wireless.api.korewireless.com/v1/RatePlans/<YOUR_SIM_UNIQUENAME>

RatePlan Properties

sid SID<WP>

The unique string that we created to identify the RatePlan resource.

Pattern:^WP[0-9a-fA-F]{32}$

Min length:34

Max length:34


unique_name string

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_sid SID<AC>

The SID of the Account that created the RatePlan resource.

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

Min length:34

Max length:34


friendly_name string

The string that you assigned to describe the resource.


data_enabled boolean

Whether SIMs can use GPRS/3G/4G/LTE data connectivity.


data_metering string


data_limit integer

The total data usage (download and upload combined) in Megabytes that the Network allows during one month on the home network (T-Mobile USA). The metering period begins the day of activation and ends on the same day in the following month. Can be up to 2TB.

Default:0


messaging_enabled boolean

Whether SIMs can make, send, and receive SMS using Commands.


voice_enabled boolean

Deprecated. Whether SIMs can make and receive voice calls.


national_roaming_enabled boolean


national_roaming_data_limit integer

The total data usage (download and upload combined) in Megabytes that the Network allows during one month on non-home networks in the United States. The metering period begins the day of activation and ends on the same day in the following month. Can be up to 2TB.

Default:0


international_roaming array[string]

The list of services that SIMs capable of using GPRS/3G/4G/LTE data connectivity can use outside of the United States. Can contain: data and messaging.


international_roaming_data_limit integer

The total data usage (download and upload combined) in Megabytes that the Network allows during one month when roaming outside the United States. Can be up to 2TB.

Default:0


date_created string<date-time>


date_updated string<date-time>


url string<uri>

The absolute URL of the resource.


PAYG vs Quota Data Plans

Quota Data Plans offer you a self-serve way to receive discounted data pricing in exchange for committing to a minimum dollar spend for each active SIM using the Rate Plan.

For low usage devices, the "Pay as you go" (PAYG) Data Plan is available. With PAYG data, you'll only pay for the data you consume, with no minimum data spend per SIM per month.

For higher usage devices, it is probably more cost effective to use a Quota-based Data Plan. With a Quota-based plan, you agree to a minimum data spend, or "Quota" level per SIM per month. In return, you will receive discount rates in every country, with more significant discounts for higher Quotas.

Even on a Quota plan, data is still priced per megabyte and metered at byte-level. But at the end of your SIM's billing month, you either pay for exactly what you consumed, or the Quota price, whichever is higher.


Data limits

Each SIM's usage is measured independently. Data Limits specified by the Rate Plan are on a per SIM basis. For example, if a Rate Plan specifies a Data Limit of 5MB, every SIM on that Rate Plan will be allowed to consume 5MB of data.


National roaming


Usage Notifications

Usage Notifications are currently in Private Beta . If you would like access to this feature please contact your IoT Account Executive or contact customer support.

You can receive Usage Notifications for every Sim instance assigned to a Rate Plan, allowing you to programmatically respond before the Sim reaches its Data Limit.

An HTTP request will be made to the configurable usage_notification_url using the usage_notification_method.

Usage Notifications will be fired when your Sim's Data Usage is ~75%, ~90%, 100%. If your Sim used 100% of its Data Limit during the current usage period, an additional Usage Notification will be fired when your Sim's Data Limit resets and your SIM can resume using data. No Usage Notification will be fired when your usage period resets if your Sim did not use 100% of the Data Limit during the current usage period.

Usage Notifications have the following properties:

SimSid

The SID of the Sim.

SimUniqueName

User provided string that uniquely identifies the Sim. Alternative to SimSid.

AccountSid

The unique ID of the Account that the Sim belongs to.

DataLimitType

The type of Data Limit to which the notification pertains. Either data_limit, international_roaming_data_limit, or national_roaming_data_limit.

DataLimit

Amount of data usage allowed in the usage period. Once DataConsumed is greater than or equal to this value, the SIM will be blocked from using any additional data.

DataConsumed

Amount of data usage from the current usage period that has been applied towards the DataLimit.

NextUsagePeriod

The date when the next usage period starts at which point the DataConsumed resets to 0.


Create a RatePlan resource


Fetch a RatePlan resource


Read Rate Plans


Update a RatePlan resource

The only fields that can be updated on a Rate Plan after it has been created is its Unique Name and Friendly Name. If you need to alter your SIM's capabilities you must create a new Rate Plan and reassign the Sim to the new Rate Plan.


Delete a RatePlan resource

You cannot delete a Rate Plan if there are any Sims assigned to it that have active or ready statuses.

The model used to meter data usage. Can be: payg and quota-1, quota-10, and quota-50. Learn more about the available .

Whether SIMs can roam on networks other than the home network (T-Mobile USA) in the United States. See .

The date and time in GMT when the resource was created specified in format.

The date and time in GMT when the resource was last updated specified in format.

See for more information.

National roaming grants a SIM the ability to roam onto other carrier networks in the United States in certain low coverage situations. This will allow a SIM to roam onto regional US networks like in Alaska. The SIM will prioritize T-Mobile US, the 'home' network, when coverage is available.

National roaming pricing is different to standard data and Commands pricing. Before enabling national roaming on your Rate Plan, it is recommended to review the .

Sim
Commands
ISO 8601
ISO 8601
Pricing
GCI
pricing
data metering models
national roaming

Create Data Rate Plans

post
Authorizations
Body
UniqueNamestringOptional

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.

FriendlyNamestringOptional

A descriptive string that you create to describe the resource. It does not have to be unique.

DataEnabledbooleanOptional

Whether SIMs can use GPRS/3G/4G/LTE data connectivity.

DataLimitintegerOptional

The total data usage (download and upload combined) in Megabytes that the Network allows during one month on the home network (T-Mobile USA). The metering period begins the day of activation and ends on the same day in the following month. Can be up to 2TB and the default value is 1000.

DataMeteringstringOptional

The model used to meter data usage. Can be: payg and quota-1, quota-10, and quota-50. Learn more about the available data metering models

MessagingEnabledbooleanOptional

Whether SIMs can make, send, and receive SMS using Commands.

VoiceEnabledbooleanOptional

Deprecated.

NationalRoamingEnabledbooleanOptional

Whether SIMs can roam on networks other than the home network (T-Mobile USA) in the United States.

InternationalRoamingstring[]Optional

The list of services that SIMs capable of using GPRS/3G/4G/LTE data connectivity can use outside of the United States. Can contain: data and messaging.

NationalRoamingDataLimitintegerOptional

The total data usage (download and upload combined) in Megabytes that the Network allows during one month on non-home networks in the United States. The metering period begins the day of activation and ends on the same day in the following month. Can be up to 2TB.

InternationalRoamingDataLimitintegerOptional

The total data usage (download and upload combined) in Megabytes that the Network allows during one month when roaming outside the United States. Can be up to 2TB.

Responses
200
Data Usage List
application/json
202
Data Usage List
application/json
400
Invalid request
application/json
401
Credentials were not provided and are required to access this resource
application/json
403
Credentials were not provided and are required to access this resource
application/json
404
Resource not found
application/json
500
Internal Server Error
application/json
503
Server is temporary not available
application/json
post
curl --location --globoff 'https://programmable-wireless.api.korewireless.com/v1/RatePlans' \
--header 'Authorization: Bearer <YOUR_AUTH_TOKEN>'
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Accept: application/json' \
--data-urlencode 'UniqueName=<string>' \
--data-urlencode 'FriendlyName=<string>' \
--data-urlencode 'DataEnabled=<boolean>' \
--data-urlencode 'DataLimit=<integer>' \
--data-urlencode 'DataMetering=<string>' \
--data-urlencode 'MessagingEnabled=<boolean>' \
--data-urlencode 'VoiceEnabled=<boolean>' \
--data-urlencode 'NationalRoamingEnabled=<boolean>' \
--data-urlencode 'InternationalRoaming=<string>' \
--data-urlencode 'InternationalRoaming=<string>' \
--data-urlencode 'NationalRoamingDataLimit=<integer>' \
--data-urlencode 'InternationalRoamingDataLimit=<integer>'
{
  "sid": "text",
  "unique_name": "text",
  "account_sid": "text",
  "friendly_name": "text",
  "data_enabled": true,
  "data_metering": "text",
  "data_limit": 1,
  "messaging_enabled": true,
  "voice_enabled": true,
  "national_roaming_enabled": true,
  "national_roaming_data_limit": 1,
  "international_roaming": [
    "text"
  ],
  "international_roaming_data_limit": 1,
  "date_created": "2025-06-09T13:15:47.631Z",
  "date_updated": "2025-06-09T13:15:47.631Z",
  "url": "https://example.com",
  "usage_notification_url": "text",
  "usage_notification_method": "text",
  "data_limit_strategy": "text"
}

Get Data Rate Plan

get
Authorizations
Path parameters
SidstringRequired

The SID of the RatePlan resource to fetch.

Responses
200
Get Rate Plan
application/json
400
Invalid request
application/json
401
Credentials were not provided and are required to access this resource
application/json
403
Credentials were not provided and are required to access this resource
application/json
404
Resource not found
application/json
415
Credentials were not provided and are required to access this resource
application/json
422
Resource not found
application/json
500
Internal Server Error
application/json
503
Server is temporary not available
application/json
get
curl --location --globoff 'https://programmable-wireless.api.korewireless.com/v1/RatePlans/<string>' \
--header 'Authorization: Bearer <YOUR_AUTH_TOKEN>'
{
  "sid": "text",
  "unique_name": "text",
  "account_sid": "text",
  "friendly_name": "text",
  "data_enabled": true,
  "data_metering": "text",
  "data_limit": 1,
  "messaging_enabled": true,
  "voice_enabled": true,
  "national_roaming_enabled": true,
  "national_roaming_data_limit": 1,
  "international_roaming": [
    "text"
  ],
  "international_roaming_data_limit": 1,
  "date_created": "2025-06-09T13:15:47.631Z",
  "date_updated": "2025-06-09T13:15:47.631Z",
  "url": "https://example.com",
  "usage_notification_url": "text",
  "usage_notification_method": "text",
  "data_limit_strategy": "text"
}

List Data Rate Plans

get
Authorizations
Query parameters
PageSizeinteger · min: 1 · max: 1000Optional

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

PageintegerOptional

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

PageTokenstringOptional

The page token. This is provided by the API.

Responses
200
Data Usage List
application/json
400
Invalid request
application/json
401
Credentials were not provided and are required to access this resource
application/json
403
Credentials were not provided and are required to access this resource
application/json
404
Resource not found
application/json
415
Credentials were not provided and are required to access this resource
application/json
422
Resource not found
application/json
500
Internal Server Error
application/json
503
Server is temporary not available
application/json
get
curl --location --globoff 'https://programmable-wireless.api.korewireless.com/v1/RatePlans?PageSize=<integer>&Page=<integer>&PageToken=<string>' \
--header 'Authorization: Bearer <YOUR_AUTH_TOKEN>'
{
  "rate_plans": [
    {
      "sid": "text",
      "unique_name": "text",
      "account_sid": "text",
      "friendly_name": "text",
      "data_enabled": true,
      "data_metering": "text",
      "data_limit": 1,
      "messaging_enabled": true,
      "voice_enabled": true,
      "national_roaming_enabled": true,
      "national_roaming_data_limit": 1,
      "international_roaming": [
        "text"
      ],
      "international_roaming_data_limit": 1,
      "date_created": "2025-06-09T13:15:47.631Z",
      "date_updated": "2025-06-09T13:15:47.631Z",
      "url": "https://example.com",
      "usage_notification_url": "text",
      "usage_notification_method": "text",
      "data_limit_strategy": "text"
    }
  ],
  "meta": {
    "first_page_url": "https://example.com",
    "key": "text",
    "next_page_url": "https://example.com",
    "page": 1,
    "page_size": 1,
    "previous_page_url": "https://example.com",
    "url": "https://example.com"
  }
}

Update Rate Plan

post
Authorizations
Path parameters
SidstringRequired

The SID of the RatePlan resource to fetch.

Body
UniqueNamestringOptional

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.

FriendlyNamestringOptional

A descriptive string that you create to describe the resource. It does not have to be unique.

Responses
200
Data Usage Update
application/json
400
Invalid request
application/json
401
Credentials were not provided and are required to access this resource
application/json
403
Credentials were not provided and are required to access this resource
application/json
404
Resource not found
application/json
415
Credentials were not provided and are required to access this resource
application/json
422
Resource not found
application/json
500
Internal Server Error
application/json
503
Server is temporary not available
application/json
post
curl --location --globoff 'https://programmable-wireless.api.korewireless.com/v1/RatePlans/<string>' \
--header 'Authorization: Bearer <YOUR_AUTH_TOKEN>'
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Accept: application/json' \
--data-urlencode 'UniqueName=<string>' \
--data-urlencode 'FriendlyName=<string>'
{
  "sid": "text",
  "unique_name": "text",
  "account_sid": "text",
  "friendly_name": "text",
  "data_enabled": true,
  "data_metering": "text",
  "data_limit": 1,
  "messaging_enabled": true,
  "voice_enabled": true,
  "national_roaming_enabled": true,
  "national_roaming_data_limit": 1,
  "international_roaming": [
    "text"
  ],
  "international_roaming_data_limit": 1,
  "date_created": "2025-06-09T13:15:47.631Z",
  "date_updated": "2025-06-09T13:15:47.631Z",
  "url": "https://example.com",
  "usage_notification_url": "text",
  "usage_notification_method": "text",
  "data_limit_strategy": "text"
}

Delete Data Rate Plan

delete
Authorizations
Path parameters
SidstringRequired

The SID of the RatePlan resource to fetch.

Responses
204
The resource was deleted successfully.
400
Invalid request
application/json
401
Credentials were not provided and are required to access this resource
application/json
403
Credentials were not provided and are required to access this resource
application/json
404
Resource not found
application/json
409
Resource not found
application/json
500
Internal Server Error
application/json
503
Server is temporary not available
application/json
delete
curl --location --globoff --request DELETE 'https://programmable-wireless.api.korewireless.com/v1/RatePlans/<string>' \
--header 'Authorization: Bearer <YOUR_AUTH_TOKEN>'

No content

  • RatePlan Properties
  • PAYG vs Quota Data Plans
  • Data limits
  • National roaming
  • Usage Notifications
  • Create a RatePlan resource
  • POSTCreate Data Rate Plans
  • Fetch a RatePlan resource
  • GETGet Data Rate Plan
  • Read Rate Plans
  • GETList Data Rate Plans
  • Update a RatePlan resource
  • POSTUpdate Rate Plan
  • Delete a RatePlan resource
  • DELETEDelete Data Rate Plan