pupraider.net/schema.graphql
2024-04-22 17:39:33 +00:00

54 lines
907 B
GraphQL

type Answer {
didUpvote: Boolean
id: ID!
isOwnedByMe: Boolean
name: String
pseudonym: String!
text: String!
upvoteCount: Int!
}
type AnswerConnection {
edges: [AnswerEdge]
pageInfo: PageInfo!
}
type AnswerEdge {
cursor: Cursor!
node: Answer!
}
scalar Cursor
type Episode {
active: Boolean!
answerCount: Int!
answers(after: Cursor, first: Int): AnswerConnection!
description: String!
id: ID!
title: String!
}
type Mutation {
authenticate(password: String): String
deleteResponse(episode: ID!, response: ID!): Boolean
sendResponse(episode: ID!, name: String, text: String!): Answer
setUpvote(episode: ID!, response: ID!, upvote: Boolean!): Answer
}
type PageInfo {
endCursor: Cursor
hasNextPage: Boolean!
hasPreviousPage: Boolean!
startCursor: Cursor
}
type Query {
episode(id: ID!): Episode
self: User
}
type User {
admin: Boolean!
id: ID!
}