Messages

Entity responsible for message operations

GraphQL interface for messages.

enum MESSAGE_SENT_BY {
  ADMIN
  CANDIDATE
}

type MessageAttachment {
  id: String
  name: String
  resourcePath: String
  type: String
  size: Int
}

type Message {
  id: String
  candidateId: String
  sentBy: MESSAGE_SENT_BY
  userId: String
  text: String
  user: User
  replyToMessageId: String
  isRead: Boolean
  attachments: [MessageAttachment]
}

input MessageFilterPaging {
  filter: MessageFilter
  paging: GraphPaging
  sort: GraphSorting
}

input MessageFilter {
  candidateId: String
  contactId: String
  listingId: String
}

type Query {
  messages(input: MessageFilterPaging): [Message]
}

Usage of Query:

query message($candidateId: String, $contactId: String, $listingId: String) {
    messages(
      input: {
        filter: {
          candidateId: $candidateId
          contactId: $contactId
          listingId: $listingId
        }
      }
    ) {
      id
      candidateId
      sentBy
      text
      isRead
      attachments {
        id
        name
        resourcePath
        type
        size
      }
    }
  }

Variables:

Using either of these 3 should give an error if no variables not given.

{
"candidateId": "a50ddf78-c792-4461-b77e-c36ec444ddb5", 
"contactId": "6aec3680-a1de-4e5b-b3d9-67cb4b4727f6",
"listingId": "1840826c-08aa-419c-9779-c0a0dfcbd190"
}

Last updated