Retrieve PCI Masters By Code
  • 01 Oct 2025
  • 11 Minutes to read
  • Dark
    Light

Retrieve PCI Masters By Code

  • Dark
    Light

Article summary

Get
/cm-rest-api/rest/1/cmmast

Overview

This endpoint allows for the viewing and creation of Potential Change Items header information, such as Company, Project, Scope of Work, PCI dates and more.

Potential Change Items can be used to enter change requests for ongoing projects. PCIs are items that are expected to result in additional work or cost, beyond what was stated in the original submittal. These items can be made internally or externally and can be linked to requests for quotation (RFQ) and other related objects.

To view PCI details, please refer to “Create a PCI Detail” documentation.

UI Navigation

  • Enterprise > Change Management > Change Orders > Enter PCI
  • CMiC Field > Budget & Cost Management > Potential Change Items

Reference Articles

Path Parameters

ParameterDescriptionExample
/VUUIDThe VUuid attribute is the Unique row ID/cm-rest-api/rest/1/cmmast/C6007D3BB36D2CACE0530100007F8D31

Query Standards

KeyRecommendedDescription
finderYesFilters data based on attributes. See finder details below. Finders can be combined using a comma delimiter between parameters that implies an "and" statement. For more information on using the finder functionality please see Best Practice | Data Filtering requirements
limitYesA limit restricts the number of resources returned inside the resource collection. If the limit exceeds the resource count, then the framework will return all available resources. For additional information on using the limit functionality please visit Best Practice | Data Filtering requirements
offsetYesThe offset skips a specified number of items in a data list before it starts showing results. For example, if you set an offset of 10, it skips the first 10 items and begins showing from the 11th item. For additional information on using Offset functionality please visit Best Practice | Data Filtering requirements
orderByYesThe orderBy attribute retrieves rows using an order ensuring the response payload displays data in the order supplied in the URL parameter using the GET method. For more information on using orderBy functionality please visit Best Practice | Data Filtering requirements

cmmast Finders

FinderParameterData TypeDescriptionExample
selectByCompJobauditDatedatetimeReturns records that were created or updated on or after this date

This finder must be used alongside the companyCode Finder and jobCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJob;auditDate="2024-05-29", companyCode="SUS", jobCode="SUSJOB01"
selectByCompJobcompanyCodestringFilters records that belong to the specified company.

This finder must be used in tandem with the jobCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJob;companyCode="SUS", jobCode="SUSJOB01"
selectByCompJobjobCodestringFilters records that belong to the specified job.

This finder must be used in tandem with the companyCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJob;companyCode="SUS", jobCode="SUSJOB01"
selectByCompJobtypeCodestringFilters records by PCI type (CmmTypeCode)

This finder must be used alongside the companyCode Finder and jobCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJob;companyCode="SUS", jobCode="SUSJOB01", , typeCode=SUSE
selectByCompJobCMCodeauditDatedatetimeReturns the record only if it was created or updated on or after this date.

This finder must be used alongside the companyCode Finder, the cmCode Finder, and the jobCode finder
selectByCompJobCMCode;auditDate="2024-05-29", companyCode="SUS", jobCode="SUSJOB01", cmCode="0027EXT"
selectByCompJobCMCodecmCodestringFilters by a specific PCI code (CMM_CODE)

This finder must be used alongside the companyCode Finder and the jobCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJobCMCode;companyCode="SUS", jobCode="SUSJOB01", cmCode="0027EXT"
selectByCompJobCMCodecompanyCodestringFilters records that belong to the specified company.

This finder must be used alongside the cmCode Finder and the jobCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJobCMCode;companyCode="SUS", jobCode="SUSJOB01", cmCode="0027EXT"
selectByCompJobCMCodejobCodestringFilters records that belong to the specified job.

This finder must be used alongside the companyCode Finder and the cmCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJobCMCode;companyCode="SUS", jobCode="SUSJOB01", cmCode="0027EXT"
selectByCompJobCMCodetypeCodestringFilters records by PCI type (CmmTypeCode).

This finder must be used alongside the companyCode Finder, the cmCode Finder, and the jobCode finder
/cm-rest-api/rest/1/cmmast?finder=selectByCompJobCMCode;companyCode="SUS", jobCode="SUSJOB01", cmCode="0027EXT", typeCode="SUSE"
selectByWorkflowauditDatedatetimeReturns records that were created or updated on or after this date.

Must be used in tandem with the workflowStatus finder
/cm-rest-api/rest/1/cmmast?finder=selectByWorkflow;auditDate="2022-05-29",workflowStatus=Approved
selectByWorkflowtypeCodestringFilters records by PCI type (CmmTypeCode)

Must be used in tandem with the workflowStatus finder
/cm-rest-api/rest/1/cmmast?finder=selectByWorkflow;typeCode='SUSE', workflowStatus='Pending'
selectByWorkflowworkflowStatusstringFilters records by workflow status (e.g., ‘Approved’, ‘Pending’ etc)./cm-rest-api/rest/1/cmmast?finder=selectByWorkflow;workflowStatus=Approved

cmmast Attributes

CMiC UI FieldnameNameDescriptionTypeData LengthExampleRequired
Action CodeCmmActionCodeThis is the Action Code Created by the system. Action items are used to schedule and coordinate phone calls, delivery dates, meetings and other action types relevant to the Opportunity Management module. The Action Code is used to identify the action item type. Click here to learn more about Action Item Codes.string1No
AllowanceCmmAllowanceAllowance Type (I)n Scope, (O)ut of Scope, (N)either. Default is N.string1“T”No
Approved FlagCmmAprvFlagIdicate weather this PCI is Approved or not. Related to PCI Status Code. Y or Nstring1“Y” / “N”No
Auto Calculate MarkupsCmmAutoCalcMarkupFlagAutomatically generate markup lines once the PCI record has been saved. Y or Nstring1“Y” / “N”No
Batch NumberCmmBchNumBatch number associated with PCI postinginteger11“755568”
Bid ItemCmmBiditemFlagFlag to indicate that it is an automatic change order created by the bid item. (Y)es, (N)o, or nullstring1“null” / “Y” / “N”
Bill Method CodeCmmBillMethCodeValid values are (D)Details or (S)Summary. If left as null, it will default to D.string1“D”No
Projected Amount Calc MethodCmmCalcProjAmtMethodFlag to indicate the calculation method for projected amount when a change order is posted, and Update Projected Amount is checked. (A)dd Change Budget Amount or (R )ecalculate Projected Amountstring1“A”No
Change Issued DateCmmChgSentToOwnerDateEnter the dates the change order was issued.datetime“2019-02-28”No
Change Signed DateCmmChgSignedByOwnerDateEnter the dates the change order was signed.datetime“2019-02-28”No
PCI Class CodeCmmClassCodePCI Class associated with the PCI type. (E )xternal, (I)nternal, (T)ransfer, (O)riginal Budget Changestring1“E”No
Classifier 1CmmClvValueCode1Classifier Value 1string16No
Classifier 2CmmClvValueCode2Classifier Value 2string16No
Classifier 3CmmClvValueCode3Classifier Value 3string16No
Classifier 4CmmClvValueCode4Classifier Value 4string16No
Classifier 5CmmClvValueCode5Classifier Value 5string16No
Classifier 6CmmClvValueCode6Classifier Value 6string16No
PCI CodeCmmCodePCI number identifying PCIstring11“EXT-23005”Yes
Company CodeCmmCompCodeCompany Code associated with the PCI’s projectstring8“ZZ”Yes
Control Job CodeCmmCtrlJobCodeControlling Job Code for PCIs linked to subjobs. If the Project is associated with a controlling Job, this field should be set as “ALL”string10“ALL”No
Cycle NumberCmmCycleNumFor reallocation PCIs only: Reallocation Cycle Numberinteger4“1”No
Due to owner DateCmmDueToOwnerDateFor reference purposes only, to indicate when this change is due to the owner.datetime“2016-04-26”No
End DateCmmEffectiveEndDateChange Order End Datedatetime“2018-09-11”No
Start DateCmmEffectiveStartDateChange Order Start Datedatetime“2018-09-10”No
Global Update DateCmmGlobalUpdateDateTimestamp of “global” PCI update, including e.g. PCI header/details, RFQ, Notes, Attachments.datetime“2024-05-29T06:15:09-04:00”
Impact DaysCmmImpactDaysEnter number of days of impacted by change. These will print on the Change Order and calculate new finish date.integer4“10”No
Create DateCmmIuCreateDateDate the record was createddatetime“2018-09-10T13:44:36-04:00”
Update DateCmmIuUpdateDateDate the record was last updateddatetime“2018-09-10T13:44:36-04:00”
Job CodeCmmJobCodeJob Code associated with the PCI’s Projectstring10“23-410”Yes
Lump Sum FlagCmmLumpsumFlagY = Lump Sum PCI, N= Regular PCIstring1“Y” / “N”No
PCI DescriptionCmmNamePCI name or descriptionstring200“Excavation Scope Change”Yes
Original PCI CodeCmmOrigCmmCodeReallocation PCI only: Original PCI code being adjusted (re-allocation)string11“EXT-001”No
Original Owner Allowance AmountCmmOrigOwnerAllowanceAmtApplicable only In Scope, Out of Scope Allowance Type PCI. Written only at posting time. For Out of Scope is normally 0number18“0”No
Owner Allowance AmountCmmOwnerAllowanceAmtApplicable only In Scope, Out of Scope Allowance Type PCI. For Out of Scope is normally 0number18“100”No
PCI Owner Change OrderCmmOwnerChgCodeEnter the Owner Change Order number associated with the Change Order. The Owner Change Order number is a reference field that will appear on Job Billing AIA style report.string20“OCO-002”No
Pending FlagCmmPendFlagPending Type associated with the PCI status code. Available options are: (A)pproved, (C )ancelled, (N) Pre-Pending, (P)ending, (R )ejected. For more details on PCI Pending Types, please refence the following article: PCI Status Codesstring1“Y” / “N”No
Post Vendor Contracts with PCICmmPostContrFlagInsert (Y), if the Subcontract associated to this PCI should be posted at the same time as the PCI; otherwise, the related Subcontract is posted separately (N).string1“Y” / “N”No
Post DateCmmPostDateDate PCI was posteddatetime“2016-02-02”
PCI Posted StatusCmmPostingFlagSystem generated value to indicate the status of the PCI, if it its posted or unpostedstring12“POSTED”No
Pre-post Status CodeCmmPrepostStatCodeStatus code before posting. Must be a valid PCI status code in CMiC.string10“APPROVED”Yes
Proposal IssuedCmmPropIssuedToOwnerDateDate when Proposal was issued to Ownerdatetime“2019-02-20No
Proposal SignedCmmPropSignedByOwnerDateDate when the Proposal was signed by Ownerdatetime“2019-02-20”No
ReasonCmmReasonTextSelect Reason for PCI. Must be a valid reason in CMiC. For more details please see the following article: Maintain Reason LOV. This can be a required field based on Company Control settings.string200“Reason A”No
PCI DateCmmRefDateThis date is used as the reference date for the PCI in other screens, such as the Post Change Orders screen.datetime“2016-05-03”
PCI ScopeCmmScopeDescDescription of scope, in regard to the change.string4000“Test”No
Source TypeCmmSourceTextIf the PCI was created from another object in CMiC Field, enter/select the type of the source. These codes can be created by checking the ‘Maintain Source Type LOV’ box in the Maintenance section of the Project Roles screen (standard Treeview path: CMiC Field > Security > Project Roles).string200“Source1”No
SourceCmmSrcIdThis field displays the object from which the PCI is created, if crated from a PM object like RFIs for example. See more details on the following article: Linking/Creating a PCI to Objectsstring30“DOCPKG-003”No
System Status CodeCmmStatCodedetermine the current status of the subcontract. (Pending, In-Progress etc.)string1“Pending”
Status Code Last Update DateCmmStatCodeUpdateDateDate the PCI Status Code was last updateddatetime“2016-07-08T09:50:06-04:00”
PCI TypeCmmTypeCodeEnter/select the PCI’s type code. Must be a valid CmiC PCI type.string4“EXT”Yes
Update % CompleteCmmUpdPcComplFlagY/N. Defaults to Y if left nullstring1“Y” / “N”No
Update Projected Amount during PostingCmmUpdProjAmtFlagSelect (Y) if the default for Change Orders is to update the job projected amount each time a Change Order is posted.

If Change Orders are already included in the amounts for your projection forecasts, then this value should be (N).
string1“Y” / “N”No
Entered ByCmmUserUsername that created the PCI recordstring30“SMUSER6”
VUuidCmmVUuidUnique Row ID. When creating a new change item, this field should be included in the body of the request but left empty. Including this parameter allows you to preview the posting after submission.string64“C6007D3BB3742CACE0530100007F8D31”
Workflow StatusCmmWorkflowStatusA workflow status field is displayed on the Subcontract Screen. The possible values (set by workflow) are:

Un-submitted, Pending, Rejected, Approved (Submitted)

Note: If Workflow is being used for subcontracts and subcontract change orders, additional workflow columns are available to be used in the SC and SCCO logs but they must be incorporated during the workflow design process. If these columns have not been built into the workflow design, they will not be populated during workflow and can be removed from logs.
“Un-submitted” / “Pending” / “Approved” / “Rejected” / “null”No
Security
HTTP
Type basic

Basic authentication

Query parameters
finder
string
ExampleselectByCompJobCMCode; companyCode=001, cmCode=EXT0001, jobCode=01JOB, typeCode=EXT
limit
integer
Example500
offset
integer
Example0
totalResults
boolean
Exampletrue
orderBy
string
ExampleCmmVUuid:desc
Responses
200

OK

Headers
Content-Type
string
Exampleapplication/vnd.oracle.adf.resourcecollection+json
example-0

Successful Response - Finder - selectByCompJobCMCode

{
  "items": [
    {
      "CmmActionCode": null,
      "CmmAllowance": "N",
      "CmmAprvFlag": "Y",
      "CmmAutoCalcMarkupFlag": "N",
      "CmmBchNum": null,
      "CmmBiditemFlag": null,
      "CmmBillCatCode": null,
      "CmmBillCode": null,
      "CmmBillMethCode": "D",
      "CmmBillName": null,
      "CmmBillPhsCode": null,
      "CmmBillRevisAmt": null,
      "CmmCalcProjAmtMethod": "A",
      "CmmChgSentToOwnerDate": null,
      "CmmChgSignedByOwnerDate": null,
      "CmmClassCode": "E",
      "CmmClvValueCode1": null,
      "CmmClvValueCode2": null,
      "CmmClvValueCode3": null,
      "CmmClvValueCode4": null,
      "CmmClvValueCode5": null,
      "CmmClvValueCode6": null,
      "CmmCode": "EXT0001",
      "CmmCompCode": "001",
      "CmmCtrlJobCode": "ALL",
      "CmmCycleNum": null,
      "CmmDueToOwnerDate": "2022-04-08T03:57:12Z",
      "CmmEffectiveEndDate": null,
      "CmmEffectiveStartDate": null,
      "CmmFundsourceCode": null,
      "CmmGlobalUpdateDate": "2023-01-31T19:07:37Z",
      "CmmImpactDays": 100,
      "CmmInvCode": null,
      "CmmIuCreateDate": "2022-04-08T03:58:11Z",
      "CmmIuUpdateDate": "2023-01-31T19:07:37Z",
      "CmmJobCode": "01JOB",
      "CmmLumpsumFlag": null,
      "CmmName": "RYAN LAW",
      "CmmOrigCmmCode": null,
      "CmmOrigOwnerAllowanceAmt": null,
      "CmmOwnerAllowanceAmt": null,
      "CmmOwnerChgCode": null,
      "CmmPendFlag": "A",
      "CmmPmFlag": "Y",
      "CmmPmObjectCode": null,
      "CmmPostContrFlag": "N",
      "CmmPostDate": null,
      "CmmPostDateDummy": null,
      "CmmPostingFlag": "UNPOSTED",
      "CmmPrepostStatCode": "APPROVED",
      "CmmPropIssuedToOwnerDate": null,
      "CmmPropSignedByOwnerDate": null,
      "CmmReasonText": null,
      "CmmRefCmmCode": null,
      "CmmRefDate": "2022-04-07",
      "CmmRfqDueDate": null,
      "CmmRfqLimitAmt": null,
      "CmmRfqProceedFlag": null,
      "CmmScopeDesc": "this is my description of this PCI",
      "CmmSourceText": null,
      "CmmSrcId": null,
      "CmmStatCode": null,
      "CmmStatCodeUpdateDate": "2022-04-08T03:59:31Z",
      "CmmTypeCode": "EXT",
      "CmmUpdPcComplFlag": "Y",
      "CmmUpdProjAmtFlag": "Y",
      "CmmUser": "EXTRACKER",
      "CmmVUuid": "DC1D414C60B307EAE05316821FACEA9A",
      "CmmWorkflowStatus": null,
      "links": [
        {
          "rel": "self",
          "href": "http://mobtest.cmiccloudr12.com:80/cmictestrti/cm-rest-api/rest/1/cmmast/DC1D414C60B307EAE05316821FACEA9A",
          "name": "cmmast",
          "kind": "item"
        },
        {
          "rel": "canonical",
          "href": "http://mobtest.cmiccloudr12.com:80/cmictestrti/cm-rest-api/rest/1/cmmast/DC1D414C60B307EAE05316821FACEA9A",
          "name": "cmmast",
          "kind": "item"
        }
      ]
    }
  ],
  "count": 1,
  "hasMore": false,
  "limit": 50,
  "offset": 0,
  "links": [
    {
      "rel": "self",
      "href": "http://mobtest.cmiccloudr12.com:80/cmictestrti/cm-rest-api/rest/1/cmmast",
      "name": "cmmast",
      "kind": "collection"
    }
  ]
}
example-1

Successful Response - Finder - selectByCompJob

{
  "items": [
    {
      "CmmActionCode": null,
      "CmmAllowance": "N",
      "CmmAprvFlag": "Y",
      "CmmAutoCalcMarkupFlag": "N",
      "CmmBchNum": null,
      "CmmBiditemFlag": null,
      "CmmBillCatCode": null,
      "CmmBillCode": null,
      "CmmBillMethCode": "D",
      "CmmBillName": null,
      "CmmBillPhsCode": null,
      "CmmBillRevisAmt": null,
      "CmmCalcProjAmtMethod": "A",
      "CmmChgSentToOwnerDate": null,
      "CmmChgSignedByOwnerDate": null,
      "CmmClassCode": "E",
      "CmmClvValueCode1": null,
      "CmmClvValueCode2": null,
      "CmmClvValueCode3": null,
      "CmmClvValueCode4": null,
      "CmmClvValueCode5": null,
      "CmmClvValueCode6": null,
      "CmmCode": "EXT0001",
      "CmmCompCode": "001",
      "CmmCtrlJobCode": "ALL",
      "CmmCycleNum": null,
      "CmmDueToOwnerDate": "2022-04-08T03:57:12Z",
      "CmmEffectiveEndDate": null,
      "CmmEffectiveStartDate": null,
      "CmmFundsourceCode": null,
      "CmmGlobalUpdateDate": "2023-01-31T19:07:37Z",
      "CmmImpactDays": 100,
      "CmmInvCode": null,
      "CmmIuCreateDate": "2022-04-08T03:58:11Z",
      "CmmIuUpdateDate": "2023-01-31T19:07:37Z",
      "CmmJobCode": "01JOB",
      "CmmLumpsumFlag": null,
      "CmmName": "RYAN LAW",
      "CmmOrigCmmCode": null,
      "CmmOrigOwnerAllowanceAmt": null,
      "CmmOwnerAllowanceAmt": null,
      "CmmOwnerChgCode": null,
      "CmmPendFlag": "A",
      "CmmPmFlag": "Y",
      "CmmPmObjectCode": null,
      "CmmPostContrFlag": "N",
      "CmmPostDate": null,
      "CmmPostDateDummy": null,
      "CmmPostingFlag": "UNPOSTED",
      "CmmPrepostStatCode": "APPROVED",
      "CmmPropIssuedToOwnerDate": null,
      "CmmPropSignedByOwnerDate": null,
      "CmmReasonText": null,
      "CmmRefCmmCode": null,
      "CmmRefDate": "2022-04-07",
      "CmmRfqDueDate": null,
      "CmmRfqLimitAmt": null,
      "CmmRfqProceedFlag": null,
      "CmmScopeDesc": "this is my description of this PCI",
      "CmmSourceText": null,
      "CmmSrcId": null,
      "CmmStatCode": null,
      "CmmStatCodeUpdateDate": "2022-04-08T03:59:31Z",
      "CmmTypeCode": "EXT",
      "CmmUpdPcComplFlag": "Y",
      "CmmUpdProjAmtFlag": "Y",
      "CmmUser": "EXTRACKER",
      "CmmVUuid": "DC1D414C60B307EAE05316821FACEA9A",
      "CmmWorkflowStatus": null,
      "links": [
        {
          "rel": "self",
          "href": "http://mobtest.cmiccloudr12.com:80/cmictestrti/cm-rest-api/rest/1/cmmast/DC1D414C60B307EAE05316821FACEA9A",
          "name": "cmmast",
          "kind": "item"
        },
        {
          "rel": "canonical",
          "href": "http://mobtest.cmiccloudr12.com:80/cmictestrti/cm-rest-api/rest/1/cmmast/DC1D414C60B307EAE05316821FACEA9A",
          "name": "cmmast",
          "kind": "item"
        }
      ]
    }
  ],
  "count": 1,
  "hasMore": false,
  "limit": 50,
  "offset": 0,
  "links": [
    {
      "rel": "self",
      "href": "http://mobtest.cmiccloudr12.com:80/cmictestrti/cm-rest-api/rest/1/cmmast",
      "name": "cmmast",
      "kind": "collection"
    }
  ]
}
object