SubscriptionManagementService

GraphViz

Schema

The considered APS type (download) extends the Resource APS type(s) and looks as follows:

{
  "name": "SubscriptionManagementService",
  "id": "http://www.odin.com/oa/billing/bss-subscription-service/1.0",
  "apsVersion": "2.0",
  "implements": [
    "http://aps-standard.org/types/core/resource/1.0"
  ],
  "access": {
    "public": true
  },
  "operations": {
    "getBssSubscriptionsWithTcv": {
      "path": "/bss-subscriptions-tcv",
      "verb": "GET",
      "response": {
        "type": "array",
        "items": {
          "type": "BssSubscriptionWithTcv"
        }
      },
      "errorResponse": {
        "type": "object"
      }
    },
    "getSubscriptionsByVendorSubscriptionId": {
      "path": "/getSubscriptionsByVendorSubscriptionId",
      "verb": "GET",
      "response": {
        "type": "array",
        "items": {
          "type": "BSSSubscription"
        }
      },
      "errorResponse": {
        "type": "object"
      },
      "access": {
        "referrer": false,
        "public": false
      },
      "parameters": {
        "vendorSubscriptionId": {
          "kind": "query",
          "type": "string"
        }
      }
    },
    "bill": {
      "path": "/subscriptions/bill",
      "verb": "POST",
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "request": {
          "kind": "body",
          "type": "BillRequest"
        }
      }
    }
  },
  "structures": {
    "BSSSubscriptionDynamic": {
      "type": "object",
      "properties": {
        "subscriptionId": {
          "type": "integer"
        },
        "account": {
          "type": "PAAccount"
        },
        "vendor": {
          "type": "PAAccount"
        }
      }
    },
    "TcvLevelInfo": {
      "type": "object",
      "properties": {
        "buyer": {
          "type": "CompositeId"
        },
        "seller": {
          "type": "CompositeId"
        },
        "currency": {
          "type": "string"
        },
        "total": {
          "type": "string"
        },
        "discTotal": {
          "type": "string"
        },
        "effectiveTotal": {
          "type": "string"
        }
      }
    },
    "CompositeId": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "required": true
        },
        "internalId": {
          "type": "integer"
        }
      }
    },
    "BssSubscriptionWithTcv": {
      "type": "object",
      "properties": {
        "bssSubscription": {
          "type": "BSSSubscriptionDynamic"
        },
        "tcvs": {
          "type": "array",
          "items": {
            "type": "TcvLevelInfo"
          }
        }
      }
    },
    "BillRequest": {
      "type": "object",
      "properties": {
        "subscriptionUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "comment": {
          "type": "string"
        }
      }
    }
  }
}

Custom Operations

OPERATION

VERB

PATH

RETURNS

Description

getBssSubscriptionsWithTcv

GET

/bss-subscriptions-tcv

Collection of SubscriptionResource

Get list of subscriptions.

getSubscriptionsByVendorSubscriptionId

GET

/getSubscriptionsByVendorSubscriptionId

List of subscriptions

Custom operation for search subscriptions by Vendor Subscription ID

bill

POST

/subscriptions/bill

Void.

Report the whether subscriptions have usage from external system Active subscriptions will be billed on next billing date Cancelled subscriptions will be billed this day

getBssSubscriptionsWithTcv

HTTP Request

GET /aps/2/resources/{aps-id}/bss-subscriptions-tcv

Description

Get list of subscriptions.

Returns

Collection of SubscriptionResource

getSubscriptionsByVendorSubscriptionId

HTTP Request

GET /aps/2/resources/{aps-id}/getSubscriptionsByVendorSubscriptionId

Description

Custom operation for search subscriptions by Vendor Subscription ID

Parameters

PARAMETER

TYPE

DESCRIPTION

vendorSubscriptionId

String

Vendor subscription id

Returns

List of subscriptions

bill

HTTP Request

POST /aps/2/resources/{aps-id}/subscriptions/bill

Description

Report the whether subscriptions have usage from external system Active subscriptions will be billed on next billing date Cancelled subscriptions will be billed this day

Parameters

PARAMETER

TYPE

DESCRIPTION

request

BillRequest

Returns

Void.

Structures

BSSSubscriptionDynamic

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

subscriptionId

Integer

Not Required

The platform internal subscription ID.

account

PAAccount

Not Required

vendor

PAAccount

Not Required

TcvLevelInfo

The total contract values for the subscription for one level of the vendors chain

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

buyer

CompositeId

Not Required

The composite identifier for the buyer account for corresponding level.

seller

CompositeId

Not Required

The composite identifier for the seller account for corresponding level.

currency

String

Not Required

The currency code for the corresponding level.

total

String

Not Required

The total contract value of the subscription item.

discTotal

String

Not Required

The discount for total contract value of the subscription item.

effectiveTotal

String

Not Required

The effective total contract value of the subscription item.

CompositeId

The structure that defines the composite identifier for the object.

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

id

String

Required

The APS UUID of the object.

internalId

Integer

Not Required

The internal Id of the object.

BssSubscriptionWithTcv

The subscription with Total contract values to display in the list.

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

bssSubscription

BSSSubscriptionDynamic

Not Required

BSSSubscription information

tcvs

Array of TcvLevelInfo

Not Required

The total contract values of the subscription for each level of the vendors chain

BillRequest

Bill Request structure.

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

subscriptionUuids

Array of String

Not Required

Get list of subscription UUIDs having usage from external system

comment

String

Not Required

Get description of given usage

Examples

Since the considered APS type contains custom operations, refer to Custom Operations for the general explanation of their structure and examples of operation calls.