Skip to main content
mutation EngagementCreate($input: EngagementCreateInput!) {
  engagementCreate(input: $input) {
    engagement {
      createdAt
      id
      owner
      shortId
      type
      clients {
        email
        firstName
        lastName
        middleName
        phoneNumber
      }
      ... on PurchaseEngagement {
        closingDate
        property {
          address {
            city
            country
            latitude
            longitude
            postalCode
            province
            shortTitle
            street
            title
            unitNumber
          }
        }
        status {
          state
        }
      }
      ... on RefinanceEngagement {
        closingDate
        property {
          address {
            city
            country
            latitude
            longitude
            postalCode
            province
            shortTitle
            street
            title
            unitNumber
          }
        }
        status {
          state
        }
      }
    }
    userErrors {
      code
      field
      message
    }
  }
}
{
  "data": {
    "engagementCreate": {
      "engagement": {
        "createdAt": "2025-01-15T10:30:00Z",
        "id": "gid://ownright/Engagement/1",
        "owner": "Jane Doe",
        "shortId": "ABC-123",
        "type": "PURCHASE",
        "clients": [
          {
            "email": "[email protected]",
            "firstName": "Jane",
            "lastName": "Doe",
            "middleName": "M",
            "phoneNumber": "+14165551234"
          }
        ],
        "closingDate": "2025-06-15",
        "property": {
          "address": {
            "city": "Toronto",
            "country": "CANADA",
            "latitude": 1,
            "longitude": 1,
            "postalCode": "M5V 1A1",
            "province": "ALBERTA",
            "shortTitle": "123 Main St, Toronto",
            "street": "123 Main St",
            "title": "123 Main St, Toronto",
            "unitNumber": "Suite 100"
          }
        },
        "status": {
          "state": "CANCELLED"
        }
      },
      "userErrors": []
    }
  }
}

Mutation field

engagementCreate

Arguments

input
EngagementCreateInput!
required
Input required to create an engagement.
Exactly one of the following fields must be provided.

Return fields

engagement
Engagement
The created engagement.
userErrors
[EngagementCreateUserError!]!
required
List of errors that occurred while executing the mutation.

Types

enum Country {
  CANADA # Represents Canada the country.
}

enum EngagementCreateUserErrorCode {
  FILE_RECORD_NOT_FOUND # One of the supplied file records could not be found.
  FILE_RECORD_NOT_STAGED # One of the supplied file records is not staged.
  INVALID_ENGAGEMENT_INPUT # The supplied engagement input is invalid.
  TEAM_MEMBER_NOT_FOUND # The specified team member could not be found.
}

enum EngagementType {
  PURCHASE # A purchase engagement.
  REFINANCE # A refinance engagement.
}

enum Province {
  ALBERTA # Represents Alberta the province.
  BRITISH_COLUMBIA # Represents British Columbia the province.
  MANITOBA # Represents Manitoba the province.
  NEWFOUNDLAND_AND_LABRADOR # Represents Newfoundland And Labrador the province.
  NEW_BRUNSWICK # Represents New Brunswick the province.
  NORTHWEST_TERRITORIES # Represents Northwest Territories the province.
  NOVA_SCOTIA # Represents Nova Scotia the province.
  NUNAVUT # Represents Nunavut the province.
  ONTARIO # Represents Ontario the province.
  PRINCE_EDWARD_ISLAND # Represents Prince Edward Island the province.
  QUEBEC # Represents Quebec the province.
  SASKATCHEWAN # Represents Saskatchewan the province.
  YUKON # Represents Yukon the province.
}

scalar E164PhoneNumber # A valid phone number string in the E.164 format.
scalar EngagementGID # A global identifier for a Engagement object in format of 'gid://ownright/Engagement/ID'.
scalar FileRecordGID # A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
scalar ISO8601Date # An ISO 8601-encoded date
scalar ISO8601DateTime # An ISO 8601-encoded datetime
scalar TeamMemberGID # A global identifier for a TeamMember object in format of 'gid://ownright/TeamMember/ID'.