AR retainage releases

On an AR invoice that has retainage, an AR retainage release is used to release that retainage for payment.

List AR retainage releases

get/objects/construction/ar-retainage-release

Returns up to 100 object references from the collection with a key, ID, and link for each AR retainage release object. This operation is mostly for use in testing; use the query service 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": "1",
      • "id": "1",
      • "href": "/objects/construction/ar-retainage-release/1"
      },
    • {
      • "key": "2",
      • "id": "2",
      • "href": "/objects/construction/ar-retainage-release/2"
      },
    • {
      • "key": "3",
      • "id": "3",
      • "href": "/objects/construction/ar-retainage-release/3"
      }
    ],
  • "ia::meta": {
    • "totalCount": 3,
    • "start": 1,
    • "pageSize": 100,
    • "next": null,
    • "previous": null
    }
}

Create an AR retainage release

post/objects/construction/ar-retainage-release

Creates a new AR retainage release with lines.

SecurityOAuth2
Request
Request Body schema: application/json
required

Updated

description
required
string or null

Description of ar-retainage-release.

Example: "October retainage release"
releaseDate
string <date>

Release date.

Example: "2023-01-23"
glPostingDate
string <date>

GL posting date.

Example: "2023-01-23"
state
string
Default: "draft"

State.

Enum: "draft" "released" "reversal"
Example: "draft"
object
key
string or null

The system-assigned key for the customer.

Example: "72"
id
string or null

Unique identifier for the customer.

Example: "Arthur Bates"
object
key
string or null

System-assigned key for the project.

Example: "2"
id
string or null

Unique identifier for the project.

Example: "NET-XML30-2"
Array of objects

AR retainage release lines.

Array
txnAmountReleased
string <decimal-precision-2>

The amount to release in transaction currency.

Example: "123.45"
object

Reference to the retainage invoice.

object

Reference to the retainage invoice line.

Responses
201

Created

400

Bad Request

Request samples
application/json
{
  • "id": "19",
  • "description": "AR ret rel desc 101",
  • "releaseDate": "2025-03-02",
  • "glPostingDate": "2025-03-02",
  • "state": "draft",
  • "arRetainageReleaseLines": [
    • {
      • "txnAmountReleased": "123.00",
      • "retainageInvoice": {
        },
      • "retainageInvoiceLine": {
        }
      }
    ]
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "4",
    • "id": "4",
    • "href": "/objects/construction/ar-retainage-release/4"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Get an AR retainage release

get/objects/construction/ar-retainage-release/{key}

Returns detailed information for a specified AR retainage release.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the AR retainage release.

Example: 60
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "id": "60",
    • "key": "60",
    • "description": "Project contract invoice-PCI-00153",
    • "releaseDate": "2024-03-31",
    • "glPostingDate": "2024-03-31",
    • "state": "released",
    • "audit": {
      • "createdDateTime": "2025-02-28T00:00:00Z",
      • "modifiedDateTime": "2025-02-28T00:00:00Z",
      • "createdBy": "1",
      • "modifiedBy": "1"
      },
    • "entity": {
      • "key": "46",
      • "id": "CORP",
      • "name": "Corp",
      • "href": "/objects/company-config/entity/46"
      },
    • "arRetainageReleaseLines": [
      • {
        }
      ],
    • "href": "/objects/construction/ar-retainage-release/60"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Update an AR retainage release

patch/objects/construction/ar-retainage-release/{key}

Updates an existing AR retainage release by setting field values. Any fields not provided remain unchanged.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the AR retainage release.

Example: 60
Request Body schema: application/json
description
string or null

Description of ar-retainage-release.

Example: "October retainage release"
releaseDate
string <date>

Release date.

Example: "2023-01-23"
glPostingDate
string <date>

GL posting date.

Example: "2023-01-23"
state
string
Default: "draft"

State.

Enum: "draft" "released" "reversal"
Example: "draft"
object
key
string or null

The system-assigned key for the customer.

Example: "72"
id
string or null

Unique identifier for the customer.

Example: "Arthur Bates"
object
key
string or null

System-assigned key for the project.

Example: "2"
id
string or null

Unique identifier for the project.

Example: "NET-XML30-2"
Array of objects

AR retainage release lines.

Array
txnAmountReleased
string <decimal-precision-2>

The amount to release in transaction currency.

Example: "123.45"
object

Reference to the retainage invoice.

object

Reference to the retainage invoice line.

Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "description": "Updated"
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "4",
    • "id": "4",
    • "href": "/objects/construction/ar-retainage-release/4"
    },
  • "ia::meta": {
    • "totalCount": 1
    }
}

Delete an AR retainage release

delete/objects/construction/ar-retainage-release/{key}

Deletes an AR retainage release.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the AR retainage release.

Example: 60
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
    }
}