Developer Guide

Packages

Get a list of packages

URL

GET https://api.billagain.com/v1/packages

URL PARAMETERS

None - optional paging values can be passed through

OUTPUT PARAMETERS (7 Fields)

Parameter Format Description
packageID Numeric Unique package identifier
packageGroupID Numeric Unique package group identifier
packageCode Alpha Numeric Specific package code
Name Numeric Specific package name
Descrip Numeric Specific package description
isActive Numeric Indicate if package is active
PackageVersions Object List
packageVersionID Numeric Unique package version identifier
packageID Numeric Unique package identifier
VersionNo Numeric Unique version number
VersionName Alpha Numeric current version name
isDefault Boolean Specifies if specific version is default
isActive Boolean Specifies if specific version is active
SubscriptionCount Numeric Indicate amount of subscriptions on Package
packageVersionRates Object List
packageRateID Numeric Unique package rate identifier
packageID Numeric Unique package identifier
CurrencyCode Alpha Numeric Currency code specified for specific package version rate
SetupFee Numeric State setup fee for specifc package version
TrialFee Numeric State trial fee for specifc package version
TrialPeriod Numeric State trial period for specifc package version
TrialPeriodType Alpha Specify period trial type:
  • months
  • days
PackageRateTerms Object List
packageRateTermID Numeric Unique package rate identifier
packageRateID Numeric Unique package rate term identifier
ChargePrice Numeric Specific version rate price
ChargeTerm Numeric Specific package version rate term
ChargeTermType Alpha Specify charge term type:
  • months
  • days

EXAMPLES

JSON Output

HTTP CODE: 200 OK
[
  {
    "packageID": 288,
    "packageGroupID": 96,
    "packageCode": "TRADER-SILVER",
    "Name": "TRADER-SILVER",
    "Descrip": "3000 to 15000 parts",
    "isActive": true,
    "PackageVersions": [
      {
        "packageVersionID": 293,
        "packageID": 288,
        "VersionNo": 1,
        "VersionName": "v1",
        "isDefault": true,
        "isActive": true,
        "SubscriptionCount": 0,
        "packageVersionRates": [
          {
            "packageRateID": 548,
            "packageID": 0,
            "CurrencyCode": "ZAR",
            "SetupFee": 0,
            "TrialFee": 0,
            "TrialPeriod": 0,
            "TrialPeriodType": "days",
            "PackageRateTerms": [
              {
                "packageRateTermID": 786,
                "packageRateID": 548,
                "ChargePrice": 2500,
                "ChargeTerm": 1,
                "ChargeTermType": "months"
              },
              {
                "packageRateTermID": 787,
                "packageRateID": 548,
                "ChargePrice": 4500,
                "ChargeTerm": 12,
                "ChargeTermType": "months"
              }
            ]
          }
        ]
      }
    ]
  },
  {
    "packageID": 289,   
    "packageGroupID": 96,
    "packageCode": "TRADER-GOLD",
    "Name": "TRADER-GOLD",
    "Descrip": "Unlimited parts",
    "isActive": true,
    "PackageVersions": [
      {
        "packageVersionID": 294,
        "packageID": 289,
        "VersionNo": 1,
        "VersionName": "v1",
        "isDefault": true,
        "isActive": true,
        "SubscriptionCount": 0,
        "packageVersionRates": [
          {
            "packageRateID": 549,
            "packageID": 0,
            "CurrencyCode": "ZAR",
            "SetupFee": 0,
            "TrialFee": 0,
            "TrialPeriod": 0,
            "TrialPeriodType": "days",
            "PackageRateTerms": [
              {
                "packageRateTermID": 788,
                "packageRateID": 549,
                "ChargePrice": 5000,
                "ChargeTerm": 1,
                "ChargeTermType": "months"
              },
              {
                "packageRateTermID": 789,
                "packageRateID": 549,
                "ChargePrice": 55000,
                "ChargeTerm": 12,
                "ChargeTermType": "months"
              }
            ]
          }
        ]
      }
    ]
  },
  {
    "packageID": 286,   
    "packageGroupID": 96,
    "packageCode": "TRADER-FREE",
    "Name": "TRADER-FREE",
    "Descrip": "Up to 500 parts",
    "isActive": true,
    "PackageVersions": [
      {
        "packageVersionID": 291,
        "packageID": 286,
        "VersionNo": 1,
        "VersionName": "v1",
        "isDefault": true,
        "isActive": true,
        "SubscriptionCount": 0,
        "packageVersionRates": [
          {
            "packageRateID": 546,
            "packageID": 0,
            "CurrencyCode": "ZAR",
            "SetupFee": 0,
            "TrialFee": 0,
            "TrialPeriod": 0,
            "TrialPeriodType": "days",
            "PackageRateTerms": [
              {
                "packageRateTermID": 782,
                "packageRateID": 546,
                "ChargePrice": 0,
                "ChargeTerm": 1,
                "ChargeTermType": "months"
              },
              {
                "packageRateTermID": 783,
                "packageRateID": 546,
                "ChargePrice": 0,
                "ChargeTerm": 12,
                "ChargeTermType": "months"
              }
            ]
          }
        ]
      }
    ]
  }
]

Get specific package

URL

GET https://api.billagain.com/v1/packages/{packageID}

URL PARAMETERS (1 Field)

Parameter Format Description
packageID req Numeric Unique package identifier

OUTPUT PARAMETERS (7 Fields)

Parameter Format Description
packageID Numeric Unique package identifier
packageGroupID Numeric Unique package group identifier
packageCode Alpha Numeric Specific package code
Name Numeric Specific package name
Descrip Numeric Specific package description
isActive Numeric Indicate if package is active
PackageVersions Object List
packageVersionID Numeric Unique package version identifier
packageID Numeric Unique package identifier
VersionNo Numeric Unique version number
VersionName Alpha Numeric current version name
isDefault Boolean Specifies if specific version is default
isActive Boolean Specifies if specific version is active
SubscriptionCount Numeric Indicate amount of subscriptions on Package
packageVersionRates Object List
packageRateID Numeric Unique package rate identifier
packageID Numeric Unique package identifier
CurrencyCode Alpha Numeric Currency code specified for specific package version rate
SetupFee Numeric State setup fee for specifc package version
TrialFee Numeric State trial fee for specifc package version
TrialPeriod Numeric State trial period for specifc package version
TrialPeriodType Alpha Specify period trial type:
  • months
  • days
PackageRateTerms Object List
packageRateTermID Numeric Unique package rate identifier
packageRateID Numeric Unique package rate term identifier
ChargePrice Numeric Specific version rate price
ChargeTerm Numeric Specific package version rate term
ChargeTermType Alpha Specify charge term type:
  • months
  • days

EXAMPLES

JSON Output

HTTP CODE: 200 OK
{
  "packageID": 290,  
  "packageGroupID": 0,
  "packageCode": "AGENT-FREE",
  "Name": "AGENT-FREE",
  "Descrip": "Up to 3 Linked Traders",
  "isActive": true,
  "PackageVersions": [
    {
      "packageVersionID": 295,
      "packageID": 0,
      "VersionNo": 1,
      "VersionName": "v1",
      "isDefault": true,
      "isActive": false,      
      "SubscriptionCount": 0,
      "packageVersionRates": [
        {
          "packageRateID": 550,
          "packageID": 0,
          "CurrencyCode": "ZAR",
          "SetupFee": 0,
          "TrialFee": 0,
          "TrialPeriod": 0,
          "TrialPeriodType": "days",
          "PackageRateTerms": [
            {
              "packageRateTermID": 550,
              "packageRateID": 550,
              "ChargePrice": 0,
              "ChargeTerm": 1,
              "ChargeTermType": "months"
            },
            {
              "packageRateTermID": 550,
              "packageRateID": 550,
              "ChargePrice": 0,
              "ChargeTerm": 12,
              "ChargeTermType": "months"
            },
            {
              "packageRateTermID": 550,
              "packageRateID": 550,
              "ChargePrice": 0,
              "ChargeTerm": 1,
              "ChargeTermType": "days"
            }
          ]
        }
      ]
    }
  ]
}

Add packages

URL

POST https://api.billagain.com/v1/packages

INPUT PARAMETERS (6 Fields)

Parameter Format Description
packageGroupID req Numeric Unique package group identifier
packageCode req Alpha Numeric Specific package code
Name req Numeric Specific package name
Descrip req Numeric Specific package description
isActive req Boolean Indicate if package is active
PackageVersion Object
VersionName req Alpha Numeric Current version name
isActive req Boolean Indicate if package version is active
isDefault req Boolean Indicate if package version is default
packageVersionRates Object List
CurrencyCode req Alpha Numeric Currency code specified for specific package version rate
SetupFee req Numeric State setup fee for specifc package version
TrialFee req Numeric State trial fee for specifc package version
TrialPeriod req Numeric State trial period for specifc package version
TrialPeriodType req Alpha Specify period trial type:
  • months
  • days
PackageRateTerms Object List
ChargePrice req Numeric Specific version rate price
ChargeTerm req Numeric Specific package version rate term
ChargeTermType req Alpha Specify charge term type:
  • months
  • days

OUTPUT PARAMETERS (7 Fields)

Parameter Format Description
packageID Numeric Unique package identifier
packageGroupID Numeric Unique package group identifier
packageCode Alpha Numeric Specific package code
Name Numeric Specific package name
Descrip Numeric Specific package description
isActive Numeric Indicate if package is active
PackageVersions Object List
packageVersionID Numeric Unique package version identifier
packageID Numeric Unique package identifier
VersionNo Numeric Unique version number
VersionName Alpha Numeric current version name
isDefault Boolean Specifies if specific version is default
isActive Boolean Specifies if specific version is active
SubscriptionCount Numeric Indicate amount of subscriptions on Package
packageVersionRates Object List
packageRateID Numeric Unique package rate identifier
packageID Numeric Unique package identifier
CurrencyCode Alpha Numeric Currency code specified for specific package version rate
SetupFee Numeric State setup fee for specifc package version
TrialFee Numeric State trial fee for specifc package version
TrialPeriod Numeric State trial period for specifc package version
TrialPeriodType Alpha Specify period trial type:
  • months
  • days
PackageRateTerms Object List
packageRateTermID Numeric Unique package rate identifier
packageRateID Numeric Unique package rate term identifier
ChargePrice Numeric Specific version rate price
ChargeTerm Numeric Specific package version rate term
ChargeTermType Alpha Specify charge term type:
  • months
  • days

EXAMPLES

JSON Input

{  
  "packageGroupID": 95,
  "packageCode": "RUDI-API",
  "Name": "RUDI-API",
  "Descrip": "Rudi Api Test", 
  "isActive": true, 
  "PackageVersion": 
    {

      "VersionName": "v1",
      "isActive": true, 
      "isDefault": true,      
      "packageVersionRates": [
        {          
          "CurrencyCode": "ZAR",
          "SetupFee": 0,
          "TrialFee": 0,
          "TrialPeriod": 0,
          "TrialPeriodType": "days",
          "PackageRateTerms": [
            {              
              "ChargePrice": 250,
              "ChargeTerm": 1,
              "ChargeTermType": "months"
            },
            {              
              "ChargePrice": 200,
              "ChargeTerm": 12,
              "ChargeTermType": "months"
            }
          ]
        }
      ]
    }
}

JSON Output

HTTP CODE: 201 Created
{
  "packageID": 296,
  "packageGroupID": 95,
  "packageCode": "RUDI-API",
  "Name": "RUDI-API",
  "Descrip": "Rudi Api Test",
  "isActive": true,
  "PackageVersions": [
    {
      "packageVersionID": 304,
      "packageID": 296,
      "VersionNo": 1,
      "VersionName": "v1",
      "isDefault": true,
      "isActive": true,
      "SubscriptionCount": 0,
      "packageVersionRates": [
        {
          "packageRateID": 560,
          "packageID": 296,
          "CurrencyCode": "ZAR",
          "SetupFee": 0,
          "TrialFee": 0,
          "TrialPeriod": 0,
          "TrialPeriodType": "days",          
          "SubscriptionCount": 0,
          "PackageRateTerms": [
            {
              "packageRateTermID": 560,
              "packageRateID": 560,
              "ChargePrice": 250,
              "ChargeTerm": 1,
              "ChargeTermType": "months"
            },
            {
              "packageRateTermID": 560,
              "packageRateID": 560,
              "ChargePrice": 200,
              "ChargeTerm": 12,
              "ChargeTermType": "months"
            }
          ]
        }
      ]
    }
  ]
}

Get a list of packages

URL

PUT https://api.billagain.com/v1/packages/{packageID}

URL PARAMETERS (1 Field)

Parameter Format Description
packageID req Numeric Unique package identifier

INPUT PARAMETERS (5 Fields)

Parameter Format Description
packageGroupID req Numeric Unique package group reference
Descrip req Alpha Numeric Current package code description
Name req Alpha Numeric Current package name
packageCode req Alpha Numeric Current package code
isActive req boolean Indicate if package is active

EXAMPLES

JSON Input

{  
  "packageGroupID": 95,
  "packageCode": "RUDI-API",
  "Name": "RUDI-API",
  "Descrip": "Rudi Api Test",
  "isActive": true
}

JSON Output

HTTP CODE: 200 OK

Delete specific package

URL

DELETE https://api.billagain.com/v1/packages

URL PARAMETERS (1 Field)

Parameter Format Description
packageID req Numeric Unique package identifier

EXAMPLES

JSON Output

HTTP CODE: 204 No Content