Customer
The core customer entity. A customer only exists (ideally) once. Uniqueness is guaranteed on both of these fields:
externalId
if providedemail
type Customer {
id: ID!
externalId: ID
fullName: String!
shortName: String
email: EmailAddress!
status: CustomerStatus!
statusChangedAt: DateTime!
assignedToUser: UserActor
assignedAt: DateTime
lastIdleAt: DateTime
timelineInfo: TimelineInfo!
issues(
filters: CustomerIssuesFilter
sortBy: IssuesSort
first: Int
after: String
last: Int
before: String
): IssueConnection!
createdAt: DateTime!
createdBy: Actor!
updatedAt: DateTime!
updatedBy: Actor!
markedAsSpamAt: DateTime
markedAsSpamBy: InternalActor
}
Fields
Customer.id
● ID!
non-null scalar
Uniquely identifies a customer in Plain.
Customer.externalId
● ID
scalar
Your system's ID for this customer.
Customer.fullName
● String!
non-null scalar
The full name of the customer.
Customer.shortName
● String
scalar
An optional short name of the customer, typically their first name.
Customer.email
● EmailAddress!
non-null object
The customer's email address.
Customer.status
● CustomerStatus!
non-null enum
The customer's status.
Customer.statusChangedAt
● DateTime!
non-null object
When the customer's status was last changed.
Customer.assignedToUser
● UserActor
object
The user the customer is assigned to.
Customer.assignedAt
● DateTime
object
When the customer was assigned to a user.
Customer.lastIdleAt
● DateTime
object
When the customer was last in the
IDLE
status.
Customer.timelineInfo
● TimelineInfo!
non-null object
Metadata about the customer's timeline. This is eventually consistent with the timeline.
Customer.issues
● IssueConnection!
non-null object
A subquery to fetch the customer's issues.
Customer.issues.filters
●CustomerIssuesFilter
input
Customer.issues.sortBy
● IssuesSort
input
Customer.issues.first
● Int
scalar
Customer.issues.after
● String
scalar
Customer.issues.last
● Int
scalar
Customer.issues.before
● String
scalar
Customer.createdAt
● DateTime!
non-null object
Customer.createdBy
● Actor!
non-null union
Customer.updatedAt
● DateTime!
non-null object
Customer.updatedBy
● Actor!
non-null union
Customer.markedAsSpamAt
● DateTime
object
Customer.markedAsSpamBy
● InternalActor
union
Returned by
customer
query ● customerByEmail
query ● customerByExternalId
query
Member of
AssignCustomerToUserOutput
object ● ChangeCustomerStatusOutput
object ● CustomerActor
object ● CustomerChange
object ● CustomerEdge
object ● CustomerEmailActor
object ● CustomerSearchEdge
object ● Email
object ● Issue
object ● MarkCustomerAsSpamOutput
object ● Note
object ● UnmarkCustomerAsSpamOutput
object ● UpsertCustomerOutput
object