Edit flag data for a specified entity
This API supports a wide variety of Flag-related actions. Below are summaries of expected outcomes for possible combinations of property values.
Create Flag(the entity is not yet flagged, therefore there is no “modified” info)
| FlagTypeId | FlagStatusId | CostRecovery | Assignees | Comment | HoldFromExport | ReleaseExportHold | Action |
|---|---|---|---|---|---|---|---|
| null | null | null | null | non-null | true | true | Exception, cannot set both HoldFromExport and ReleaseExportHold at once |
| null | null | null | null | null | non-null | non-null | Exception, must have at least one set |
| null | null | null | null | null | null | null | Exception, must provided a non-null value for HoldFromExport or ReleaseExportHold |
| null | not null | not null | not null | not null | false | false | Exception, must have a type |
| not null | null | null | null | null | false | false | Flagged, unresolved, specified type |
| not null | not null | null | null | null | false | false | Flagged, unresolved(ignoring specified status), specified type |
| not null | null | not null | null | null | false | false | Flagged, unresolved, specified type, cost recovery |
| not null | null | null | not null1 | null | false | false | Flagged, unresolved, specified type |
| 1If assignees not empty, assigned | |||||||
| not null | null | null | null | not null | false | false | Flagged, unresolved, specified type, comment |
| not null1 | not null1 | not null1 | not null2 | not null1 | true1 | false | 1Flagged, unresolved (ignoring specified status), specified type, cost recovery, comment, held from export |
| 2If assignees not empty, assigned, comment | |||||||
| not null1 | not null1 | not null1 | not null2 | not null1 | false | true3 | 1Flagged, unresolved (ignoring specified status), specified type, cost recovery, comment |
| 2If assignees not empty, assigned, comment | |||||||
| 3No action; will not release a newly flagged bill for export |
Edit Unresolved Flag (the entity is already flagged)
| FlagTypeId | FlagStatusId | CostRecovery | Assignees | Comment | HoldFromExport | ReleaseExportHold | Action |
|---|---|---|---|---|---|---|---|
| null | null | null | null | non-null | true | true | Exception, cannot set both HoldFromExport and ReleaseExportHold at once |
| null | null | null | null | null | non-null | non-null | Exception, must have at least one set |
| null | null | null | null | null | false | false | Exception, must provided a non-null value for HoldFromExport or ReleaseExportHold |
| system or user type | null | null | null | null | false | false | Flag type updated |
| null | resolved | null | null | null | false | false | Resolved |
| null | resolved | null | null | null | false | true | Resolved, released for export |
| null | null | not null | null | null | false | false | Updated, cost recovery |
| null | null | null | not null | null | false | false | Assigned |
| null | null | null | null | not null | false | false | Updated, comment |
| not null1 | not null3 | not null1 | not null2 | not null1 | false | false | 1Updated, specified type, cost recovery, comment |
| 2Assigned, comment | |||||||
| 3Resolved, comment | |||||||
| not null1 | not null3 | not null1 | not null2 | not null1 | true1 | false | 1Updated, specified type, cost recovery, comment, held from export |
| 2Assigned, comment | |||||||
| 3Resolved, comment |
Edit Resolved Flag (the entity is already flagged)
| FlagTypeId | FlagStatusId | CostRecovery | Assignees | Comment | HoldFromExport | ReleaseExportHold | Action |
|---|---|---|---|---|---|---|---|
| null | null | null | null | non-null | true | true | Exception, cannot set both HoldFromExport and ReleaseExportHold at once |
| null | null | null | null | null | non-null | non-null | Exception, must have at least one set |
| null | null | null | null | null | false | false | Exception, must provided a non-null value for HoldFromExport or ReleaseExportHold |
| system or user type | null | null | null | null | false | false | Updated, specified type |
| null | non-null | null | null | null | false | false | Exception; must provide flag type (cannot change flag status of a resolved flag; instead must “re-flag” it) |
| null | null | not null | null | null | false | false | Exception; must provide flag type (cannot change flag status of a resolved flag; instead must “re-flag” it) |
| null | null | null | not null | null | false | false | Exception; must provide flag type (cannot change flag status of a resolved flag; instead must “re-flag” it) |
| null | null | null | null | not null | false | false | Exception; must provide flag type (cannot change flag status of a resolved flag; instead must “re-flag” it) |
| not null1 | not null3 | not null1 | not null2 | not null1 | false | false | 1Updated, specified type, cost recovery, comment |
| 2Assigned, comment | |||||||
| 3Resolved, comment | |||||||
| not null1 | unresolved3 | not null1 | not null2 | not null1 | true1 | false | 1Flagged, specified type, cost recovery, comment, no export hold action |
| 2Assigned, comment | |||||||
| not null1 | resolved3 | not null1 | not null2 | not null1 | false | true1 | 1Resolved, specified type, cost recovery, comment, no export hold action |
| 2Assigned, comment | |||||||
| not null1 | unresolved3 | not null1 | not null2 | not null1 | true1 | false | 1Flagged, specified type, cost recovery, comment, held from export |
| 2Assigned, comment | |||||||
| not null1 | resolved3 | not null1 | not null2 | not null1 | false | true1 | 1Resolved, specified type, cost recovery, comment, released from export |
| 2Assigned, comment | |||||||
Request Headers
| Header | Value | Required | Description |
|---|---|---|---|
| ECI-ApiKey | string | Yes | Your API key. See Authentication. |
| Content-Type | application/json | Yes | All requests must specify JSON content type, including the request body. |
Path Parameters
| Name | Description | Type | Required |
|---|---|---|---|
| entityType | The type of entity the flag is being request for. Supported values are: “Bill” | string | Required |
| entityId | The identifier of the entity | integer (int32) | Required |
Request Body
FlagEdit
| Property | Description | Type |
|---|---|---|
| assignees | All users currently assigned to this flag Required (defined) At least one of FlagTypeId, FlagStatusId, CostRecovery, Comment, Assignees must not be null | integer[] |
| comment | Event and action that has occurred with this flag Required (defined) At least one of FlagTypeId, FlagStatusId, CostRecovery, Comment, Assignees must not be null | string |
| costRecovery | Cost recovery associated with the issue this flag represents Required (defined) At least one of FlagTypeId, FlagStatusId, CostRecovery, Comment, Assignees must not be null | number (double) |
| flagStatusId | Current status of the flag One of ‘1’, ‘2’ Case sensitive Required (defined) At least one of FlagTypeId, FlagStatusId, CostRecovery, Comment, Assignees must not be null | integer (int32) |
| flagTypeId | Type of the flag Note: Audit exception flag type id cannot be assigned manually Required (defined) At least one of FlagTypeId, FlagStatusId, CostRecovery, Comment, Assignees must not be null | integer (int32) |
| holdFromExport | Determines whether or not the bill will be held for export when flagging the bill This property cannot be true if ReleaseExportHold is true. Required (defined) | boolean |
| releaseExportHold | Determines whether or not the bill will be released from export hold when resolving the bill flag This property cannot be true if HoldFromExport is true. Required (defined) | boolean |
Example Request Body
{ "assignees": [
1
], "comment": "string", "costRecovery": 1.0, "flagStatusId": 1, "flagTypeId": 1, "holdFromExport": false, "releaseExportHold": false
}
Responses
200
OK
The request succeeded and the response body contains the requested data.
Response Body Parameters
FlagResponse
| Property | Description | Type | ||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| assignees | All users currently assigned to this flag | UserChild[] | ||||||||||||||||||||||||||||||||||||||||||||||||
|
UserChild properties
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| costRecovery | Cost recovery associated with the issue this flag represents | number (double) | ||||||||||||||||||||||||||||||||||||||||||||||||
| createdBy | UserChild | |||||||||||||||||||||||||||||||||||||||||||||||||
|
UserChild properties
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| createdDate | Date the flag was created | string (date-time) | ||||||||||||||||||||||||||||||||||||||||||||||||
| flagEvents | All events and actions that have occurred with this flag | FlagEventChild[] | ||||||||||||||||||||||||||||||||||||||||||||||||
|
FlagEventChild properties
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| flagId | The flag identifier | integer (int32) | ||||||||||||||||||||||||||||||||||||||||||||||||
| flagIssues | All issues associated with the flag Even if the flag is marked as resolved, the list of issues that were on the flag at that time will remain. This keeps a historic record and allows for filtering. | FlagIssueTypeChild[] | ||||||||||||||||||||||||||||||||||||||||||||||||
|
FlagIssueTypeChild properties
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| flagStatus | FlagStatusChild | |||||||||||||||||||||||||||||||||||||||||||||||||
|
FlagStatusChild properties
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| flagType | FlagTypeChild | |||||||||||||||||||||||||||||||||||||||||||||||||
|
FlagTypeChild properties
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| modifiedBy | UserChild | |||||||||||||||||||||||||||||||||||||||||||||||||
|
UserChild properties
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| modifiedDate | Latest date the flag was modified | string (date-time) | ||||||||||||||||||||||||||||||||||||||||||||||||
Example Response
{ "assignees": [
{ "fullName": "string", "userCode": "string", "userId": 1
}
], "costRecovery": 1.0, "createdBy": { "fullName": "string", "userCode": "string", "userId": 1
}, "createdDate": "2026-03-30", "flagEvents": [
{ "comment": "string", "createdBy": { "fullName": "string", "userCode": "string", "userId": 1
}, "createdDate": "2026-03-30", "description": "string", "flagAction": { "flagActionId": 1, "flagActionInfo": "string"
}, "flagEventId": 1
}
], "flagId": 1, "flagIssues": [
{ "flagIssueCategory": "string", "flagIssueTypeDescription": "string", "flagIssueTypeId": 1, "flagIssueTypeInfo": "string"
}
], "flagStatus": { "flagStatusId": 1, "flagStatusInfo": "string"
}, "flagType": { "flagTypeId": 1, "flagTypeInfo": "string"
}, "modifiedBy": { "fullName": "string", "userCode": "string", "userId": 1
}, "modifiedDate": "2026-03-30"
}