Sixfab API Migration Guide

API Reference

API Migration Guide

This document describes recent and upcoming changes to the Asset and SIM APIs. Some fields and endpoints are being deprecated to support multiple SIM types per asset and to provide a clearer, more extensible data model.

Asset API SIM API Super SIM PRO SIM
API Reference · Asset & SIM API
Important note on backward compatibility

To ensure your existing integrations continue to function, we are providing “mirror” fields. For example, the legacy sim object is still returned and contains a duplicate of the supersim data.

All legacy fields and endpoints will be officially removed on September 1, 2026.

Overview of the New Model

An asset can now have one or more SIMs of different types (Super SIM and PRO SIM). Because of this, the legacy asset.sim field is being deprecated and replaced by specific objects for each SIM type.

New Asset Structure

Asset object JSON
{
  "uuid": "string",
  "serial_number": "string",
  "name": "string",
  "type": "string",
  "created_at": 0,
  "status": "active",
  "supersim": {
    "sid": "string",
    "iccid": "string",
    "network_group": "string"
  },
  "prosim": {
    "imsi": "string",
    "iccid": "string",
    "service_profile": "string"
  },
  "sim": { ... } // Legacy mirror of supersim
}

Endpoint Changes

1

Get Assets

What changed

  • The network_group field is no longer returned at the asset level.
  • network_group is now available under supersim in the Asset Details endpoint.
Action required

asset.network_group is deprecated. Please stop using it in your implementations.

2

Asset Details

This endpoint returns detailed information for a single asset.

Behavior

  • If the asset has a Super SIM, the supersim object is included.
  • If the asset has a PRO SIM, the prosim object is included.
  • Both supersim and prosim may be present in the same response.

Status handling

A new top-level status field represents the overall asset status:

  • If either Super SIM or PRO SIM is active → asset.status = "active"
  • If both are inactive → asset.status = "inactive"

Backward compatibility notes

  • The legacy sim field is still returned for backward compatibility only. It is deprecated and acts as a mirror of the supersim field.
  • Status should now be read from the top-level asset.status.
Action required
  • Migrate your logic to use supersim and prosim objects.
  • Stop relying on the legacy sim field.
  • Use the top-level asset.status for connectivity status instead of asset.sim.status.
3

Update Asset

This endpoint has been expanded and now replaces several legacy operations. You can update the asset's name, status (for all available SIMs), and Super SIM network group. PRO SIM properties cannot be updated.

Following fields can be updated:

  • name: Display name of the asset.
  • status: Overall status of the asset.
    • Setting inactive deactivates all SIMs on the asset.
    • Setting active activates all SIMs on the asset.
  • supersim: Used to update Super SIM specific properties.
    • network_group: Previously named fleet. The fleet field is no longer supported. Use network_group instead.
4

Update SIM

Deprecated
Fully deprecated

The Update SIM endpoint is now fully deprecated and will be removed.

What to use instead

  • To update asset status → use Update Asset endpoint → status
  • To update Super SIM network group → use Update Asset endpoint → supersim.network_group
5

SIM Usage Details

We've deprecated the old usage endpoint (/assets/{asset_id}/sim/usages) and introduced a new, more flexible endpoint to accommodate multiple SIM types.

Path
GET /v1/assets/{asset_id}/sims/{sim_type}/usages

sim_type can be either supersim or prosim.

Granularity

SIM type
Granularity
Super SIM
Supports both hourly and daily.
PRO SIM
Supports only daily.

Data Finalization

Data finalization is the process of reconciling and validating usage data after it is initially reported. Because Super SIM and PRO SIM usage data are processed differently, each has a different finalization period. As a result, usage data may not be fully accurate until the applicable finalization period has elapsed.

SIM type
Finalization period
Super SIM
Data is finalized after 24 hours.
PRO SIM
Data can take up to 10 days to finalize due to global roaming reconciliations.

PRO SIM Usage Structure

PRO SIM usage returns a total value and the service_profile instead of network-specific splits.

PRO SIM usage JSON
{
  "start_time": 1773705600,
  "end_time": 1773791999,
  "usages": [
    { "service_profile": "60077", "total": 873511 }
  ]
}

Super SIM Usage Structure

Super SIM usage structure remains unchanged, with network_group splits.

Action required

Switch to the new /sims/{sim_type}/usages endpoint for SIM usage details.

Summary of Deprecations

The following fields and endpoints are deprecated and will be removed on September 1, 2026:

Deprecated
Location
asset.sim object
Asset Details
asset.network_group
Get Assets (List) endpoint
Update SIM endpoint
PATCH /assets/{asset_id}/sim
Legacy Usage endpoint
GET /assets/{asset_id}/sim/usages

Summary of Required Actions

  • Migrate from asset.sim to asset.supersim and asset.prosim.
  • network_group is not returned in the Get Assets endpoint. Use supersim.network_group in Asset Details instead.
  • Stop using top-level asset.network_group and switch to supersim.network_group.
  • Stop using asset.sim.status and switch to the top-level asset.status for connectivity status.
  • Update Super SIM network groups via the Update Asset endpoint instead of the deprecated Update SIM endpoint.
  • Switch to network_group instead of fleet for Super SIM updates.
  • Use the new GET /v1/assets/{asset_id}/sims/{sim_type}/usages endpoint for SIM usage details instead of the deprecated endpoint.
Need help?

If you have questions or need assistance during migration, please contact our support team.