TAG LINE
SMALL TITLE

Usage / Rate / Group

(API Version v2)


Defines a container that groups multiple rates together so that they can be reused in multiple plans.


What can you do with UsageRateGroup?


Properties

Property Details
identity
READ-ONLY
"identity": 23
Type: Number
This is the unique numeric identifier for the UsageRateGroup
ownerId
READ-ONLY
"ownerId": 12
Type: Number
Unique identifier for the associated Owner object.
ownerName
READ-ONLY
"ownerName": "Sample Name"
Type: String
The name of the object associated with the ownerId property.
name
"name": "All Zone 2 Data Rates"
Type: String
The user defined name for the Rate Group
start
"start": "2021-04-26T15:25:27.587Z"
Type: Date
The start date in which this group of rates come into effect.

Date and time values are specified in the ISO 8601 format.
end
READ-ONLY
"end": "2021-04-26T15:25:27.587Z"
Type: Date
System stamped time for when this group was retired.

Date and time values are specified in the ISO 8601 format.
useForCost
"useForCost": true
Type: Boolean
Whether or not this Rate Group is used for cost calculation
timePeriodId
"timePeriodId": 25
Type: Number
Unique identifier for the associated TimePeriod object.
timePeriodName
"timePeriodName": "Sample Name"
Type: String
The name of the object associated with the timePeriodId property.
displayName
"displayName": "Gold Rates"
Type: String
The user defined "friendly" name for this Rate Group to display on reports etc.
currencyId
"currencyId": 8
Type: Number
Unique identifier for the associated Currency object.
currencyName
"currencyName": "Sample Name"
Type: String
The name of the object associated with the currencyId property.
isAggregated
"isAggregated": true
Type: Boolean
Whether or not this Rate Group will have all the rates in the group aggregate together.
isPassThrough
"isPassThrough": true
Type: Boolean
Whether or not this Rate Group is supposed to pass through the values already provided in the usage feed.
amountPrecision
"amountPrecision": 22
Type: Number
The number of decimal places to round. Maximum of 11.
roundingMethodTypeId
"roundingMethodTypeId": 24
Type: Number
Unique identifier for the associated RoundingMethodType object.
roundingMethodTypeName
"roundingMethodTypeName": "Sample Name"
Type: String
The name of the object associated with the roundingMethodTypeId property.


Update Request Filters

Update Request Filters are no longer required starting with v4 of the LogiSense Billing API.

When updating an object you use the update request header with the list of properties to update. Then you need only supply the new values in the body of your request. Please note, this header can only be used with PUT or PATCH requests.

Field List:

  • name
  • start
  • end
  • useForCost
  • timePeriodId
  • displayName
  • currencyId
  • isAggregated
  • isPassThrough
  • amountPrecision
  • roundingMethodTypeId
  • currencyCode

Patch Types

The PATCH verb allows you to update an object. Just like a put, you only need to supply the fields that will be updated in the payload. However, a patch allows you to update many objects at once.

PATCH operations can be used as a standard API call or nested within the envelope of a DataFlow. Below you will find the child objects that can be updated as part of PATCH operations for the UsageRateGroup object.

Standard PATCH objects:

DataFlow PATCH objects:


End Points

DELETEapi/v2/Usage/Rate/Group/{id}
Delete an instance of the UsageRateGroup object. Upon successful delete, this API will return a record of all of the reelated objects deleted with this operation. The specifics on which objects have been deleted will depend on which related objects have been populated in the system.
{id}Unique identifier for the UsageRateGroup object.
Delete an instance of the UsageRateGroup object.
DELETE api/v2/Usage/Rate/Group/{id}
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "type": "delete",
    "results": {
        "totalCount": 4,
        "items": [
            {
                "identity": 1,
                "action": "deleted",
                "dtoTypeKey": "usageRateGroup"
            },
            {
                "lhsId": 2,
                "rhsId": 2,
                "action": "detached",
                "dtoTypeKey": "sampleObjectConnector"
            },
            {
                "foreignKeyIdentity": 2,
                "action": "deleted",
                "dtoTypeKey": "sampleObject"
            }
        ]
    }
}
GETapi/v2/Usage/Rate/Group/
Retrieve all of the UsageRateGroup objects.
Retrieve all of the UsageRateGroup objects.
GET api/v2/Usage/Rate/Group/
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "totalCount": 1,
    "items": [
        {
            "identity": 1,
            "ownerId": 4,
            "ownerName": "Sample Text Data",
            "name": "All Zone 2 Data Rates",
            "start": "2021-04-26T15:25:27.587Z",
            "end": "2021-04-26T15:25:27.587Z",
            "useForCost": true,
            "timePeriodId": 8,
            "timePeriodName": "Sample Text Data",
            "displayName": "Gold Rates",
            "currencyId": 10,
            "currencyName": "Sample Text Data",
            "isAggregated": true,
            "isPassThrough": true,
            "amountPrecision": 5,
            "roundingMethodTypeId": 13,
            "roundingMethodTypeName": "Sample Text Data"
        }
    ]
}
GETapi/v2/Usage/Rate/Group/Paged
Retrieve all of the UsageRateGroup objects in a paged fashion. This endpoint implements pagination for its results. Individual pages can be requested to return a particular paged set in the list of results. To learn more, see details on working with paginated endpoints.
Retrieve all of the UsageRateGroup objects in a paged fashion.
GET api/v2/Usage/Rate/Group/Paged
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "pagination": {
        "pageNumber": 1,
        "pageSize": 20,
        "excludeTotalCount": false
    },
    "pagedResults": {
        "totalCount": 1,
        "items": [
            {
                "identity": 1,
                "ownerId": 8,
                "ownerName": "Sample Text Data",
                "name": "All Zone 2 Data Rates",
                "start": "2021-04-26T15:25:27.587Z",
                "end": "2021-04-26T15:25:27.587Z",
                "useForCost": true,
                "timePeriodId": 3,
                "timePeriodName": "Sample Text Data",
                "displayName": "Gold Rates",
                "currencyId": 23,
                "currencyName": "Sample Text Data",
                "isAggregated": true,
                "isPassThrough": true,
                "amountPrecision": 6,
                "roundingMethodTypeId": 23,
                "roundingMethodTypeName": "Sample Text Data"
            }
        ]
    }
}
GETapi/v2/Usage/Rate/Group/Paged/Detail
Retrieve all of the UsageRateGroup objects in a paged fashion with all object details. This endpoint returns additional detailed data related to this object. The specifics on which data is returned will depend on which related objects have been populated in the system.
Retrieve all of the UsageRateGroup objects in a paged fashion with all object details.
GET api/v2/Usage/Rate/Group/Paged/Detail
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "pagination": {
        "pageNumber": 1,
        "pageSize": 20,
        "excludeTotalCount": false
    },
    "pagedResults": {
        "totalCount": 1,
        "items": [
            {
                "identity": 1,
                "ownerId": 20,
                "ownerName": "Sample Text Data",
                "name": "All Zone 2 Data Rates",
                "start": "2021-04-26T15:25:27.587Z",
                "end": "2021-04-26T15:25:27.587Z",
                "useForCost": true,
                "timePeriodId": 2,
                "timePeriodName": "Sample Text Data",
                "displayName": "Gold Rates",
                "currencyId": 19,
                "currencyName": "Sample Text Data",
                "isAggregated": true,
                "isPassThrough": true,
                "amountPrecision": 9,
                "roundingMethodTypeId": 24,
                "roundingMethodTypeName": "Sample Text Data",
                "details": {
                    "sampleSingleObject": {
                        "identity": 2,
                        "property1": "Sample Text",
                        "property2": "2021-04-26T15:25:29.117Z",
                        "property3": 2
                    },
                    "sampleMultipleObjects": {
                        "totalCount": 1,
                        "items": [
                            {
                                "identity": 2,
                                "property1": "Sample Text",
                                "property2": "2021-04-26T15:25:29.117Z",
                                "property3": 2
                            }
                        ]
                    }
                }
            }
        ]
    }
}
GETapi/v2/Usage/Rate/Group/{id}
Retrieve an instance of the UsageRateGroup object by its ID.
{id}Unique identifier for the UsageRateGroup object.
Retrieve an instance of the UsageRateGroup object by its ID.
GET api/v2/Usage/Rate/Group/{id}
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "instance": {
        "identity": 1,
        "ownerId": 14,
        "ownerName": "Sample Text Data",
        "name": "All Zone 2 Data Rates",
        "start": "2021-04-26T15:25:27.587Z",
        "end": "2021-04-26T15:25:27.587Z",
        "useForCost": true,
        "timePeriodId": 17,
        "timePeriodName": "Sample Text Data",
        "displayName": "Gold Rates",
        "currencyId": 3,
        "currencyName": "Sample Text Data",
        "isAggregated": true,
        "isPassThrough": true,
        "amountPrecision": 0,
        "roundingMethodTypeId": 15,
        "roundingMethodTypeName": "Sample Text Data"
    }
}
GETapi/v2/Usage/Rate/Group/{id}/Detail
Retrieve deep detail of the UsageRateGroup object by its ID. This endpoint returns additional detailed data related to this object. The specifics on which data is returned will depend on which related objects have been populated in the system.
{id}Unique identifier for the UsageRateGroup object.
Retrieve deep detail of the UsageRateGroup object by its ID.
GET api/v2/Usage/Rate/Group/{id}/Detail
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "instance": {
        "identity": 1,
        "ownerId": 13,
        "ownerName": "Sample Text Data",
        "name": "All Zone 2 Data Rates",
        "start": "2021-04-26T15:25:27.587Z",
        "end": "2021-04-26T15:25:27.587Z",
        "useForCost": true,
        "timePeriodId": 13,
        "timePeriodName": "Sample Text Data",
        "displayName": "Gold Rates",
        "currencyId": 14,
        "currencyName": "Sample Text Data",
        "isAggregated": true,
        "isPassThrough": true,
        "amountPrecision": 12,
        "roundingMethodTypeId": 12,
        "roundingMethodTypeName": "Sample Text Data",
        "details": {
            "sampleSingleObject": {
                "identity": 2,
                "property1": "Sample Text",
                "property2": "2021-04-26T15:25:29.117Z",
                "property3": 2
            },
            "sampleMultipleObjects": {
                "totalCount": 1,
                "items": [
                    {
                        "identity": 2,
                        "property1": "Sample Text",
                        "property2": "2021-04-26T15:25:29.117Z",
                        "property3": 2
                    }
                ]
            }
        }
    }
}
PATCHapi/v2/Usage/Rate/Group/{id}
Update or Add the UsageRateGroup object and optionally make changes to any child objects. Patch end points allow for adding/updating multiple related entities and the results of those changes will be reported in the response JSON payload in the items array.
{id}Unique identifier for the UsageRateGroup object.
Update or Add the UsageRateGroup object and optionally make changes to any child objects.
PATCH api/v2/Usage/Rate/Group/{id}

{
    "details": {},
    "usageRateGroups": {
        "items": [
            {
                "patchType": "create",
                "patchClientId": 1,
                "name": "All Zone 2 Data Rates",
                "start": "2021-04-26T15:25:27.587Z",
                "useForCost": true,
                "timePeriodId": 19,
                "displayName": "Gold Rates",
                "currencyId": 9,
                "isAggregated": true,
                "isPassThrough": true,
                "amountPrecision": 26,
                "roundingMethodTypeId": 23
            }
        ]
    }
}
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "type": "patch",
    "results": {
        "totalCount": 1,
        "items": [
            {
                "identity": 1,
                "action": "created",
                "dtoTypeKey": "usageRateGroup",
                "instance": {
                    "identity": 1,
                    "ownerId": 0,
                    "ownerName": "Sample Text Data",
                    "name": "All Zone 2 Data Rates",
                    "start": "2021-04-26T15:25:27.587Z",
                    "end": "2021-04-26T15:25:27.587Z",
                    "useForCost": true,
                    "timePeriodId": 15,
                    "timePeriodName": "Sample Text Data",
                    "displayName": "Gold Rates",
                    "currencyId": 8,
                    "currencyName": "Sample Text Data",
                    "isAggregated": true,
                    "isPassThrough": true,
                    "amountPrecision": 19,
                    "roundingMethodTypeId": 25,
                    "roundingMethodTypeName": "Sample Text Data"
                }
            }
        ]
    }
}
POSTapi/v2/Usage/Rate/Group/
Create a new instance of the UsageRateGroup object.
Create a new instance of the UsageRateGroup object.
POST api/v2/Usage/Rate/Group/

{
    "name": "All Zone 2 Data Rates",
    "start": "2021-04-26T15:25:27.587Z",
    "useForCost": true,
    "timePeriodId": 11,
    "displayName": "Gold Rates",
    "currencyId": 4,
    "isAggregated": true,
    "isPassThrough": true,
    "amountPrecision": 17,
    "roundingMethodTypeId": 3
}
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "type": "create",
    "results": {
        "totalCount": 1,
        "items": [
            {
                "identity": 1,
                "ownerId": 10,
                "ownerName": "Sample Text Data",
                "name": "All Zone 2 Data Rates",
                "start": "2021-04-26T15:25:27.587Z",
                "end": "2021-04-26T15:25:27.587Z",
                "useForCost": true,
                "timePeriodId": 9,
                "timePeriodName": "Sample Text Data",
                "displayName": "Gold Rates",
                "currencyId": 5,
                "currencyName": "Sample Text Data",
                "isAggregated": true,
                "isPassThrough": true,
                "amountPrecision": 4,
                "roundingMethodTypeId": 1,
                "roundingMethodTypeName": "Sample Text Data"
            }
        ]
    }
}
PUTapi/v2/Usage/Rate/Group/{id}
Update an existing instance of the UsageRateGroup object.
Update an existing instance of the UsageRateGroup object.
PUT api/v2/Usage/Rate/Group/{id}

{
    "identity": 1,
    "name": "All Zone 2 Data Rates",
    "start": "2021-04-26T15:25:27.587Z",
    "useForCost": true,
    "timePeriodId": 9,
    "displayName": "Gold Rates",
    "currencyId": 17,
    "isAggregated": true,
    "isPassThrough": true,
    "amountPrecision": 18,
    "roundingMethodTypeId": 3
}
View Sample Response
HTTP/1.1 200 OK
{
    "trackingId": "d2ae5304-2355-44eb-a328-272f02935f8b",
    "type": "update",
    "results": {
        "totalCount": 1,
        "items": [
            {
                "identity": 1,
                "ownerId": 0,
                "ownerName": "Sample Text Data",
                "name": "All Zone 2 Data Rates",
                "start": "2021-04-26T15:25:27.587Z",
                "end": "2021-04-26T15:25:27.587Z",
                "useForCost": true,
                "timePeriodId": 14,
                "timePeriodName": "Sample Text Data",
                "displayName": "Gold Rates",
                "currencyId": 7,
                "currencyName": "Sample Text Data",
                "isAggregated": true,
                "isPassThrough": true,
                "amountPrecision": 2,
                "roundingMethodTypeId": 0,
                "roundingMethodTypeName": "Sample Text Data"
            }
        ]
    }
}