Projectmates construction management software has developed a “restful” Application Programming Interface (API) to provide a framework for limited programmatic access, as opposed to the Graphical User Interface (GUI). Projectmates offers this advanced functionality as an ad-on annual service. The Advantage of the API over the Projectmates Instant Integration is that this allows the programmatic access to the system at any time, rather than via batches using the instant integration.
The Projectmates API uses the “Swagger” API design containing built in documentation. The Projectmates API is designed to perform the same basic functions as the Instant Integration. Additionally, the Projectmates API can serve to get information from other modules.
Please Note: the Projectmates API can not be used to post new information to Projectmates, circumventing the User interface. The Projectmates API can only be used to update specific information to created items in Projectmates.
Current Modules with API access
There are multiple modules available with API access as of Projectmates version 18.6. These include:
- Budget
- Contracts
- Projects
- Purchase Order
- Schedule
- User
API Commands Available
There are multiple get/post commands available with the Projectmates API. These include:
Budget
- Get Threads – Get Thread details for Project Budgets
- Get Items – Get All Budget Line Item Details for Budget Thread
- Get Item – Get Details for a Specific Budget Line Item
- Get SubItems – Get Details for All Sub Items Under a Specific Budget Line Item
- Get SubItem – Get Details for a Specific Subitem Underneath a Budget Line Item
Contracts
- Get Contracts for Project – Get Contract Details for a Project (Including Approved Subcontracts)
- Get Contracts Details – Get Contract Details for a Project
- Get Contracts Line Items – Get Line Items for a Contract
- Update Contract Payment Detail – Post changes to Contract Status and Custom Accounting Fields
Invoice
- Get Invoices for Project – Get Invoice Details for a Specific Project
- Get Approved Invoices Without Payment Status – Get Approved Invoice Details (Without Payment Status)
- Get Invoices Details (ID) – Get Specific Invoice Details
- Get Line Items (Invoice) – Get Specific Invoice Line Item Details
- Update Invoice Payment Detail – Post changes to Invoice Payment Status and Custom Accounting Fields
Projects
- Get Projects – Get Project Information
- Get Modules – Get Module Information
- Save Projects – Update Project Information
Purchase Order
- Get Purchase Orders for Project – Get All Purchase Orders for a Specific Project
- Get Purchase Order Details – Get Details on a Specific Purchase Order
- Get Line Items – Get Purchase Order Line Items
- Update Purchase Order Payment Details – Update Purchase Order Details
Schedule
- Get Schedule Threads– Get Schedule Threads
- Get Tasks – Get Schedule Tasks
- Get Task– Get a Specific Schedule Task Detail
- Get Task Users – Get Schedule Resource Assignment Information
- Get File Object Contents – Get Schedule Task File Attachment Information
User
- Get User Profile – Get User Profile Information
- Get Users – Get User Information
How is API Access granted?
An API user account must be created for Programmatic Access to the API, as well as a persistent API key generated and provided from Systemates Support. The persistent API key will be allowed for a specific IP address and will need to be reissued yearly with your annual Projectmates renewal.