Find Pricing Information via the API
Before you begin
Ensure you have a bearer token authorizing all your API calls. For information on authorizing calls, see one of the following pages:
- Using Postman with the PacketFabric API
- Using cURL with the PacketFabric API
- Using Python Requests with the PacketFabric API
API reference
Parameters
-
Header row
- Parameter
- Required
- Description
-
Row 1
product_type
string- Yes
- The type product for which you are receiving pricing information. This can be one of the following: “cloud_dedicated” “cloud_dedicated_vc” “cloud_hosted” “crossconnect” “pointtopoint” “port” “port_enni” “vcbwc” “cloud_router” “cr_connection” “vc_ix” “vc_marketplace” “vc_hourly”
-
Row 1
-
location_type
string -
No
-
Filter pricing information by location type. You will get the most precise pricing by using a specific location such as a POP. However, if no pricing is found, the API will attempt to search by a broader location type. (For example, if we can’t find the POP, we might return pricing information for the market.) For more information, see PacketFabric Network Hierarchy
This can be one of the following: “site” “pop” “market” “country” “region”
-
-
Row 1
subscription_term
integer- No
- Duration of the contract in months: 1, 12, 24, or 36.
-
Row 1
-
media
string -
No
-
Optic media type: “LX” “EX” “ZX” “LR” “ER” “ER DWDM” “ZR” “ZR DWDM” “LR4” “ER4” “CWDM4” “LR4” “ER4 Lite”.
You can use
/v2/locations/{pop}/port-availability
to verify what media types are available for your chosen speed and location.In most cases, the media type does not affect the price.
-
-
Row 1
side_a
string- No
- The location for the A-side of a connection. The type of location you enter needs to match what you specify for
location_type
. For example iflocation_type=pop
, you need to enter a POP code and not a region or country.
-
Row 1
side_Z
string- No
- The location for the z-side of a connection.
-
Row 1
-
network_provider_a
string -
No
-
Limit results to a specific network provider on the A-side. This can be “PacketFabric” or “Colt.”
Only applicable if
location_type
is set to “market” or “region.”
-
-
Row 1
-
network_provider_z
string -
No
-
Limit results to a specific network provider on the Z-side. This can be “PacketFabric” or “Colt.”
Only applicable if
location_type
is set to “market” or “region.”
-
-
Row 1
provider
string- No
- Filter by cloud provider. For example,
provider=aws
.
-
Row 1
bandwidth_type
string- No
- Specify “dedicated” or “usage” (to be used with backbone virtual circuits).
-
Row 1
service_class
string- No
- Filter for “metro” or “longhaul” connections.
-
Row 1
speed
string- No
- This can be one of the following: “50Mbps” “100Mbps” “200Mbps” “300Mbps” “400Mbps” “500Mbps” “1Gbps” “2Gbps” “5Gbps” “10Gbps” “20Gbps” “30Gbps” “40Gbps” “50Gbps” “60Gbps” “80Gbps” “100Gbps”
-
Row 1
-
account_uuid
string -
No
-
Billing account ID. If you have special pricing agreements tied to a certain billing account, including the account ID will return the modified prices. If you do not have any special agreements in place, you will see standard pricing regardless of whether you include your account ID.
Note that for reseller partners, some discounts can only be calculated after the billing period is over, and will not be reflected in the price returned via the API regardless of whether you include your account ID.
Use
/v2/contacts?billing=true
to find this or see Get the Account UUID.
-
Port prices
To check port prices, use the following GET call:
https://api.packetfabric.com/v2/billing/pricing?product_type=port
Use the following parameters to filter the results:
- Header row
- Parameter
- Notes
- Row 1
-
location_type
and
side_a
-
The
location_type
parameter is only helpful when you are also specifyingside_a
. Use these parameters together to filter pricing by location.The location type has to match the location you are filtering for in
side_a
.For example, if you want to filter for the Chicago market, you would set
location_type=market
andside_a=CHI
.If you want to filter for a specific POP, then you would set
location_type=pop
andside_a=CHI3
.You will get the most precise pricing by using a specific location such as a POP. However, if no POP-specific pricing is found, the API will return pricing for the location on a broader level such as the market or region. For more information, see PacketFabric Network Hierarchy
location_type
can be one of the following: “site” “pop” “market” “country” “region”.Typically port pricing is determined by the region (as shown in the example below).
TIP: Usehttps://api.packetfabric.com/v2/locations/markets
to get a list of all the PacketFabric market codes. To get the POP codes, use/v2.1/locations
with filters as needed or see our locations page.
-
- Row 1
-
subscription_term
-
Duration of the contract in months: 1, 12, 24, or 36.
TIP: Its a good idea to always include a subscription term in your parameters. Because the subscription term influences price, if you do not specify a term, then the API response will include 4x as many JSON objects for each request (one for each possible subscription term).
-
- Row 1
-
media
-
Optic media type: “LX” “EX” “ZX” “LR” “ER” “ER DWDM” “ZR” “ZR DWDM” “LR4” “ER4” “CWDM4” “LR4” “ER4 Lite”.
TIP: Generally speaking, the media type does not affect the price. However, if you want to be very exact, you can use/v2/locations/{pop}/port-availability
to check the media available at a specific POP, and ensure you get pricing for that media type at that location.
-
- Row 1
speed
- Port capacity strongly influences the price. For ports, use one of the following: “1Gbps” “10Gbps” “40Gbps” “100Gbps”
- Row 1
-
account_uuid
-
Billing account ID. If you have special pricing agreements tied to a certain billing account, including the account ID will return the modified prices. If you do not have any special agreements in place, you will see standard pricing regardless of whether you include your account ID.
Note that for reseller partners, some discounts can only be calculated after the billing period is over, and will not be reflected in the price returned via the API regardless of whether you include your account ID.
Use
/v2/contacts?billing=true
to find this or see Get the Account UUID.
-
For example, the following API call returns pricing for:
- 10Gbps ports
- In the NYC1 POP
- For a 12 month term
https://api.packetfabric.com/v2/billing/pricing?product_type=port&location_type=pop&side_a=NYC1&speed=10Gbps&subscription_term=12
This is the response:
[
{
"location_type": "region",
"side_a": "US",
"side_z": "*",
"product_key": "port:M12:region-1:10000-LR",
"product_type": "port",
"term": 12,
"speed": 10000,
"media_type": "LR",
"currency_code": "USD",
"mrc": "384.0",
"nrc": "250.0",
"media_price": null,
"usage": null,
"hourly_banded": null,
"per_Mb": null,
"standard_hourly_banded": null,
"standard_media_price": null,
"standard_mrc": "400.0",
"standard_nrc": "500.0",
"standard_per_Mb": null,
"standard_usage": null
}
]
There are a few things to note in this response:
[
{
"location_type": "region",
"side_a": "US",
}
]
In most cases, port pricing is not calculated on a per-POP basis.
Since there is no pricing for the NYC1 POP, the API returns the next most precise filter. In this case, it the region (US).
[
{
"mrc": "384.0",
"nrc": "250.0",
"standard_mrc": "400.0",
"standard_nrc": "500.0",
}
]
The mrc
(monthly recurring cost) and the nrc
(non-recurring cost) are the prices that matter; they are the costs with the 12 month subscription term discounts applied.
The standard_mrc
and standard_nrc
would be the prices if you were to remove the 12-month term discount.
Broadening the search
The following is a broader search, returning prices for ports in the NYC market for any capacity:
https://api.packetfabric.com/v2/billing/pricing?product_type=port&location_type=pop&side_a=NYC1&speed=10Gbps&subscription_term=12
That returns 18 different data sets, covering multiple combinations of different speeds and media.
If you were to remove the subscription term parameter:
https://api.packetfabric.com/v2/billing/pricing?product_type=port&location_type=pop&side_a=NYC1&speed=10Gbps
The response would include 72 JSON objects (18 x 4 different prices depending on subscription).
As you remove parameters, the API response grows to include all variables.
ENNI ports
Price searches for ENNI ports work the way same as ports, except you must set product_type
to port_enni
:
https://api.packetfabric.com/v2/billing/pricing?product_type=port_enni
Colt-powered ports
To filter for Colt-powered ports, set the following:
-
location_type
toregion
andside_a
to eitherUK
(the UK region returns locations across all of Europe)OR set
location_type
topop
and thenside_a
to a POP that you know is a Colt location -
network_provider_a
toColt
-
If you set a subscription term, it must be 12, 24, or 36 months
-
Speed can be either
1Gbps
or10Gbps
For example, the following returns Colt pricing for a 10 Gbps port on a 12 month term:
https://api.packetfabric.com/v2/billing/pricing?product_type=port&location_type=region&side_a=UK&network_provider_a=Colt&speed=10Gbps&subscription_term=12
For more information, see Colt-Powered Ports.
Outbound cross connect prices
To check cross connect prices, use the following GET call:
https://api.packetfabric.com/v2/billing/pricing?product_type=crossconnect
Use the following parameters to filter the results:
- Header row
- Parameter
- Notes
- Row 1
-
location_type
and
side_a
-
Unlike most other service pricing, the price for an outbound cross connect is highly dependent on the POP.
Set
location_type
to “pop.”Set
side_a
to the POP in which you will be ordering a cross connect.To get the appropriate POP code, use
/v2.1/locations
with filters as needed or see our locations page.
-
- Row 1
-
account_uuid
-
Billing account ID. If you have special pricing agreements tied to a certain billing account, including the account ID will return the modified prices. If you do not have any special agreements in place, you will see standard pricing regardless of whether you include your account ID.
Note that for reseller partners, some discounts can only be calculated after the billing period is over, and will not be reflected in the price returned via the API regardless of whether you include your account ID.
Use
/v2/contacts?billing=true
to find this or see Get the Account UUID.
-
For example, the following API call returns pricing for an outbound cross connect in the DAL7 POP:
https://api.packetfabric.com/v2/billing/pricing?product_type=crossconnect&location_type=pop&side_a=DAL7
This is the response:
[
{
"location_type": "pop",
"side_a": "DAL7",
"side_z": "*",
"product_key": "crossconnect:M1:pop-290:",
"product_type": "crossconnect",
"term": 1,
"speed": 0,
"media_type": "",
"currency_code": "USD",
"mrc": "405.0",
"nrc": "1250.0",
"media_price": null,
"usage": null,
"hourly_banded": null,
"per_Mb": null,
"standard_hourly_banded": null,
"standard_media_price": null,
"standard_mrc": "405.0",
"standard_nrc": "1250.0",
"standard_per_Mb": null,
"standard_usage": null
}
]
If outbound cross connects are not available at a location, the API will return an empty JSON array.
Subscription terms do not apply to outbound cross connects, meaning that the mrc
(monthly recurring cost with subscription discount) and nrc
(non-recurring cost with subscription discount) will be the same as the standard_mrc
and standard_nrc
.
Backbone virtual circuit prices
To check backbone virtual circuit prices, use the following GET call:
https://api.packetfabric.com/v2/billing/pricing?product_type=vcbwc
Use the following parameters to filter the results:
-
Header row
- Parameter
- Notes
-
Row 1
-
location_type
and
side_a
and
side_z
-
The
location_type
parameter is required when specifyingside_a
andside_z
.The location type has to match the location you are filtering for on each side.
For example, if you want to see the prices from the NYC market to the Chicago market, you would set
location_type=market
andside_a=NYC
andside_z=CHI
.If you want to filter for specific POPs, then you would set
location_type=pop
,side_a=NYC3
, andside_z=CHI2
.You will get the most precise pricing by using a specific location such as a POP. However, if no POP-specific pricing is found, the API will return pricing for the location on a broader level such as the market or region. For more information, see PacketFabric Network Hierarchy
location_type
can be one of the following: “site” “pop” “market” “country” “region”.Typically it is the “market” of side A and side Z that influences pricing.
TIP: Usehttps://api.packetfabric.com/v2/locations/markets
to get a list of all the PacketFabric market codes.
-
-
Row 1
-
subscription_term
-
Duration of the contract in months: 1, 12, 24, or 36.
TIP: Its a good idea to always include a subscription term in your parameters. Because the subscription term influences price, if you do not specify a term, then the API response will include 4x as many JSON objects for each request (one for each possible subscription term).
This is true even under conditions when a subscription term does not apply. For example, even though the subscription term does not affect the usage-based pricing, you should still set it to avoid seeing duplicate results.
-
-
Row 1
-
network_provider_a
and
network_provider_z
-
Limit results to a specific network provider on the A-side and Z-side. This can be “PacketFabric” or “Colt.”
Only applicable if
location_type
is set to “market” or “region.”PacketFabric to Colt virtual circuits have certain limitations. For example, PacketFabric to Colt connections cannot be usage-based or hourly. For more information, see Colt-Powered Ports.
TIP: When pricing connections in which one or both sides land in an EMEA market, it is best to specifynetwork_provider_a
andnetwork_provider_z
. Otherwise the response may include different prices depending on the provider, and it is not immediately clear in the response which is which.
-
-
Row 1
-
bandwidth_type
-
Specify “dedicated” or “usage.”
If you set this to “usage,” then do not set the
speed
parameter.
-
-
Row 1
-
service_class
-
Filter for “metro” or “longhaul” connections.
NOTE: If you’re filtering for side A and side Z locations, the service class is inherently considered. If side A and side Z are in the same market it is a metro connection; different markets are long haul connections.
If your A and Z locations conflict with your
service_class
setting, then theservice_class
setting takes precedent. For example, if you setside_a
to NYC1 andside_z
to NYC6, that is a metro connection and should return metro pricing.However, if you ALSO set
service_class
to “longhaul,” you’ll see long-haul pricing regardless of the fact that your A and Z sides are in the same metro.
-
-
Row 1
-
speed
-
This can be one of the following: “50Mbps” “100Mbps” “200Mbps” “300Mbps” “400Mbps” “500Mbps” “1Gbps” “2Gbps” “5Gbps” “10Gbps” “20Gbps” “30Gbps” “40Gbps” “50Gbps” “60Gbps” “80Gbps” “100Gbps”
If
bandwidth_type
is “usage,” then do not set thespeed
parameter.
-
-
Row 1
-
account_uuid
-
Billing account ID. If you have special pricing agreements tied to a certain billing account, including the account ID will return the modified prices. If you do not have any special agreements in place, you will see standard pricing regardless of whether you include your account ID.
Note that for reseller partners, some discounts can only be calculated after the billing period is over, and will not be reflected in the price returned via the API regardless of whether you include your account ID.
Use
/v2/contacts?billing=true
to find this or see Get the Account UUID.
-
For example, the following API call returns pricing for:
- 10Gbps virtual circuit
- Between the POPs CHI3 and the NYC8
- For a 12 month term
- With dedicated pricing
https://api.packetfabric.com/v2/billing/pricing?product_type=vcbwc&location_type=pop&side_a=CHI3&side_z=NYC8&speed=10Gbps&subscription_term=12&bandwidth_type=dedicated
This is the response:
[
{
"location_type": "region",
"side_a": "US",
"side_z": "US",
"product_key": "vcbwc:M12:region-1-1:10000-dedicated-longhaul",
"product_type": "vcbwc",
"term": 12,
"speed": 10000,
"media_type": "",
"currency_code": "USD",
"mrc": "1920.0",
"nrc": null,
"media_price": null,
"usage": null,
"hourly_banded": null,
"per_Mb": null,
"standard_hourly_banded": null,
"standard_media_price": null,
"standard_mrc": "2000.0",
"standard_nrc": null,
"standard_per_Mb": null,
"standard_usage": null
}
]
Similar to ports, there are a few things to note in this response:
[
{
"location_type": "region",
"side_a": "US",
"side_z": "US",
"product_key": "vcbwc:M12:region-1-1:10000-dedicated-longhaul",
}
]
In most cases, pricing is not calculated on a per-POP basis. In this example, what was important was that the virtual circuit extended between two locations within the same region (US). The dedicated-longhaul
portion at the end of product_key
indicates that the A and Z side fall in two different markets. Had both been in the same market, this would read dedicated-metro
.
At this time we do not provide pricing based on market proximity, so the price is the same for a virtual circuit extending between Houston and Dallas or Houston and New York City.
Since there is no special pricing on the POP level or market level, the API returns the next most precise filter. In this case, it the region (US).
[
{
"mrc": "1920.0",
"nrc": null,
"standard_mrc": "2000.0",
"standard_nrc": null,
}
]
Virtual circuits to do not have a non-recurring cost (nrc
), so that field will always be null.
The mrc
(monthly recurring cost) is the cost that matters here; it is the price of the virtual circuit with the 12-month subscription term discount applied.
The standard_mrc
would be the price if you were to remove the 12-month term discount.
Metro circuits
At this time, metro circuits (circuits with A and Z sides both in the same metro) are $0 regardless of size.
To verify that, can use a GET call like the following
https://api.packetfabric.com/v2/billing/pricing?product_type=vcbwc&location_type=region&side_a=US&side_z=US&subscription_term=12&bandwidth_type=dedicated&service_class=metro
Transatlantic connections
The following API call returns pricing for:
- 10Gbps virtual circuit
- Between the NYC market and the Frankfurt market (FRA)
- For a 12 month term
- With dedicated pricing
- Between two PacketFabric ports
https://api.packetfabric.com/v2/billing/pricing?product_type=vcbwc&location_type=market&side_a=NYC&side_z=FRA&speed=10Gbps&subscription_term=12&network_provider_a=PacketFabric&network_provider_z=PacketFabric&bandwidth_type=dedicated
network_provider_a
and network_provider_z
. Otherwise your response may include different prices depending on the provider, and it is not immediately clear in the response which is which.Hourly virtual circuits
For hourly virtual circuits, set product_type
to vc_hourly
. The other parameters are the same.
https://api.packetfabric.com/v2/billing/pricing?product_type=vc_hourly
Hosted cloud connections prices
To check Hosted cloud connection prices, use the following GET call:
https://api.packetfabric.com/v2/billing/pricing?product_type=cloud_hosted
Use the following parameters to filter the results:
-
Header row
- Parameter
- Notes
-
Row 1
-
location_type
-
The
location_type
parameter is required when specifyingside_a
andside_z
.The location type has to match the location you are filtering for on each side.
For example, if you want to see the prices from the NYC market to the Chicago market, you would set
location_type=market
andside_a=NYC
andside_z=CHI
.If you want to filter for specific POPs, then you would set
location_type=pop
,side_a=NYC3
, andside_z=CHI2
.You will get the most precise pricing by using a specific location such as a POP. However, if no POP-specific pricing is found, the API will return pricing for the location on a broader level such as the market or region. For more information, see PacketFabric Network Hierarchy
location_type
can be one of the following: “site” “pop” “market” “country” “region”.Typically it is the “market” of side A and side Z that influences pricing.
TIP: Usehttps://api.packetfabric.com/v2/locations/markets
to get a list of all the PacketFabric market codes.
-
-
Row 1
-
side_a
and
side_z
-
Review
location_type
above.One side should be the location of your PacketFabric port (or where you plan to have a port).
The other side should be an on-ramp location. For a list of our cloud on-ramp locations, use
/v2/locations/cloud
with filters as needed or see our locations page.
-
-
Row 1
-
subscription_term
-
Duration of the contract in months: 1, 12, 24, or 36.
TIP: Its a good idea to always include a subscription term in your parameters. Because the subscription term influences price, if you do not specify a term, then 4x as many data sets will return for each request (one for each possible subscription term).
All Hosted cloud connections are on 1 months terms, so the pricing will not change if you specify a longer term. However, the request will still return 4 data sets for each term to reflect this. Therefore you should still set a subscription term to avoid seeing duplicates.
-
-
Row 1
-
provider
-
Filter by cloud provider. For example,
provider=aws
.This can be one of the following: “aws”, “google”, “generic”, “azure”, “ibm”, “oracle”, “salesforce”.
PacketFabric pricing does not generally change depending on the cloud provider. However, you should still use this filter to ensure accuracy and reduce the size of the response.
-
-
Row 1
-
service_class
-
Filter for “metro” or “longhaul” connections.
NOTE: If you’re filtering for side A and side Z locations, the service class is inherently considered. If side A and side Z are in the same market it is a metro connection; different markets are long haul connections.
If your A and Z locations conflict with your
service_class
setting, then theservice_class
setting takes precedent. For example, if you setside_a
to NYC1 andside_z
to NYC6, that is a metro connection and should return metro pricing.However, if you ALSO set
service_class
to “longhaul,” you’ll see long-haul pricing regardless of the fact that your A and Z sides are in the same metro.
-
-
Row 1
speed
- This can be one of the following: “50Mbps” “100Mbps” “200Mbps” “300Mbps” “400Mbps” “500Mbps” “1Gbps” “2Gbps” “5Gbps” “10Gbps”
-
Row 1
-
account_uuid
-
Billing account ID. If you have special pricing agreements tied to a certain billing account, including the account ID will return the modified prices. If you do not have any special agreements in place, you will see standard pricing regardless of whether you include your account ID.
Note that for reseller partners, some discounts can only be calculated after the billing period is over, and will not be reflected in the price returned via the API regardless of whether you include your account ID.
Use
/v2/contacts?billing=true
to find this or see Get the Account UUID.
-
For example, the following API call returns pricing for:
- 1 Gbps connection
- Between the Chicago market and the New York City market
- For a 1 month term (all pricing is based on a one month term)
- To Azure
https://api.packetfabric.com/v2/billing/pricing?product_type=cloud_hosted&location_type=market&side_a=NYC&side_z=CHI&speed=1Gbps&subscription_term=1&provider=azure
This is the response:
[
{
"location_type": "region",
"side_a": "US",
"side_z": "US",
"product_key": "cloud_hosted:M1:region-1-1:1000-azure-longhaul",
"product_type": "cloud_hosted",
"term": 1,
"speed": 1000,
"media_type": "",
"currency_code": "USD",
"mrc": "100.0",
"nrc": null,
"media_price": null,
"usage": null,
"hourly_banded": null,
"per_Mb": null,
"standard_hourly_banded": null,
"standard_media_price": null,
"standard_mrc": "100.0",
"standard_nrc": null,
"standard_per_Mb": null,
"standard_usage": null
}
]
Hosted cloud connections can only be on a one month term, so the same price will return regardless of the subscription_term
filter you use. This also means that the mrc
(monthly recurring cost with subscription discount) and the standard_mrc
(monthly recurring cost without a subscription discount) are always the same.
Like backbone virtual circuits, Hosted cloud connections do not have nrc
costs (non-recurring costs).
Point-to-point connection prices
To check point-to-point connection prices, use the following GET call:
https://api.packetfabric.com/v2/billing/pricing?product_type=pointtopoint
A point-to-point connection comprises two ports and a single EPL connection between those ports. Your parameter filters apply to the ports. For more information on EPL connections, see Point-to-Point Overview.
Use the following parameters to filter the results:
- Header row
- Parameter
- Notes
- Row 1
-
location_type
and
side_a
and
side_z
-
The
location_type
parameter is required when specifyingside_a
andside_z
. For point to point connections, the A and Z sides are where the two ports will be located.The location type has to match the location you are filtering for on each side.
For example, if you want to see the prices from the NYC market to the Chicago market, you would set
location_type=market
andside_a=NYC
andside_z=CHI
.If you want to filter for specific POPs, then you would set
location_type=pop
,side_a=NYC3
, andside_z=CHI2
.You will get the most precise pricing by using a specific location such as a POP. However, if no POP-specific pricing is found, the API will return pricing for the location on a broader level such as the market or region. For more information, see PacketFabric Network Hierarchy
location_type
can be one of the following: “site” “pop” “market” “country” “region”.Typically it is the “market” of side A and side Z that influences pricing.
TIP: Usehttps://api.packetfabric.com/v2/locations/markets
to get a list of all the PacketFabric market codes.
-
- Row 1
-
subscription_term
-
Duration of the contract in months: 1, 12, 24, or 36.
TIP: Its a good idea to always include a subscription term in your parameters. Because the subscription term influences price, if you do not specify a term, then the API response will include 4x as many JSON objects for each request (one for each possible subscription term).
-
- Row 1
-
media
-
Optic media type: “LX” “EX” “ZX” “LR” “ER” “ER DWDM” “ZR” “ZR DWDM” “LR4” “ER4” “CWDM4” “LR4” “ER4 Lite”.
Even though a point-to-point connection has two ports, the media for both ports has to match. Therefore you only need to specify media once.
TIP: Generally speaking, the media type does not affect the price. However, if you want to be very exact, you can use/v2/locations/{pop}/port-availability
to check the media available at a specific POP, and ensure you get pricing for that media type at that location.
-
- Row 1
-
speed
-
Port capacity strongly influences the price. For ports, use one of the following: “1Gbps” “10Gbps” “40Gbps” “100Gbps”
Even though a point-to-point connection has two ports, the speed for both ports has to match. Therefore you only need to specify speed once. The EPL virtual circuit that extends between the ports will use the full port capacity.
-
- Row 1
-
account_uuid
-
Billing account ID. If you have special pricing agreements tied to a certain billing account, including the account ID will return the modified prices. If you do not have any special agreements in place, you will see standard pricing regardless of whether you include your account ID.
Note that for reseller partners, some discounts can only be calculated after the billing period is over, and will not be reflected in the price returned via the API regardless of whether you include your account ID.
Use
/v2/contacts?billing=true
to find this or see Get the Account UUID.
-
For example, the following API call returns pricing for:
- Two 10 Gbps ports and the 10 Gbps connection between them
- The ports are located in DAL7 and CHI3 POPs
- For a 12 month term
https://api.packetfabric.com/v2/billing/pricing?product_type=pointtopoint&location_type=pop&side_a=DAL7&side_z=CHI3&speed=10Gbps&subscription_term=12
This is the response:
[
{
"location_type": "region",
"side_a": "US",
"side_z": "US",
"product_key": "pointtopoint:M12:region-1-1:10000-LR-longhaul",
"product_type": "pointtopoint",
"term": 12,
"speed": 10000,
"media_type": "LR",
"currency_code": "USD",
"mrc": "1680.0",
"nrc": "250.0",
"media_price": null,
"usage": null,
"hourly_banded": null,
"per_Mb": null,
"standard_hourly_banded": null,
"standard_media_price": null,
"standard_mrc": "1750.0",
"standard_nrc": "500.0",
"standard_per_Mb": null,
"standard_usage": null
}
]
As detailed in the previous sections, in most cases, port pricing is not calculated on a per-POP basis.
Since there is no specific pricing for the two POPs, the API returns the next most precise filter. In this case, it the region (US).
[
{
"mrc": "1680.0",
"nrc": "250.0",
"standard_mrc": "1750.0",
"standard_nrc": "500.0",
}
]
The mrc
(monthly recurring cost) and the nrc
(non-recurring cost) are the prices that matter; they are the costs with the 12 month subscription term discounts applied.
The standard_mrc
and standard_nrc
would be the prices if you were to remove the 12-month term discount.