User Tools

Site Tools


api:product:list

API : Product List

Introduction

This request will return the list of products.

The platform works with 3 levels of products:

  • Master products - These are ADMIN defined base products that defines all the details of a product. A master product cannot be assigned to a customer but must be inherited by a reseller product. A master product can be inherited multiple times.
  • Reseller products - A product that is inherited from a master product and on which the reseller can control the name, product code, price and if the product may only be applied by the reseller or also the customer.
  • Customer products - A product that is inherited from a reseller product and on which the reseller can control the price. The customer product allows resellers to customize prices for individual customers.

Depending on access level, the user will have access to different product sets:

  • MANAGER & OWNER - will always see the products of their parent reseller that can be used, but not those that can only be applied by the reseller
  • RESELLER - will by default see her own products that can be used, but can use the master flag to instead see master product that she can use to create new products from
  • ADMIN - Can see all, but default to own products similar to the reseller

Product types

Products have a common set of properties, and in addition some have their own specific properties according to the type of product:

Type Usage
SIP_RATEPLAN Rate/subscription/priceplan for SIP accounts
MVNO_RATEPLAN Rate/subscription/priceplan for MVNO accounts
DSL Price and speed settings for xDSL connections
FIBER Default price for Fiber connections
NUMBER_RENT Number fee pr. number on the platform
DNS Domain DNS hosting fee
PBX_EXTENSION For PBX extensions
PBX_SIP_PHONE For SIP phones
PBX_USER Can be applied to Employees. This product can include other type of products (types PBX_SIP_PHONE, PBX_EXTENSION, and MVNO_RATEPLAN)
MVNO_DATA_TOP_UP Can be used to top-up the data of a mobile, for the rest of the month.
EXTERNAL_LICENSE Used to register prices etc. for third-party licenses. They are used by external licenses (see this endpoint: API : External Licenses List)
MVNO_ROW_ROAMING Rest-of-World roaming package for an MVNO account
OTHER Generic all purpose

Request

URL https://api.telecomx.dk/product
Method GET
Access level VIEWER, MANAGER, OWNER, RESELLER, ADMIN.
Query type [optional] Type of products to return: SIP_RATEPLAN, MVNO_RATEPLAN, DSL, FIBER ,NUMBER_RENT, DNS, PBX_EXTENSION, PBX_SIP_PHONE, PBX_USER, EXTERNAL_LICENSE or OTHER. Omit or ALL to return all products.
all [optional] True to also include products that cannot be used yet or anymore (before start or past end date).
filter [optional] Text to limit response to products where product code or name is matched.
reseller [optional] Id of the reseller to show products for (ADMIN only).
customer [optional] Id of customer whose reseller to show products for (get products for use on customer).
customerProducts [optional] True to show customer products.
master [optional] True to show master products instead of reseller products (RESELLER & ADMIN only).
adminMode [optional] True to show all master products (ADMIN only).
offset [optional] Index of the first product to return, default 0.
limit [optional] The number of products to return, default 100, min 1, max 500.
full [optional] If true, complete product objects will be returned instead of the condensed versions.
problematic [optional] If true, will return all SIP and MVNO products that have lower sales prices to destinations than cost prices (ADMIN only)

Query examples

https://api.telecomx.dk/product
https://api.telecomx.dk/product?type=SIP_RATEPLAN
https://api.telecomx.dk/product?type=SIP_RATEPLAN&filter=Premium
https://api.telecomx.dk/product?type=DSL&filter=100M&all=true&offset=10&limit=25&full=true

Response

JSON object
offset Index of the first product returned.
limit Number of products to return. Note that the actual number of products returned may be lower.
total Number of products that can be returned when offset and limit is not considered. This is to be used for paging through the data.
products Array of products, see definition below.
Product object (JSON)
_id Id Unique product id.
type String Type of product: SIP_RATEPLAN, MVNO_RATEPLAN, DSL, FIBER, NUMBER_RENT, OTHER.
productCode String Product code, short name for accounting integration and for selecting when invoicing.
name String Product name
wholesale Number The resellers price (pr. month if recurring), only shown if user is RESELLER or ADMIN.
price Number The customer price (pr. month if recurring).
start Date The date from which the product can be used, null for no limit.
end Date The date from which the product can not be used anymore, null for no limit.
recurrence String If product is recurring, this is the interval: MONTHLY, QUARTERLY, YEARLY.
standard Boolean If true, then whenever a customer is under the product's reseller, then there will automatically be created a customer product inheriting from this reseller product. Only used by reseller products.
Product object if full=true (JSON)
_id Id Unique product id.
start Date The date from which the product can be used, null for no limit.
end Date The date from which the product can not be used anymore, null for no limit.
type String Type of product: SIP_RATEPLAN, MVNO_RATEPLAN, DSL, FIBER, NUMBER_RENT, OTHER.
productCode String Product code, short name for accounting integration and for selecting when invoicing.
name String Product name.
unitType String The type of units this product is measured in: MIN, MB, UNITS, HOURS, KM, MONTHS.
recurrence String If product is recurring, this is the interval: MONTHLY, QUARTERLY, YEARLY.
For no recurrence: NONE.
For types SIP_RATEPLAN, MVNO_RATEPLAN, DSL and FIBER recurrence cannot be NONE.
recurrenceFullMonth Boolean If true the product must be invoiced for whole months, if false the product will only be invoiced for the fraction of the month that it has been active.
cost Number The cost of the product, pr. month if recurring (ADMIN only).
wholesale Number The reseller price, pr. month if recurring (RESELLER/ADMIN only).
price Number The customer price, pr. month if recurring.
reseller Id Id of the reseller the product belongs to and whose customers it can be applied to. Null if master product.
inheritFrom Id Id of the master product this product inherited from, null if product is a master product (RESELLER/ADMIN only).
inheritFromReseller Id Id of reseller product that this product inherits from, null if master/reseller product.
inheritBy Array Id's of resellers who may inherit from this product, null if product may be inherited by any reseller (master products only).
applyByResellerOnly Boolean True if this product may only be used by a reseller (RESELLER/ADMIN only, customer cannot see these types of products).
standard Boolean If true, then whenever a customer is under the product's reseller, then there will automatically be created a customer product inheriting from this reseller product. Only used by reseller products.
SIP_RATEPLAN properties
invoiceFromFirstNumber Boolean If true, then this account will only be invoiced when its first number is added to the account, and not before.
subscription.minutes.homeland Integer Number of minutes included towards national destinations (not special).
subscription.minutes.euNordic Integer Number of minutes included towards Nordic and European destinations (not special).
subscription.minutes.restOfEurope Integer Number of minutes included towards rest of Europe (not special).
subscription.minutes.world1 Integer Number of minutes included towards countries in region world 1 (not special).
subscription.minutes.world2 Integer Number of minutes included towards countries in region world 2 (not special).
subscription.minutes.world3 Integer Number of minutes included towards countries in region world 3 (not special).
subscription.free.ownSip Boolean True if calls towards the customers own SIP numbers are free.
subscription.free.ownMvno Boolean True if calls towards the customers own mobile numbers are free.
subscription.free.onNetSip Boolean True if calls towards Telecom X SIP numbers are free.
subscription.free.onNetMvno Boolean True if calls towards Telecom X mobile numbers are free.
ratePercentDiscount Number Percent discount on all call minutes - use with care, null if not used.
override.connectionFee Number Connection fee for all calls, will override the destinations connection fee. Null if not used.
override.connectionFeeOnCallAttempt Boolean True if connection fee should also be changed on unanswered calls.
destinations.<country-code> Object overrides the prices for calling destinations in a given country, e.g. 'SE'.
destinations.<country-code>.fixed Object prices for fixed destinations
destinations.<country-code>.fixed.wholesaleFee Number Connection fee for reseller, null if not used
destinations.<country-code>.fixed.customerFee Number Connection fee for customer, null if not used
destinations.<country-code>.fixed.wholesaleRate Number Pr. minute rate for reseller, null if not used
destinations.<country-code>.fixed.customerRate Number Pr. minute rate for customer, null if not used
destinations.<country-code>.mobile Object prices for mobile destinations
destinations.<country-code>.mobile.wholesaleFee Number Connection fee for reseller, null if not used
destinations.<country-code>.mobile.customerFee Number Connection fee for customer, null if not used
destinations.<country-code>.mobile.wholesaleRate Number Pr. minute rate for reseller, null if not used
destinations.<country-code>.mobile.customerRate Number Pr. minute rate for customer, null if not used
numberRent.wholesaleFirst Number Monthly rent for the first number on the SIP trunk - for reseller
numberRent.wholesaleExtra Number Monthly rent for each additional number on the SIP trunk - for reseller
numberRent.wholesale100 Number Monthly rent for a 100-numbers series (consecutive numbers) on the SIP trunk - for reseller
numberRent.customerFirst Number Monthly rent for the first number on the SIP trunk
numberRent.customerExtra Number Monthly rent for each additional number on the SIP trunk
numberRent.customer100 Number Monthly rent for a 100-numbers series (consecutive numbers) on the SIP trunk
MVNO_RATEPLAN properties
pbxProduct Boolean If true, then this product can only be used by mobiles which are on a PBX.
network String Which mobile network is this product valid for: TELENOR, TDC, BOTH, default BOTH.
dataSharingSimsIncluded Number Amount of data sharing SIMS included - defaults to 0, maximum value is 3.
smartWatchIncluded Boolean If true, smartwatch eSIM subscription included in this product
subscription.minutes.homeland Integer Number of minutes included towards national destinations (not special).
subscription.minutes.euNordic Integer Number of minutes included towards Nordic and European destinations (not special).
subscription.minutes.restOfEurope Integer Number of minutes included towards rest of Europe (not special).
subscription.minutes.world1 Integer Number of minutes included towards countries in region world 1 (not special).
subscription.minutes.world2 Integer Number of minutes included towards countries in region world 2 (not special).
subscription.minutes.world3 Integer Number of minutes included towards countries in region world 3 (not special).
subscription.free.ownSip Boolean True if calls towards the customers own SIP numbers are free.
subscription.free.ownMvno Boolean True if calls towards the customers own mobile numbers are free.
subscription.free.onNetSip Boolean True if calls towards Telecom X SIP numbers are free.
subscription.free.onNetMvno Boolean True if calls towards Telecom X mobile numbers are free.
subscription.free.smsMms Boolean True if national SMS and MMS is free.
subscription.roaming Array List of roaming regions, with the number of included minutes when roaming in the specific region
subscription.roaming[]._id ObjectId ID of the roaming region
subscription.roaming[].minutes Number Included minutes. Defaults to 0.
subscription.data Number Megabytes of data included.
subscription.dataEu Number Megabytes of data included while roaming in the EU region.
ratePercentDiscount Number Percent discount on all call minutes - use with care, null if not used.
override.connectionFee Number Connection fee for all calls, will override the destinations connection fee. Null if not used.
override.connectionFeeOnCallAttempt Boolean True if connection fee should also be changed on unanswered calls.
sms.nationalCost Number Cost pr. national SMS message (ADMIN only).
sms.nationalWholesale Number Reseller cost pr. national SMS message (RESELLER/ADMIN only).
sms.nationalPrice Number Customer price pr. national SMS message.
sms.internationalCost Number Cost pr. international SMS message (ADMIN only).
sms.internationalWholesale Number Reseller cost pr. international SMS message (RESELLER/ADMIN only).
sms.internationalPrice Number Customer price pr. international SMS message.
mms.nationalCost Number Cost pr. national MMS message (ADMIN only).
mms.nationalWholesale Number Reseller cost pr. national MMS message (RESELLER/ADMIN only).
mms.nationalPrice Number Customer price pr. national MMS message.
mms.internationalCost Number Cost pr. international MMS message (ADMIN only).
mms.internationalWholesale Number Reseller cost pr. international MMS message (RESELLER/ADMIN only).
mms.internationalPrice Number Customer price pr. international MMS message.
data.nationalCost Number Cost pr. megabyte of data (ADMIN only).
data.nationalWholesale Number Reseller cost pr. megabyte of data (RESELLER/ADMIN only).
data.nationalPrice Number Customer price pr. megabyte of data.
socFeatures Object Features enabled by the rateplan's SOCs
socFeatures.tdc Object Features when rate plan is used on TDC network. This property will be omitted, if the rate plan is not valid for TDC mobiles.
socFeatures.tdc.broadband Boolean The rate plan is a broadband rate plan. Phones provisioned with a broadband rate plan can not afterwards be provisioned with a non-broadband rateplan, and vice versa
socFeatures.tdc.highRate Boolean Permit calls towards high rated numbers (homeland only).
socFeatures.tdc.international Boolean Permit calls towards international destinations.
socFeatures.tdc.data Boolean Enable data for homeland.
socFeatures.tdc.fiveG Boolean Enable 5G.
socFeatures.tdc.publicIP Boolean Data connections gets a public IP address instead of a private NAT'ed IP.
socFeatures.tdc.chargedServices Boolean Permit overcharged SMS and purchase of physical goods.
socFeatures.tdc.voicemail Boolean Enable voicemail on stand-alone phones.
socFeatures.tdc.secretNumber Boolean Secret a-number (do not present number).
socFeatures.tdc.roaming Boolean Permit roaming (outside homeland).
socFeatures.tdc.roamingData Boolean Enable data while roaming, if roaming is permitted.
socFeatures.tdc.restOfWorldRoamingSoc String Which roaming SOC is included in this rate plan subscription.
socFeatures.tdc.restOfWorldRoamingSocType Enum The type of the included roaming SOC. Allowed values are 'AUTOSTART', 'PURCHASE'.
socFeatures.telenor Object Features when rate plan is used on Telenor network. This property will be omitted, if the rate plan is not valid for Telenor mobiles.
socFeatures.telenor.broadband Boolean Not currently in use on Telenor.
socFeatures.telenor.highRate Boolean Permit calls towards high rated numbers (homeland only).
socFeatures.telenor.international Boolean Permit calls towards international destinations.
socFeatures.telenor.data Boolean Enable data for homeland.
socFeatures.telenor.fiveG Boolean Enable 5G.
socFeatures.telenor.publicIP Boolean Data connections gets a public IP address instead of a private NAT'ed IP.
socFeatures.telenor.chargedServices Boolean Permit overcharged SMS and purchase of physical goods.
socFeatures.telenor.voicemail Boolean Enable voicemail on stand-alone phones.
socFeatures.telenor.secretNumber Boolean Secret a-number (do not present number).
socFeatures.telenor.roaming Boolean Permit roaming (outside homeland).
socFeatures.telenor.roamingData Boolean Enable data while roaming, if roaming is permitted.
socs Array Array of strings with SOCs that must be applied for this product. Reseller Admin and above only.
destinations.<country-code> Object overrides the prices for calling destinations in a given country, e.g. 'SE'.
destinations.<country-code>.fixed Object prices for fixed destinations
destinations.<country-code>.fixed.wholesaleFee Number Connection fee for reseller, null if not used
destinations.<country-code>.fixed.customerFee Number Connection fee for customer, null if not used
destinations.<country-code>.fixed.wholesaleRate Number Pr. minute rate for reseller, null if not used
destinations.<country-code>.fixed.customerRate Number Pr. minute rate for customer, null if not used
destinations.<country-code>.mobile Object prices for mobile destinations
destinations.<country-code>.mobile.wholesaleFee Number Connection fee for reseller, null if not used
destinations.<country-code>.mobile.customerFee Number Connection fee for customer, null if not used
destinations.<country-code>.mobile.wholesaleRate Number Pr. minute rate for reseller, null if not used
destinations.<country-code>.mobile.customerRate Number Pr. minute rate for customer, null if not used
DSL properties
dslSpeed String DSL speed product name.
NUMBER_RENT properties
costExtra Double Number rent cost pr. month pr. additional number. (cost above holds the first-number cost).
cost100 Double Number rent cost pr. month pr. 100-series.
wholesaleExtra Double Wholesale number rent pr. month pr. additional number. (wholesale above holds the first-number wholesale price).
wholesale100 Double Wholesale number rent pr. month pr. 100-series.
priceExtra Double Customer number rent pr. month pr. additional number. (price above holds the first-number price).
price100 Double Customer number rent pr. month pr. 100-series.
PBX_USER properties
includedProducts Array Array of products that are included in this PBX user product. Only products of type MVNO_RATEPLAN, PBX_EXTENSION, or PBX_SIP_PHONE are allowed, and only one type of each kind is allowed, meaning that you can ie. only have multiple MVNO_RATEPLANs if they are they the same kind.
includedProducts[]._id ObjectID Id of product that is included
includedProducts[].amount Number Amount of products of this kind that are included.
communicatorAccess Boolean Whether the user with this product has access to Communicator. Defaults to true
MVNO_DATA_TOP_UP properties
mvnoTopUp Object Contains top-up properties
mvnoTopUp.data Number Data of the top-up package. Given in bytes
MVNO_ROW_ROAMING properties
soc String The SOC this product relates to.
EXTERNAL_LICENSE properties
externalLicense Object Information about the license from the third party system.
externalLicense.also.bindingPeriod String The binding period in ALSO. Allowed values are MONTHLY and YEARLY.
externalLicense.also.provisioningId String The provisioning ID of the ALSO license, which is used to match with a product in ALSO.

Example

Note that properties holding no value may be omitted from the object.

Response examples

Normal condensed

{
  offset: 100,
  limit: 50,
  total: 999,
  products:
  [
    {
      _id: '123457890ABCDEF12345678',
      type: 'SIP_RATEPLAN',
      productCode: 'SR0123A',
      name: 'SIP account, flatrate DK',
      wholesale: 180.00,
      price: 250.00
    },
    {
      ...
    }
  ]
}

Full, type SIP_RATEPLAN

{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'SIP_RATEPLAN',
      productCode: 'SR0123A',
      name: 'SIP account, flatrate DK',
      unitType: 'MONTHS',
      recurrence: 'MONTHLY'
      recurrenceFullMonth: true,
      cost: 150.00,
      wholesale: 180.00,
      price: 250.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false,
      subscription: {
        minutes: {
          homeland: 1800,
          euNordic: 0,
          restOfEurope: 0,
          world1: 0,
          world2: 0,
          world3: 0
        },
        free: {
          ownSip: true,
          ownMvno: false,
          onNetSip: false,
          onNetMvno: false
        }
      },
      ratePercentDiscount: null,
      override: {
        connectionFee: 0.00,
        override.connectionFeeOnCallAttempt: true
      },
      destinations: {
        DK: {
          fixed: {
            wholesaleFee: 0.10,
            customerFee: 0.20,
            wholesaleRate: 0.07,
            customerRate: 0.10
          },
          mobile: {
            customerRate: 0.79
          }
        }
      },
      numberRent: {
        wholesaleFirst: 25.00,
        wholesaleExtra: 5.00,
        wholesale100: 300.00,
        customerFirst: 25.00,
        customerExtra: 5.00,
        customer100: 300.00
      }
    },
    {
      ...
    }
  ]
}

Full, type MVNO_RATEPLAN

{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'MVNO_RATEPLAN',
      productCode: 'MRFREE25G',
      name: 'Free voice, SMS, MMS, 25GB data & 5 hours EU',
      unitType: 'MONTHS',
      recurrence: 'MONTHLY'
      recurrenceFullMonth: true,
      cost: 150.00,
      wholesale: 180.00,
      price: 250.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false,
      pbxProduct: false,
      dataSharingSimsIncluded: 0,
      smartWatchIncluded: false,
      socFeatures: {
        tdc: {
          broadband: false,
          international: true,
          data: true,
          fiveG: true,
          publicIP: true,
          chargedServices: false,
          secretNumber: true,
          roaming: true,
          roamingData: true,
          satellite: false,
          restOfWorldRoamingSoc: '1234BDF',
          restOfWorldRoamingSocType: 'AUTOSTART',
        },
        telenor: {
          broadband: false,
          international: true,
          data: true,
          fiveG: true,
          publicIP: true,
          chargedServices: false,
          secretNumber: true,
          roaming: true,
          roamingData: true,
          satellite: false
        }
      },
      network: 'TELENOR',
      subscription: {
        minutes: {
          homeland: 44640,
          euNordic: 0,
          restOfEurope: 0,
          world1: 0,
          world2: 0,
          world3: 0
        },
        free: {
          ownSip: true,
          ownMvno: true,
          onNetSip: false,
          onNetMvno: false,
          smsMms: true
        },
        roaming: [
         {
          _id: '1234567890ABCD1234567890',
          minutes: 3000
         },
         ...
        ],
        data: 25600,
        dataEu: 8192
      },
      sms: {
        nationalCost: 0.10,
        nationalWholesale: 0.15,
        nationalPrice: 0.20,
        internationalCost: 0.50,
        internationalWholesale: 1.00,
        internationalPrice: 1.50
      },
      mms: {
        nationalCost: 0.50,
        nationalWholesale: 0.75,
        nationalPrice: 1.00,
        internationalCost: 2.50,
        internationalWholesale: 4.00,
        internationalPrice: 5.00
      },
      data: {
        nationalCost: 0.50,
        nationalWholesale: 1.00,
        nationalPrice: 1.50
      },
      destinations: {
        DK: {
          fixed: {
            wholesaleFee: 0.10,
            customerFee: 0.20,
            wholesaleRate: 0.07,
            customerRate: 0.10
          },
          mobile: {
            customerRate: 0.79
          }
        }
      }
    },
    {
      ...
    }
  ]
}

Full, type DSL

{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'DSL',
      productCode: 'DSL5/5F',
      name: 'ADSL 5/5Mbit flex',
      unitType: 'MONTHS',
      recurrence: 'MONTHLY'
      recurrenceFullMonth: true,
      cost: 150.00,
      wholesale: 180.00,
      price: 250.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false,
      dslSpeed: '5120/5120FL'
    },
    {
      ...
    }
  ]
}

Full, type FIBER

{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'FIBER',
      productCode: 'F2432',
      name: 'Redundant cityring fiber',
      unitType: 'MONTHS',
      recurrence: 'MONTHLY'
      recurrenceFullMonth: true,
      cost: 1500.00,
      wholesale: 1800.00,
      price: 2500.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false
    },
    {
      ...
    }
  ]
}

Full, type NUMBER_RENT

{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'NUMBER_RENT',
      productCode: 'NUM01',
      name: 'Number rent',
      unitType: 'MONTH',
      recurrence: 'QUARTERLY'
      cost: 0.00,
      costExtra: 0.00,
      cost100: 0.00,
      wholesale: 20.00,
      wholesaleExtra: 2.50,
      wholesale100: 350.00,
      price: 25.00,
      priceExtra: 5.00,
      price100: 500.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false
    },
    {
      ...
    }
  ]
}

Full, type PBX_USER

{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'PBX_USER',
      productCode: '18233',
      name: 'User license',
      unitType: 'UNITS',
      recurrence: 'NONE'
      cost: 100.00,
      wholesale: 120.00,
      price: 150.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false,
      includedProducts: [],
      communicatorAccess: true
    },
    {
      ...
    }
  ]
}
 
==== Full, type MVNO_DATA_TOP_UP ====
<code javascript>
{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'MVNO_DATA_TOP_UP',
      productCode: 'DATA_5GB',
      name: '5Gb Data Top-up',
      unitType: 'UNITS',
      recurrence: 'NONE'
      cost: 65.00,
      wholesale: 85.00,
      price: 120.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false,
      mvnoTopUp: {
        data: 504800
      }
    },
    {
      ...
    }
  ]
}
 
===== Full, type MVNO_ROW_ROAMING =====
 
<code javascript>
{
  _id: ObjectID('1234567890ABCDEF102345678'),
  start: ISODate('2014-01-01T12:34:56.123Z'),
  end: null,
  type: 'MVNO_DATA_TOP_UP',
  productCode: 'MVNO_DATA_TOP_UP_5GB',
  name: 'Data top-up pakke: 5 Gb',
  unitType: 'UNITS',
  recurrence: 'NONE',
  recurrenceFullMonth: false,
  cost: 0.00,
  wholesale: 20.00,
  price: 25.00,
  reseller: '4234567890ABCDEF102345678',
  inheritFrom: '6534567890ABCDEF102345672',
  inheritFromReseller: '1364567890ABCDEF102345672',
  applyByResellerOnly: false,
  soc: 'ABCDE18GJH'
}

Full, type OTHER

{
  offset: 0,
  limit: 100,
  total: 10000,
  products:
  [
    {
      _id: '1234567890ABCDEF12345678',
      start: '2014-01-01T00:00:00.000Z',
      end: null,
      type: 'OTHER',
      productCode: 'NUMSER',
      name: 'Number series, 10 premium numbers',
      unitType: 'UNITS',
      recurrence: 'NONE'
      cost: 1000.00,
      wholesale: 1200.00,
      price: 1400.00,
      reseller: '1234567890ABCDEF12345678',
      inheritFrom: '1234567890ABCDEF1234578',
      inheritBy: null,
      applyByResellerOnly: false
    },
    {
      ...
    }
  ]
}

Errors

Error code Message Description
422 type Type is invalid
403 access_denied Insufficient access level
500 internal_error <Unspecified>
api/product/list.txt · Last modified: 2025/06/12 13:30 by Joakim Andersen

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki