> ## Documentation Index
> Fetch the complete documentation index at: https://docs.megaport.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Order Webhook Events

> This help topic describes the order webhook events.

export const Anchor = ({name}) => {
  const errorPrefix = '\x1b[31;1;4mERROR\x1b[0m: Anchor -';
  if (name === undefined || name === null || name === 'undefined') {
    console.error(`${errorPrefix} \`name\` must have a value — rendering an empty string instead`);
    return <></>;
  }
  const raw = typeof name === 'string' ? name : JSON.stringify(name);
  const id = raw.replace(/\s+/g, '-').replace(/[^A-Za-z0-9_-]/g, '').replace(/-+/g, '-').replace(/^-+|-+$/g, '');
  if (!id) {
    console.error(`${errorPrefix} \`name\` "${name}" sanitizes to an empty id — rendering an empty string instead`);
    return <></>;
  }
  return <a style={{
    scrollMarginTop: 'var(--scroll-mt)'
  }} id={id}></a>;
};

This topic describes the order events sent by Megaport's webhooks.

<Anchor name="order-ix-processed" />

## order.ix.processed

`order.ix.processed` is sent when an IX order has been processed.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `order_date` (string, date-time)
  * `port_service_uid` (string, UUID)
  * `service_uid` (string, UUID)
  * `term_months` (integer, int32)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.ix.processed",
  "data": {
    "order_date": "2026-04-23T03:30:05Z",
    "port_service_uid": "34ee661a-18f0-4c30-8a73-e2d7e0ab641d",
    "service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e",
    "term_months": 12
  }
}
```

<Anchor name="order-megaport-processed" />

## order.megaport.processed

`order.megaport.processed` is sent when a port order has been processed.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `cross_connect_requested` (boolean)
  * `location` (string)
  * `order_date` (string, date-time)
  * `service_uid` (string, UUID)
  * `term_months` (integer, int32)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.megaport.processed",
  "data": {
    "cross_connect_requested": true,
    "location": "DC1 Sydney",
    "order_date": "2026-04-23T03:30:05Z",
    "service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e",
    "term_months": 12
  }
}
```

<Anchor name="order-request-approved" />

## order.request.approved

`order.request.approved` is sent when an order request is approved.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `approver_company_uid` (string, UUID)
  * `order_type` (string)
  * `order_uid` (string, UUID)
  * `ordered_by_uid` (string, UUID)
  * `product_type` (string)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.request.approved",
  "data": {
    "approver_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "order_type": "NEW_ORDER",
    "order_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "ordered_by_uid": "fd2188e4-2ead-4f46-9a99-de0a333fbee2",
    "product_type": "VXC",
    "service_uid": "5a1b7c3d-2e9f-4a6b-8c1d-0e2f4a6b8c1d"
  }
}
```

<Anchor name="order-request-failed" />

## order.request.failed

`order.request.failed` is sent when an order request failed.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `approver_company_uid` (string, UUID)
  * `error_summary` (string)
  * `order_type` (string)
  * `order_uid` (string, UUID)
  * `ordered_by_uid` (string, UUID)
  * `product_type` (string)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.request.failed",
  "data": {
    "approver_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "error_summary": "Provisioning timed out at upstream",
    "order_type": "NEW_ORDER",
    "order_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "ordered_by_uid": "fd2188e4-2ead-4f46-9a99-de0a333fbee2",
    "product_type": "VXC",
    "service_uid": "5a1b7c3d-2e9f-4a6b-8c1d-0e2f4a6b8c1d"
  }
}
```

<Anchor name="order-request-pending" />

## order.request.pending

`order.request.pending` is sent when an order request is pending.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `order_type` (string)
  * `order_uid` (string, UUID)
  * `ordered_by_uid` (string, UUID)
  * `product_type` (string)
  * `requester_company_uid` (string, UUID)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.request.pending",
  "data": {
    "order_type": "NEW_ORDER",
    "order_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "ordered_by_uid": "fd2188e4-2ead-4f46-9a99-de0a333fbee2",
    "product_type": "VXC",
    "requester_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "service_uid": "5a1b7c3d-2e9f-4a6b-8c1d-0e2f4a6b8c1d"
  }
}
```

<Anchor name="order-request-rejected" />

## order.request.rejected

`order.request.rejected` is sent when an order request is rejected.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `approver_company_uid` (string, UUID)
  * `comment` (string)
  * `order_type` (string)
  * `order_uid` (string, UUID)
  * `ordered_by_uid` (string, UUID)
  * `product_type` (string)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.request.rejected",
  "data": {
    "approver_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "comment": "Budget not approved this quarter",
    "order_type": "TERM_CHANGE",
    "order_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "ordered_by_uid": "fd2188e4-2ead-4f46-9a99-de0a333fbee2",
    "product_type": "VXC",
    "service_uid": "5a1b7c3d-2e9f-4a6b-8c1d-0e2f4a6b8c1d"
  }
}
```

<Anchor name="order-request-withdrawn" />

## order.request.withdrawn

`order.request.withdrawn` is sent when an order request is withdrawn.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `comment` (string)
  * `order_type` (string)
  * `order_uid` (string, UUID)
  * `ordered_by_uid` (string, UUID)
  * `product_type` (string)
  * `requester_company_uid` (string, UUID)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.request.withdrawn",
  "data": {
    "comment": "Replacing with a different configuration",
    "order_type": "NEW_ORDER",
    "order_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "ordered_by_uid": "fd2188e4-2ead-4f46-9a99-de0a333fbee2",
    "product_type": "VXC",
    "requester_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "service_uid": "5a1b7c3d-2e9f-4a6b-8c1d-0e2f4a6b8c1d"
  }
}
```

<Anchor name="order-vxc-approved" />

## order.vxc.approved

`order.vxc.approved` is sent when a marketplace VXC order request is approved.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `approver_company_uid` (string, UUID)
  * `order_date` (string, date-time)
  * `request_type` (string)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.vxc.approved",
  "data": {
    "approver_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "order_date": "2026-04-23T03:30:05Z",
    "request_type": "NEW",
    "service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e"
  }
}
```

<Anchor name="order-vxc-pending" />

## order.vxc.pending

`order.vxc.pending` is sent when a marketplace VXC order request is pending.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `order_date` (string, date-time)
  * `pending_days` (integer, int32)
  * `request_type` (string)
  * `requester_company_uid` (string, UUID)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.vxc.pending",
  "data": {
    "order_date": "2026-04-23T03:30:05Z",
    "pending_days": 7,
    "request_type": "NEW",
    "requester_company_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e"
  }
}
```

<Anchor name="order-vxc-rejected" />

## order.vxc.rejected

`order.vxc.rejected` is sent when a marketplace VXC order request is rejected.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `approver_company_uid` (string, UUID)
  * `order_date` (string, date-time)
  * `request_type` (string)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.vxc.rejected",
  "data": {
    "approver_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "order_date": "2026-04-23T03:30:05Z",
    "request_type": "NEW",
    "service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e"
  }
}
```

<Anchor name="order-vxc-requested" />

## order.vxc.requested

`order.vxc.requested` is sent when a marketplace VXC order is requested.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `approver_company_uid` (string, UUID)
  * `form_submission` (object)
  * `order_date` (string, date-time)
  * `requester_company_uid` (string, UUID)
  * `service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.vxc.requested",
  "data": {
    "approver_company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
    "form_submission": {
      "company_name": "Acme Corp",
      "contact_email": "james@acme.com",
      "requested_bandwidth": "1 Gbps"
    },
    "order_date": "2026-04-23T03:30:05Z",
    "requester_company_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e"
  }
}
```

<Anchor name="order-vxc-servicekey-provisioned" />

## order.vxc.servicekey.provisioned

`order.vxc.servicekey.provisioned` is sent when a VXC service is provisioned using a service key.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `owning_service_uid` (string, UUID)
  * `service_key` (string)
  * `vxc_service_uid` (string, UUID)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.vxc.servicekey.provisioned",
  "data": {
    "owning_service_uid": "34ee661a-18f0-4c30-8a73-e2d7e0ab641d",
    "service_key": "a6ff4g90-431d-1260-9fa6-98ae225e3234",
    "vxc_service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e"
  }
}
```

<Anchor name="order-vxc-speed-change-requested" />

## order.vxc.speed.change.requested

`order.vxc.speed.change.requested` is sent when a speed change is requested.

The payload of this event has the following structure:

* `company_uid` (string, UUID)
* `metadata` (object)
  * `environment` (string)
* `schema_version` (string)
* `timestamp` (string, date-time)
* `type` (string)
* `data` (object)
  * `order_date` (string, date-time)
  * `requester_company_uid` (string, UUID)
  * `service_uid` (string, UUID)
  * `speed_mbps` (integer, int32)

For example:

```json theme={"theme":{"light":"github-light-high-contrast","dark":"github-dark-high-contrast"}}
{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "order.vxc.speed.change.requested",
  "data": {
    "order_date": "2026-04-23T03:30:05Z",
    "requester_company_uid": "3bb5e87d-9b3d-4c43-bbbd-9132cde06616",
    "service_uid": "e513ab3e-8b0c-4d88-bef0-1f7358897d6e",
    "speed_mbps": 100
  }
}
```
