ONYX
Docs

Catalogue API

Read approved packages, coverage, data allowance, validity, status, catalogue version, and partner-facing commercial fields.

Catalogue API returns the packages your organization is approved to offer.

Use it to build destination, regional, and global package selection. Store the catalogue version you displayed and the catalogue version used at purchase.

The API returns partner-safe package fields only. It does not expose non-public operating fields, private margin logic, or private package notes.

List Packages

GET /v1/partner/catalog/packages

Returns the current approved catalogue for your partner account.

{
  "data": {
    "catalogueVersion": "onyx-connect-sdk-v1",
    "packages": [
      {
        "packageId": "onyx-connect-japan-10gb-30d",
        "productFamily": "connect_sdk",
        "coverageName": "Japan",
        "coverageType": "country",
        "displayName": "Onyx Japan 10GB 30 Days",
        "iso2": "JP",
        "region": "Asia",
        "type": "sim",
        "validityDays": 30,
        "dataMb": 10240,
        "allowanceGb": 10,
        "dataLabel": "10GB",
        "sms": 0,
        "voice": 0,
        "msrpPriceUsd": 18,
        "onyxPartnerNetPriceUsd": 11.6,
        "minimumSellingPriceUsd": null,
        "suggestedRetailPriceUsd": null,
        "status": "active",
        "policyNotes": "",
        "catalogueVersion": "onyx-connect-sdk-v1"
      }
    ]
  }
}

Get One Package

GET /v1/partner/catalog/packages/{packageId}

Use this endpoint before checkout when you need to confirm the package still exists and remains available.

{
  "data": {
    "package": {
      "packageId": "onyx-connect-japan-10gb-30d",
      "coverageName": "Japan",
      "coverageType": "country",
      "dataLabel": "10GB",
      "validityDays": 30,
      "status": "active",
      "catalogueVersion": "onyx-connect-sdk-v1"
    }
  }
}

Package Status

Current public package statuses are:

  • active
  • limited

Active packages are available through approved partner experiences. Limited packages require closer copy, support, or launch handling because availability or policy notes need extra care.

Do not sell a package that is missing from the current catalogue response.

Display Rules

Show coverage name, coverage type, included data, validity period, price, package status, and policy notes before purchase.

Do not rename coverage, hide validity, describe fixed-data packages as unlimited, or display non-approved commercial fields.

Errors

unknown_package means the package ID does not exist for your partner account or is not available in the current catalogue.

invalid_request means the package ID or request shape is invalid.