Resource Reference
Data models, field definitions, valid values, and constraints for all Megaport resource types
Field-level reference for every Megaport resource type. Use this alongside Input Modes when constructing JSON configurations.
Resource lifecycle
All provisioned resources move through these states:
| Status | Description |
|---|---|
CONFIGURED | Resource created — fabric provisioning in progress |
LIVE | Resource is active and operational |
CANCELLED | Deletion requested — pending end of billing period |
DECOMMISSIONED | Resource fully removed from the fabric |
Commands wait for LIVE status by default. Use --no-wait to return immediately after creation.
Shared constraints
These apply across all resource types.
| Constraint | Value |
|---|---|
| Contract terms | 1, 12, 24, 36 months |
| Max resource name length | 64 characters (ports, MVE) |
| Output formats | table, json, csv, xml |
Port
Physical port connecting on-premises infrastructure to the Megaport fabric.
Fields
| Field | Type | Description |
|---|---|---|
uid | string | Unique identifier |
name | string | Port name (max 64 chars) |
locationId | integer | Data centre location ID |
portSpeed | integer | Speed in Mbps |
provisioningStatus | string | Current lifecycle state |
marketPlaceVisibility | boolean | Visible to other Megaport customers |
costCentre | string | Cost centre label |
term | integer | Contract term in months |
locked | boolean | Lock state (prevents deletion) |
diversityZone | string | Diversity zone for redundant ports |
resourceTags | map<string, string> | Key-value tags for organising and labelling the resource |
Port speeds
| Speed | Description |
|---|---|
1000 | 1 Gbps |
10000 | 10 Gbps |
100000 | 100 Gbps |
LAG port speeds
| Speed | Max member count |
|---|---|
10000 | 8 |
100000 | 8 |
Buy (JSON)
{
"name": "Sydney Primary",
"locationId": 3,
"portSpeed": 10000,
"term": 12,
"marketPlaceVisibility": false,
"costCentre": "INFRA-001",
"diversityZone": "blue",
"resourceTags": {
"environment": "production",
"team": "network-ops"
}
}
name, locationId, portSpeed, term, and marketPlaceVisibility are required.
VXC
Virtual Cross Connect — a Layer 2 point-to-point circuit between two endpoints.
Fields
| Field | Type | Description |
|---|---|---|
uid | string | Unique identifier |
name | string | VXC name |
aEndUid | string | A-End port/MCR/MVE UID |
bEndUid | string | B-End UID (partner port or owned port) |
aEndVlan | integer | A-End VLAN ID |
bEndVlan | integer | B-End VLAN ID |
rateLimit | integer | Bandwidth in Mbps |
provisioningStatus | string | Current lifecycle state |
term | integer | Contract term in months |
costCentre | string | Cost centre label |
locked | boolean | Lock state |
resourceTags | map<string, string> | Key-value tags for organising and labelling the resource |
VLAN values
| Value | Meaning |
|---|---|
0 | Auto-assign (Megaport chooses) |
-1 | Untagged |
2–4093 | Assignable range |
1 | Reserved — cannot be used |
4094 | Maximum IEEE 802.1Q value |
VXC partner configs (b-end)
Use the bEndPartnerConfig field in JSON input to connect to cloud providers.
AWS Direct Connect
{
"connectType": "AWS",
"ownerAccount": "123456789012",
"type": "private",
"connectionName": "my-dx-connection",
"asn": 65000,
"authKey": "optional-bgp-auth-key"
}
| Field | Required | Description |
|---|---|---|
connectType | Yes | "AWS" (standard) or "AWSHC" (Hosted Connection) |
ownerAccount | Yes | AWS account ID (12 digits) |
type | No | "private" (default) or "public" |
connectionName | No | Name in AWS Console (max 255 chars) |
asn | No | BGP ASN for the virtual interface |
authKey | No | BGP authentication key |
Azure ExpressRoute
{
"connectType": "AZURE",
"serviceKey": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
| Field | Required | Description |
|---|---|---|
connectType | Yes | "AZURE" |
serviceKey | Yes | Azure ExpressRoute circuit service key (UUID) |
peers | No | Array of BGP peer configurations |
Google Cloud Interconnect
{
"connectType": "GOOGLE",
"pairingKey": "your-gcp-pairing-key"
}
| Field | Required | Description |
|---|---|---|
connectType | Yes | "GOOGLE" |
pairingKey | Yes | GCP VLAN attachment pairing key |
Oracle FastConnect
{
"connectType": "ORACLE",
"virtualCircuitId": "ocid1.virtualcircuit.oc1..."
}
IBM Direct Link
{
"connectType": "IBM",
"accountId": "32hexcharactersexactly0123456789"
}
accountId must be exactly 32 hex characters.
Megaport Internet (Transit)
{
"connectType": "TRANSIT"
}
Megaport Internet provides direct internet transit connectivity via a VXC. No additional configuration fields are required beyond the connect type.
vRouter (MCR-to-MCR or private BGP)
{
"connectType": "VROUTER",
"interfaces": [
{
"ipAddresses": ["192.168.1.1/30"],
"bgpConnections": [
{
"peerAsn": 65001,
"localIpAddress": "192.168.1.1",
"peerIpAddress": "192.168.1.2"
}
]
}
]
}
MCR
Megaport Cloud Router — a virtual Layer 3 router in the Megaport fabric.
Fields
| Field | Type | Description |
|---|---|---|
uid | string | Unique identifier |
name | string | MCR name |
locationId | integer | Location ID |
provisioningStatus | string | Current lifecycle state |
portSpeed | integer | Total throughput capacity in Mbps |
mcrAsn | integer | BGP Autonomous System Number |
costCentre | string | Cost centre label |
marketPlaceVisibility | boolean | Visible to other customers |
diversityZone | string | Diversity zone |
locked | boolean | Lock state |
resourceTags | map<string, string> | Key-value tags for organising and labelling the resource |
MCR speeds
1000, 2500, 5000, 10000, 25000, 50000, 100000 Mbps
Buy (JSON)
{
"name": "Cloud Router SYD",
"locationId": 3,
"portSpeed": 5000,
"term": 12,
"marketPlaceVisibility": false,
"mcrAsn": 64512
}
name, locationId, portSpeed, term, and marketPlaceVisibility are required. mcrAsn is auto-assigned if omitted.
ASN guidelines
- Private ASN range: 64512–65534
- Use private ASNs unless you have a registered public ASN
- ASN cannot be changed after provisioning
Prefix filter list entry fields
| Field | Required | Description |
|---|---|---|
action | Yes | "permit" or "deny" |
prefix | Yes | CIDR prefix (e.g. "10.0.0.0/8") |
ge | No | Minimum prefix length (greater-than-or-equal) |
le | No | Maximum prefix length (less-than-or-equal) |
Always add {"action":"deny","prefix":"0.0.0.0/0"} as the final entry for a default-deny.
MVE
Megaport Virtual Edge — a vendor network appliance running in the Megaport fabric.
Fields
| Field | Type | Description |
|---|---|---|
uid | string | Unique identifier |
name | string | MVE name (max 64 chars) |
locationId | integer | Location ID |
provisioningStatus | string | Current lifecycle state |
vendor | string | Appliance vendor |
productSize | string | VM size tier |
imageId | integer | Vendor image version ID |
costCentre | string | Cost centre label |
locked | boolean | Lock state |
resourceTags | map<string, string> | Key-value tags for organising and labelling the resource |
Product sizes
| Size | Description |
|---|---|
SMALL | Smallest compute allocation |
MEDIUM | Standard compute |
LARGE | High-performance |
X_LARGE_12 | Extra large (12 vCPU) |
Supported vendors
| Vendor key | Vendor |
|---|---|
6wind | 6WIND VSR |
aruba | Aruba SD-WAN |
aviatrix | Aviatrix |
cisco | Cisco CSR / ASA |
fortinet | FortiGate |
meraki | Cisco Meraki |
palo_alto | Palo Alto Networks |
prisma | Palo Alto Prisma SD-WAN |
versa | Versa Networks |
vmware | VMware SD-WAN |
Vendor config required fields
| Vendor | Required fields |
|---|---|
6wind | imageId, productSize, sshPublicKey |
aruba | imageId, productSize, accountName, accountKey |
aviatrix | imageId, productSize, cloudInit |
cisco | imageId, productSize, adminSshPublicKey, sshPublicKey |
fortinet | imageId, productSize, adminSshPublicKey, sshPublicKey, licenseData |
meraki | imageId, productSize, token |
palo_alto | imageId, productSize, sshPublicKey, adminPasswordHash, licenseData |
prisma | imageId, productSize, ionKey, secretKey |
versa | imageId, productSize, directorAddress, controllerAddress, localAuth, remoteAuth, serialNumber |
vmware | imageId, productSize, adminSshPublicKey, sshPublicKey, vcoAddress, vcoActivationCode |
All vendors support an optional mveLabel field. Use megaport-cli mve list-images to find the correct imageId for your vendor and region.
IX
Internet Exchange connection. Attaches to an existing port.
Fields
| Field | Type | Description |
|---|---|---|
uid | string | Unique identifier |
name | string | IX connection name |
productUid | string | Parent port UID |
networkServiceType | string | IX service type |
asn | integer | Your BGP ASN for this IX |
macAddress | string | MAC address for the IX interface |
rateLimit | integer | Bandwidth in Mbps |
vlan | integer | VLAN tag |
provisioningStatus | string | Current lifecycle state |
Location
Data centre on the Megaport fabric. Read-only — locations cannot be provisioned or deleted.
Fields
| Field | Type | Description |
|---|---|---|
id | integer | Location ID |
name | string | Location name |
country | string | Country code |
metro | string | Metro area |
market | string | Market code |
status | string | Location availability status |
dataCentreName | string | Data centre operator name |
mcrAvailable | boolean | MCR can be provisioned here |
mveAvailable | boolean | MVE can be provisioned here |
latitude | float | Geographic latitude |
longitude | float | Geographic longitude |
Service Key
Grants access to a port or resource for a third party.
Fields
| Field | Type | Description |
|---|---|---|
key | string | The service key value |
productUid | string | Port or resource UID this key grants access to |
description | string | Purpose of the key |
active | boolean | Whether the key is currently valid |
maxSpeed | integer | Maximum bandwidth the key holder can use |
preApproved | boolean | Skip approval flow for connections |
singleUse | boolean | Key expires after first use |
BGP reference
Used in VXC vRouter configurations and MCR BGP sessions.
| Parameter | Valid range | Description |
|---|---|---|
| AS path prepend count | 0–10 | Times to prepend the AS path |
| BFD interval | 300–30000 ms | BFD keepalive interval |
| BFD multiplier | 3–20 | BFD failure detection multiplier |
| MED | 0–4294967295 | Multi-Exit Discriminator |
| BGP peer type | NON_CLOUD, PRIV_CLOUD, PUB_CLOUD | Peer classification |
| Export policy | permit, deny | Default export policy |