scalar DateTime type Query { signIn(id: Int!, password: String!): signInPayload! signOut: signOutPayload! getMessages(count: Int = 100, page: Int = 1): [Message!]! } type Mutation { registerUser(input: registerUserInput!): User! createMessage(input: MessageInput!): createMessagePayload! updateMessage(input: updateMessageInput!): createMessagePayload! deleteMessage(id: Int!): deleteMessagePayload! } type Subscription { messageCreated: Message! messageUpdated: Message! messageDeleted: Message! }