Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Should I write two times each objects as 'input' and 'type' in a graphql schema file

I have to use a Java object in GraphQL in response as well as in request.

Should I have to write two times each objects as 'input' and 'type' in a GraphQL schema file? For getting that object in request as well as in response.

Should I define the same object two times with input and type?

file: test.graphqls

input Employee {
  id: Integer
  name: String
  dept: String
  active: String
}

type Employee {
  id: Integer
  name: String
  dept: String
  active: String
}
like image 270
Pranav Avatar asked Feb 14 '18 12:02

Pranav


1 Answers

Yes, because the type system rules are very different for input and output types. Input types can not be unions, can not implement interfaces etc, so you can not simply use the same definition for both purposes.

Moreover, you must give each type a unique name. So it should be Employee and EmployeeInput for example.

like image 75
kaqqao Avatar answered Oct 02 '22 07:10

kaqqao