Project APIs

APIDescription
GET api/{m2Id}/projects?isArchived={isArchived}&applicationType={applicationType}

Get the projects by MeasureSquare ID
The return projects are sorted by last updated date. Max return count is 100.

GET api/{m2Id}/projects/count?search={search}&isArchived={isArchived}&applicationType={applicationType}

Get the project count by MeasureSquare ID

GET api/{m2Id}/projects/length/{pageLength}/page/{pageIndex}?search={search}&orderby={orderby}&isArchived={isArchived}&applicationType={applicationType}

Get the paging projects by MeasureSquare ID.

GET api/{m2Id}/projects/date/{updatedTime}/number/{number}?isArchived={isArchived}&applicationType={applicationType}

Get the new/updated projects based on time stamp by MeasureSquare ID
It is the best way that you remember the LastUpdatedOn value of the last project,
and pass this value while invoking this API next time, to prevent from missing projects.

GET api/projects/count?search={search}&distinct={distinct}&isArchived={isArchived}&applicationType={applicationType}

Get total project count in group

GET api/projects/length/{pageLength}/page/{pageIndex}?search={search}&distinct={distinct}&orderby={orderby}&isArchived={isArchived}&applicationType={applicationType}

Get paging projects in group

GET api/projects/date/{updatedTime}/number/{number}?isArchived={isArchived}&applicationType={applicationType}

Get the new/updated projects based on time stamp
It is the best way that you remember the LastUpdatedOn value of the last project,
and pass this value while invoking this API next time, to prevent from missing projects.

GET api/projects/{projectId}/accessToken?readOnly={readOnly}

Get project access token

GET api/projects/{projectId}?getProductInfo={getProductInfo}

Get project info, inclue Customer Info/Job Site Contact and Address/Management/Project products

GET api/projects/{projectId}/layers

Get layer info, include Rooms(Wall/Window/Door/Elevation) and Stairs

GET api/projects/{projectId}/layerAssignment

get product assignment info of each Room and Stair

GET api/projects/{projectId}/worksheets

Get project worksheets

GET api/projects/{projectId}/estimation?withCutImage={withCutImage}

Get project estimation

GET api/projects/{projectId}/report?sections={sections}

Get project report

GET api/projects/{projectId}/download?revision={revision}

Get project file (application/fez)

GET api/projects/{projectId}/images

Get a zip file include all layer images (application/zip)

GET api/projects/{projectId}/layers/{layerIndex}/image?width={width}&height={height}

Get layer image (image/png)

GET api/projects/{projectId}/pdf?printProfileId={printProfileId}

Get project pdf (application/pdf)
PrintProfileId is an optional parameter, in most case, you don't need to pass it.
Cannot call repeatedly within 1 second. And a maximum of 10 calls can be made within 1 minute.

GET api/projects/{projectId}/fsde

Get project fsde file (text/xml)

GET api/projects/{projectId}/dxf

Get project dxf file (application/dxf)

GET api/projects/{projectId}/webviewer?showQty={showQty}&showAreaPerimeter={showAreaPerimeter}&showDimensions={showDimensions}&showBluePrint={showBluePrint}&showEmptyTakeoff={showEmptyTakeoff}

Get project viewer url

GET api/projects/{projectId}/sharedusers

Get project shared users list

GET api/projects/{projectId}/url?revision={revision}

Get project file url

POST api/{m2Id}/projects

Create or update project for MeasureSquare ID

POST api/{m2Id}/projects/{projectId}/clone

Clone one project from designated project