type Query { subGraphs(ref: String!): [SubGraph!]! @hasApiKey @deprecated(reason: "Use supergraph instead") supergraph(ref: String!, isAfter: String): Supergraph! @hasApiKey } type Mutation { updateSubGraph(input: InputSubGraph!): SubGraph! @hasApiKey } union Supergraph = Unchanged | SubGraphs type Unchanged { id: ID! minDelaySeconds: Int! } type SubGraphs { id: ID! minDelaySeconds: Int! subGraphs: [SubGraph!]! } type SubGraph { id: ID! service: String! url: String wsUrl: String sdl: String! changedBy: String! changedAt: Time! } input InputSubGraph { ref: String! service: String! url: String wsUrl: String sdl: String! } scalar Time directive @hasApiKey on FIELD_DEFINITION