Documentation
  1. API
  • Visitor Management API
    • Getting Started
      • Overview
    • API Reference
      • Logs
        • Get filtered Events logs
      • Accesses
        • Create new QR Access
      • Users
        • Create new Property Manager
        • Update existing Property Manager
    • External Visits
      • External NFC Visit
  • Visitor Management Webhooks
    • Getting started with webhooks
    • Security & Signature Verification
  • Work Permit DAMAC integration
    • API
      • Create contractor
        POST
      • Revoke contractor
        PATCH
      • Create NOC / fit-out permit
        POST
      • Get permit (reconciliation)
        GET
      • Update permit — dates / NOC
        PATCH
      • Revoke or reissue a permit pass
        PATCH
    • Webhooks
      • passes.permits.issued
      • passes.permits.updated
      • passes.permits.expiring
      • passes.permits.expired
      • passes.permits.scanned
      • passes.permits.firstScanned
      • passes.permits.lastScanned
      • communityContractors.approved
      • communityContractors.removed
  1. API

Create contractor

POST
/communityContractors
[C-01 / C-02] Onboard a contractor.
Creates a contractor inside the DAMAC community the API key is scoped to (no community id in the payload). The contractor is created in a Pending state (approved: false) and only becomes active after a Community Admin approves it from the dashboard — approval emits communityContractors.approved.
Duplicates are rejected: email is globally unique, phone is unique per community, and integrations.damac.salesforceId is unique per community (→ 409 Conflict).
Trade license (and optional insurance / safety certifications) are accepted as a hosted URL or a base64 file and stored encrypted; DAMAC-owned documents are kept under the integrations.damac namespace.

Request

Body Params application/jsonRequired

Examples

Responses

🟢201Created
application/json
Contractor created (Pending).
Bodyapplication/json

🟠400Bad Request
🟠401Unauthorized
🟠409
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location '/communityContractors' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Ahmed Contracting LLC Rep",
    "email": "ops@ahmed-contracting.ae",
    "phone": "+971500000000",
    "company": {
        "companyName": "Ahmed Contracting LLC",
        "tradeLicense": {
            "type": "url",
            "url": "https://files.example.com/license.pdf"
        },
        "tradeLicenseExpiryDate": "2027-03-31"
    },
    "integrations": {
        "damac": {
            "salesforceId": "a0B5g000000ABCDEAW"
        }
    }
}'
Response Response Example
201 - Success Example
{
    "_id": "66f0a1b2c3d4e5f600000001",
    "name": "Ahmed Contracting LLC Rep",
    "email": "ops@ahmed-contracting.ae",
    "phone": "+971500000000",
    "approved": false,
    "communitiesIds": [
        "6840270a99ca91002185fcd6"
    ],
    "company": {
        "companyName": "Ahmed Contracting LLC",
        "tradeLicense": {
            "publicUrl": "https://cdn.buzz-in.co/public/communityContractors/license.pdf"
        }
    }
}
Previous
Security & Signature Verification
Next
Revoke contractor
Built with