Contract expense templates

An expense template defines the schedule to recognize an expense amount for a contract or contract line over the contract term. You can create any number of expense templates and reuse them across contracts.

List Contract expense templates

get/objects/contracts/expense-template

Returns up to 100 object references from the collection with a key, ID, and link for each contract expense template. This operation is mostly for use in testing; use query to find objects that meet certain criteria and to specify properties that are returned.

SecurityOAuth2
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "2",
      • "id": "EXPSTRAIGHTLINE_AUTO",
      • "href": "/objects/contracts/expense-template/2"
      }
    ],
  • "ia::meta": {
    • "totalCount": 1,
    • "start": 1,
    • "pageSize": 100,
    • "next": null,
    • "previous": null
    }
}

Create a contract expense template

post/objects/contracts/expense-template

Creates a new contract expense template.

SecurityOAuth2
Request
Request Body schema: application/json

Contract expense template to create

id
required
string

Contract Expense Template ID

Example: "EXPSTRAIGHTLINE_MAN"
description
string

Description

Example: "Expense straight line manual"
amortizationSchedulePeriod
string
Default: "monthly"

Amortization Schedule Period

Enum: "annually" "monthly" "quarterly" "semiAnnually"
Example: "annually"
amortizationMethod
string
Default: "straightLine"

Amortization method

Enum: "dailyRate" "predefinedPercentages" "straightLine"
Example: "straightLine"
defaultPostingType
string
Default: "manual"

Default Posting type

Enum: "automatic" "manual"
Example: "manual"
Array of objects

Contract expense template entries

Array
periodOffset
string

Number of months offset

Example: "2"
percentToRecognize
string <decimal-precision-8>

Percentage to recognize

Example: "10.12312000"
object
status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Responses
201

Created

400

Bad Request

Request samples
application/json
{
  • "id": "EXPSTRAIGHTLINE_MAN1",
  • "description": "Cont Expenses straighline Amortization Monthly Manual",
  • "defaultPostingType": "manual",
  • "amortizationSchedulePeriod": "monthly",
  • "postingDay": 2,
  • "amortizationMethod": "straightLine"
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "26",
    • "id": "EXPSTRAIGHTLINE_MAN1",
    • "href": "/objects/contracts/expense-template/26"
    },
  • "ia::meta": {
    • "totalCount": 1
    }
}

Get a contract expense template

get/objects/contracts/expense-template/{key}

Returns detailed information for a specified contract expense template.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned key for the contract expense template.

Example: 168
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "key": "1",
    • "id": "EXPSTRAIGHTLINE_MAN",
    • "description": "Cont Expenses straighline Amortization Monthly Manual",
    • "defaultPostingType": "manual",
    • "amortizationSchedulePeriod": "monthly",
    • "postingDay": 1,
    • "amortizationMethod": "straightLine",
    • "status": "active",
    • "audit": {
      • "modifiedDateTime": "2016-05-13T18:22:57Z",
      • "createdDateTime": "2016-05-13T18:22:57Z",
      • "createdBy": "1",
      • "modifiedBy": "1"
      },
    • "lines": [ ],
    • "href": "/objects/contracts/expense-template/1"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Update a contract expense template

patch/objects/contracts/expense-template/{key}

Updates an existing contract expense template by setting field values. Any fields not provided remain unchanged.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned key for the contract expense template.

Example: 168
Request Body schema: application/json
description
string

Description

Example: "Expense straight line manual"
amortizationSchedulePeriod
string
Default: "monthly"

Amortization Schedule Period

Enum: "annually" "monthly" "quarterly" "semiAnnually"
Example: "annually"
amortizationMethod
string
Default: "straightLine"

Amortization method

Enum: "dailyRate" "predefinedPercentages" "straightLine"
Example: "straightLine"
defaultPostingType
string
Default: "manual"

Default Posting type

Enum: "automatic" "manual"
Example: "manual"
Array of objects

Contract expense template entries

Array
periodOffset
string

Number of months offset

Example: "2"
percentToRecognize
string <decimal-precision-8>

Percentage to recognize

Example: "10.12312000"
object
status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
status
string
Default: "active"

Object status. Active objects are fully functional. Inactive objects are essentially hidden and cannot be used or referenced.

Enum: "active" "inactive"
Example: "active"
Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "description": "Cont Expenses straighline Amortization Monthly Manual",
  • "defaultPostingType": "manual",
  • "amortizationSchedulePeriod": "monthly",
  • "postingDay": 3,
  • "amortizationMethod": "straightLine"
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "27",
    • "id": "EXPSTRAIGHTLINE_1",
    • "href": "/objects/contracts/expense-template/27"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Delete a contract expense template

delete/objects/contracts/expense-template/{key}

Deletes a contract expense template.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned key for the contract expense template.

Example: 168
Responses
204

No Content

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "ia::error": {
      • "code": "invalidRequest",
      • "message": "A POST request requires a payload",
      • "errorId": "REST-1028",
      • "additionalInfo": {
        },
      • "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
      }
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 0,
    • "totalError": 1
    }
}

Query expense templates

post/services/core/query

Use the query service to find expense templates that meet certain criteria and to specify the properties that are returned.

SecurityOAuth2
Responses
200

OK

Request samples