Get Complete BP Record

GET /ws/rest/service/v2/bp/record/file

Available: 26.4 and later

Purpose

This REST service replaces the getCompleteBPRecord SOAP service. Use this REST service to get BP record details, including all attachments, line items, general comments, and record print pdf attached in a zip file based on input parameters. This applies to company level BPs (if a project/shell number is not provided) and shell/project BPs.

Note:

This call is similar to Get BP Record With Attachments V1 REST service. Record Print PDF has been added to the base 64 encoded zip file along with other attachments.

Request Format

Send an API request as a JSON Map with the following structure:

{

"projectNumber":"<value>",

"bpname":"<value>",

"record_no":"<value>",

"lineitem":"<value>",

"lineitem_file":"<value>",

"general_comments":"<value>",

"attach_all_publications":"<value>"

}

Request Parameters

In the options map, the following parameter must be included:

Parameter Required? Data type Description
projectNumber No String The project ID associated with the BP record. If a project number is not specified, it is considered at the company level
bpname Yes String A valid BP name.
record_no Yes String A valid record number.
lineitem No String The line item in the BP record. Valid choices include: "Yes" (default) and "No".
lineitem_file No String Indicates whether line item attachments are included with the BP record. Valid choices include: "Yes" (default) and "No".

If included, the attached files can be downloaded.

general_comments No String Indicates whether general comments are included with the BP record. Valid choices include: "Yes" (default) and "No".
attach_all_publications No String Indicates whether all publications/revisions for the attached files (Upper and Detail Forms) can be attached and downloaded with the BP record. Valid choices include: "Yes" and "No" (default) .

Response Format

A JSON object is returned in the following format:

{

"data": [],

"message": [],

"status": <REST status code value>

}

A successful response displays a status code 200.

A failed response displays a message with a status code.

Output Folder structure

zip_file

|

+-- attachments

| |

| +-- files attached to record ( upper form )

| |

| +-- lineitem_<lineitem number>

| |

| +----- files attached to lineitem

|

+-- gc_attachments ( general comment attachments )

|

+-- comment_<comment number>

|

+---- files attached to comment

Output Folder structure when "attach_all_publications" is "yes"

zip_file

|

+-- attachments

| |

| +---- publication_<publication number>

| | |

| +---- files attached to record which has same publication number as in parent folder suffix

| |

| +-- lineitem_<lineitem number>

| |

| | | | +-- publication_<publication number>

| |

| | | | | | +-- files attached to lineitem which has same publication number as in parent folder suffix

|

+-- gc_attachments ( general comment attachments )

|

| +-- comment_<comment number>

|

+-- files attached to comment

+-- <bptype>_0.pdf (Record Print PDF )

For general spends, payment applications, or generic cost BPs, the following funding details are also included in the response:

  • unassigned_amount
  • fund information as a JSON array with the following values:
    • code
    • fund_balance
    • assigned_amount

Note:

If Integration interface is defined for that BP, all fields defined in this interface will be sent in the response.

If the integration interface is not defined, all Custom defined Fields will be sent in response.

Sample Success Request

Send an API request as a JSON Map with the following structure:

{

"projectNumber":"P-0004",

"bpname":"Purchase Orders",

"record_no":"PO-0954",

"lineitem":"yes",

"lineitem_file":"yes",

"general_comments":"yes",

"attach_all_publications":"yes"

}

Sample Success Response

A successful response with status code 200 displays in the following format:

{

"data": [

{

"file_name": "upo_PO-0954_0_attachments.zip",

"record_data": {

"uveFaxTB16": null,

"LineItemCreator": null,

"uvePrimaryContactTB64": null,

"ugenVendorBP": null,

"STR_RDBTN": null,

"upoExpiryDateDOP": null,

"PO_LIDP": null,

"ugenCityTXT50": null,

"uuu_dm_publish_path": null,

"sss_ttl_ApprovedInvoicesCA": 0.0,

"uuu_creation_date": "01-06-2026 21:57:30",

"String_PD2": null,

"sss_ttl_ApprovedAmendmentsCA": 0.0,

"uvePhoneTB64": null,

"uuu_project_phase": "Construction",

"ugenAddress1TXT120": null,

"uveVendorNameTB50": "vg",

"INT_RDBTN": 0,

"ugenProjectNumber": "P-0004",

"uuu_effective_date": "01-06-2026 21:17:00",

"ugenSpecSecBP": null,

"uAssetBPC": null,

"creator_id": "Company Administrator",

"ugenCountryPD": null,

"String_PD1": null,

"status": "Pending",

"STR_MULTISELECT": null,

"sss_ttl_PendingAmendmentsCA": 0.0,

"ugenAsgnToADP": null,

"upoPONumberTXT16": null,

"Intele1": 0,

"title": "Test 1 attachment",

"ugenActivityDPK": null,

"attachment": [

{

"reference": "NO",

"issue_date": null,

"revision_no": null,

"file_name": "BP_Record_1000 (1).pdf",

"publication_no": 1,

"title": null,

"create_date": "2026/01/06 21:57",

"file_size": 35179

},

{

"reference": "NO",

"issue_date": null,

"revision_no": null,

"file_name": "BP_Record_1000 (15).pdf",

"publication_no": 1,

"title": null,

"create_date": "2026/01/06 21:57",

"file_size": 35179

},

],

"record_no": "PO-0954",

"ugenDescriptionTXT4000": null,

"rich_text_de": null,

"uveVendorTypePD": null,

"upoContractDescMLT4000": null,

"ugenZipCodeTXT16": null,

"uveEmailTB120": null,

"ugenP6PlannedFinishDOP": null,

"ugenAddress3TXT120": null,

"amount": 0.0,

"ugenProjectName": null,

"ugenP6PlannedCostCA": 0.0,

"due_date": null,

"uconOriginalPOAmtCA": 0.0,

"ugenP6PlannedStartDOP": null,

"STRPULL": null,

"ugenAddress2TXT120": null,

"currencyid": "Chile UF (CLF)",

"uveVendorIDTB16": null,

"ugenStatePD": null

}

]

"message": [ "success"],

"status": 200,

"rest_audit_id": 731

}

Sample Failed Response

A failed response displays with the corresponding status code in the following format:

{

"data": [],

"message": [ "Invalid record_no."],

"status": 657,

"rest_audit_id": 26

}

Supported Validation Messages and Status Codes

The following messages and status codes can display in the response:

Field Name Use-Case Status Message
  Exception while fetching only attachments. When a system exception occurs and attachments cannot be included in the zip file but record details are successfully fetched, status 200 status is returned.

Note:

The record PDF is still generated.
200 Problem in getting attached files.
  Exception while fetching only record PDF. Note: attachments can still be fetched. 11012 Problem fetching record PDF.
  Exception while fetching both attachments and record PDF. Note: neither attachments nor record can be fetched. 11012 Problem fetching record PDF.
projectNumber The project number is invalid. 602 Project/Shell Number is not correct.
projectNumber Project is not active. 1219 Project status is Inactive.
project_number Cost sheet does not exist in the project/shell. 707 Cost sheet does not exist.