123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- schema
- @link(url: "https://specs.apollo.dev/link/v1.0")
- @link(url: "https://specs.apollo.dev/join/v0.3", for: EXECUTION)
- {
- query: Query
- mutation: Mutation
- }
- directive @join__enumValue(graph: join__Graph!) repeatable on ENUM_VALUE
- directive @join__field(graph: join__Graph, requires: join__FieldSet, provides: join__FieldSet, type: String, external: Boolean, override: String, usedOverridden: Boolean) repeatable on FIELD_DEFINITION | INPUT_FIELD_DEFINITION
- directive @join__graph(name: String!, url: String!) on ENUM_VALUE
- directive @join__implements(graph: join__Graph!, interface: String!) repeatable on OBJECT | INTERFACE
- directive @join__type(graph: join__Graph!, key: join__FieldSet, extension: Boolean! = false, resolvable: Boolean! = true, isInterfaceObject: Boolean! = false) repeatable on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT | SCALAR
- directive @join__unionMember(graph: join__Graph!, member: String!) repeatable on UNION
- directive @link(url: String, as: String, for: link__Purpose, import: [link__Import]) repeatable on SCHEMA
- type AccessTokenResponse
- @join__type(graph: AUTH)
- {
- access_token: String!
- id_token: String!
- token_type: String!
- expires_in: Int!
- refresh_token: String!
- refresh_expires_in: Int!
- not_before_policy: Int!
- session_state: String!
- scope: [String!]!
- }
- type Country
- @join__type(graph: SPORTS)
- {
- name: String!
- image: String
- }
- input Credentials
- @join__type(graph: AUTH)
- {
- username: String!
- password: String!
- }
- scalar DateTime
- @join__type(graph: AUTH)
- @join__type(graph: SPORTS)
- enum ErrorAuth
- @join__type(graph: AUTH)
- {
- ILLEGAL_USERNAME @join__enumValue(graph: AUTH)
- ALREADY_EXISTS @join__enumValue(graph: AUTH)
- INVALID_ARGUMENT @join__enumValue(graph: AUTH)
- }
- scalar Int64
- @join__type(graph: SPORTS)
- scalar join__FieldSet
- enum join__Graph {
- AUTH @join__graph(name: "auth", url: "https://auth.craft.beejay.kim")
- SPORTS @join__graph(name: "sports", url: "https://sports.craft.beejay.kim")
- }
- scalar JSON
- @join__type(graph: SPORTS)
- type Lane
- @join__type(graph: SPORTS)
- {
- key: String!
- value: Float!
- }
- type League
- @join__type(graph: SPORTS, key: "id")
- {
- id: Int64!
- name: String!
- image: String
- country: Country
- }
- scalar link__Import
- enum link__Purpose {
- """
- `SECURITY` features provide metadata necessary to securely resolve fields.
- """
- SECURITY
- """
- `EXECUTION` features provide metadata necessary for operation execution.
- """
- EXECUTION
- }
- type Market
- @join__type(graph: SPORTS)
- {
- match_id: Int64!
- market_id: Int64!
- status: Boolean!
- updated_at: DateTime!
- spreading: [MarketPoint!]!
- }
- type MarketPoint
- @join__type(graph: SPORTS)
- {
- value: Float
- status: Boolean!
- lanes: [Lane!]!
- }
- type Match
- @join__type(graph: SPORTS, key: "id")
- {
- id: Int64!
- sport: Sport!
- status: Int64!
- period: Int64!
- league: League!
- home_team: Team!
- away_team: Team!
- time: DateTime!
- timer: String
- score: JSON
- updated_at: DateTime!
- markets: [Market!]!
- }
- type MatchConnection
- @join__type(graph: SPORTS)
- {
- nodes: [Match!]!
- page_info: PageInfo!
- }
- input MatchCriteria
- @join__type(graph: SPORTS)
- {
- type: MatchType!
- sport: Sport
- league: Int
- }
- enum MatchType
- @join__type(graph: SPORTS)
- {
- Basic @join__enumValue(graph: SPORTS)
- Special @join__enumValue(graph: SPORTS)
- Live @join__enumValue(graph: SPORTS)
- Hybrid @join__enumValue(graph: SPORTS)
- }
- type Mutation
- @join__type(graph: AUTH)
- {
- Signup(credentials: Credentials!): String
- Login(credentials: Credentials!): AccessTokenResponse
- Logout(token: String!): Boolean!
- RefreshToken(token: String!): AccessTokenResponse
- }
- interface Node
- @join__type(graph: AUTH)
- {
- id: ID!
- }
- type PageInfo
- @join__type(graph: SPORTS)
- {
- total: Int!
- start_cursor: String
- end_cursor: String
- has_next_page: Boolean!
- has_previous_page: Boolean!
- }
- type Query
- @join__type(graph: AUTH)
- @join__type(graph: SPORTS)
- {
- User(id: ID!): User @join__field(graph: AUTH)
- Match(id: Int64!): Match @join__field(graph: SPORTS)
- Markets(match_id: Int64!): [Market!]! @join__field(graph: SPORTS)
- MatchList(after: String, before: String, first: Int, last: Int, reverse: Boolean = false, criteria: MatchCriteria!): MatchConnection! @join__field(graph: SPORTS)
- }
- enum Sport
- @join__type(graph: SPORTS)
- {
- soccer @join__enumValue(graph: SPORTS)
- basketball @join__enumValue(graph: SPORTS)
- baseball @join__enumValue(graph: SPORTS)
- volleyball @join__enumValue(graph: SPORTS)
- icehockey @join__enumValue(graph: SPORTS)
- tennis @join__enumValue(graph: SPORTS)
- esports @join__enumValue(graph: SPORTS)
- tabletennis @join__enumValue(graph: SPORTS)
- handball @join__enumValue(graph: SPORTS)
- americanfootball @join__enumValue(graph: SPORTS)
- boxing @join__enumValue(graph: SPORTS)
- }
- type Team
- @join__type(graph: SPORTS, key: "id")
- {
- id: Int64!
- name: String!
- image: String
- }
- type User implements Node
- @join__implements(graph: AUTH, interface: "Node")
- @join__type(graph: AUTH, key: "id")
- {
- id: ID!
- username: String!
- created_at: DateTime!
- enabled: Boolean!
- email_verified: Boolean!
- first_name: String
- last_name: String
- email: String
- level: Int!
- }
|