openapi: 3.1.0 info: title: CMiC Construction ERP Cost Tracking Subcontractors API description: CMiC provides enterprise ERP and project management software for the construction industry. The REST API uses OAuth 2.0 (client credentials flow) with support for third-party identity providers like Microsoft Azure. APIs enable access to project financials, subcontractor management, job costing, equipment tracking, and document management. Application-level security is enforced across all endpoints respecting company, job, project, and employee access rules. version: 1.0.0 contact: name: CMiC Developer Support url: https://developers.cmicglobal.com/ license: name: CMiC Privacy Policy url: https://cmicglobal.com/privacy-policy servers: - url: https://api.cmic.ca/rest description: CMiC REST API security: - oauth2: [] tags: - name: Subcontractors description: Subcontractor and vendor management paths: /ap-rest-api/v1/APvendor: get: operationId: listVendors summary: List vendors and subcontractors description: Returns all vendors and subcontractors in the CMiC system. tags: - Subcontractors parameters: - name: vendorType in: query schema: type: string enum: - SUBCONTRACTOR - SUPPLIER - PROFESSIONAL - name: limit in: query schema: type: integer default: 100 responses: '200': description: List of vendors content: application/json: schema: $ref: '#/components/schemas/VendorList' /ap-rest-api/v1/APvendor/{vendorId}: get: operationId: getVendor summary: Get vendor details description: Returns detailed information for a vendor or subcontractor. tags: - Subcontractors parameters: - name: vendorId in: path required: true schema: type: string responses: '200': description: Vendor details content: application/json: schema: $ref: '#/components/schemas/Vendor' components: schemas: VendorList: type: object properties: data: type: array items: $ref: '#/components/schemas/VendorSummary' total: type: integer Vendor: allOf: - $ref: '#/components/schemas/VendorSummary' - type: object properties: address: $ref: '#/components/schemas/Address' phone: type: string email: type: string taxId: type: string insurance: type: object properties: expiryDate: type: string format: date coverageAmount: type: number VendorSummary: type: object properties: vendorId: type: string vendorName: type: string vendorType: type: string status: type: string Address: type: object properties: street: type: string city: type: string state: type: string postalCode: type: string country: type: string securitySchemes: oauth2: type: oauth2 description: OAuth 2.0 client credentials for CMiC API access flows: clientCredentials: tokenUrl: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token scopes: api://cmic/.default: Full CMiC API access