Unexpected variables in variableValues error

Hello Experts,
I ran into an issue while using Apollo Android Client and wanted to check if i am doing something wrong while performing the mutation.

Here is how my gql looks like

mutation UpdateInMultipleTable ($id:String,$name: String, $employee_id:[Int!],$firstname: String,$Inc_employee_id: Int){
    update_foo(where: {id: {_ilike: $id}}, _set: {name: $name}) {
        returning {
            id
            name
        }
    }
    update_pt_employees_26(where: {employee_id: {_in: $employee_id}}, _set: {firstname: $firstname}, _inc: {employee_id: $Inc_employee_id}) {
        affected_rows
        returning {
            firstname
        }
    }
}

And the corresponding generated class for this looks like as follows

public final class UpdateInMultipleTableMutation implements Mutation<UpdateInMultipleTableMutation.Data, UpdateInMultipleTableMutation.Data, UpdateInMultipleTableMutation.Variables> {
  public static final String OPERATION_ID = "5d697817450ebcdd8bd62a3cba9a04938862637e0d906d28b5ee992393e1c76b";

  public static final String QUERY_DOCUMENT = QueryDocumentMinifier.minify(
    "mutation UpdateInMultipleTable($id:String, $name: String, $employee_id:[Int!], $firstname: String, $Inc_employee_id: Int) {\n"
        + "  update_foo(where: {id: {_ilike: $id}}, _set: {name: $name}) {\n"
        + "    __typename\n"
        + "    returning {\n"
        + "      __typename\n"
        + "      id\n"
        + "      name\n"
        + "    }\n"
        + "  }\n"
        + "  update_pt_employees_26(where: {employee_id: {_in: $employee_id}}, _set: {firstname: $firstname}, _inc: {employee_id: $Inc_employee_id}) {\n"
        + "    __typename\n"
        + "    affected_rows\n"
        + "    returning {\n"
        + "      __typename\n"
        + "      firstname\n"
        + "    }\n"
        + "  }\n"
        + "}"
  );

  public static final OperationName OPERATION_NAME = new OperationName() {
    @Override
    public String name() {
      return "UpdateInMultipleTable";
    }
  };

  private final UpdateInMultipleTableMutation.Variables variables;

  public UpdateInMultipleTableMutation(@NotNull Input<String> id, @NotNull Input<String> name,
      @NotNull Input<List<Integer>> employee_id, @NotNull Input<String> firstname,
      @NotNull Input<Integer> inc_employee_id) {
    Utils.checkNotNull(id, "id == null");
    Utils.checkNotNull(name, "name == null");
    Utils.checkNotNull(employee_id, "employee_id == null");
    Utils.checkNotNull(firstname, "firstname == null");
    Utils.checkNotNull(inc_employee_id, "inc_employee_id == null");
    variables = new UpdateInMultipleTableMutation.Variables(id, name, employee_id, firstname, inc_employee_id);
  }

  @Override
  public String operationId() {
    return OPERATION_ID;
  }

  @Override
  public String queryDocument() {
    return QUERY_DOCUMENT;
  }

  @Override
  public UpdateInMultipleTableMutation.Data wrapData(UpdateInMultipleTableMutation.Data data) {
    return data;
  }

  @Override
  public UpdateInMultipleTableMutation.Variables variables() {
    return variables;
  }

  @Override
  public ResponseFieldMapper<UpdateInMultipleTableMutation.Data> responseFieldMapper() {
    return new Data.Mapper();
  }

  public static Builder builder() {
    return new Builder();
  }

  @Override
  public OperationName name() {
    return OPERATION_NAME;
  }

  @Override
  @NotNull
  public Response<UpdateInMultipleTableMutation.Data> parse(@NotNull final BufferedSource source,
      @NotNull final ScalarTypeAdapters scalarTypeAdapters) throws IOException {
    return SimpleOperationResponseParser.parse(source, this, scalarTypeAdapters);
  }

  @Override
  @NotNull
  public Response<UpdateInMultipleTableMutation.Data> parse(@NotNull final ByteString byteString,
      @NotNull final ScalarTypeAdapters scalarTypeAdapters) throws IOException {
    return parse(new Buffer().write(byteString), scalarTypeAdapters);
  }

  @Override
  @NotNull
  public Response<UpdateInMultipleTableMutation.Data> parse(@NotNull final BufferedSource source)
      throws IOException {
    return parse(source, ScalarTypeAdapters.DEFAULT);
  }

  @Override
  @NotNull
  public Response<UpdateInMultipleTableMutation.Data> parse(@NotNull final ByteString byteString)
      throws IOException {
    return parse(byteString, ScalarTypeAdapters.DEFAULT);
  }

  @Override
  @NotNull
  public ByteString composeRequestBody(@NotNull final ScalarTypeAdapters scalarTypeAdapters) {
    return OperationRequestBodyComposer.compose(this, false, true, scalarTypeAdapters);
  }

  @NotNull
  @Override
  public ByteString composeRequestBody() {
    return OperationRequestBodyComposer.compose(this, false, true, ScalarTypeAdapters.DEFAULT);
  }

  @Override
  @NotNull
  public ByteString composeRequestBody(final boolean autoPersistQueries,
      final boolean withQueryDocument, @NotNull final ScalarTypeAdapters scalarTypeAdapters) {
    return OperationRequestBodyComposer.compose(this, autoPersistQueries, withQueryDocument, scalarTypeAdapters);
  }

  public static final class Builder {
    private Input<String> id = Input.absent();

    private Input<String> name = Input.absent();

    private Input<List<Integer>> employee_id = Input.absent();

    private Input<String> firstname = Input.absent();

    private Input<Integer> inc_employee_id = Input.absent();

    Builder() {
    }

    public Builder id(@Nullable String id) {
      this.id = Input.fromNullable(id);
      return this;
    }

    public Builder name(@Nullable String name) {
      this.name = Input.fromNullable(name);
      return this;
    }

    public Builder employee_id(@Nullable List<Integer> employee_id) {
      this.employee_id = Input.fromNullable(employee_id);
      return this;
    }

    public Builder firstname(@Nullable String firstname) {
      this.firstname = Input.fromNullable(firstname);
      return this;
    }

    public Builder inc_employee_id(@Nullable Integer inc_employee_id) {
      this.inc_employee_id = Input.fromNullable(inc_employee_id);
      return this;
    }

    public Builder idInput(@NotNull Input<String> id) {
      this.id = Utils.checkNotNull(id, "id == null");
      return this;
    }

    public Builder nameInput(@NotNull Input<String> name) {
      this.name = Utils.checkNotNull(name, "name == null");
      return this;
    }

    public Builder employee_idInput(@NotNull Input<List<Integer>> employee_id) {
      this.employee_id = Utils.checkNotNull(employee_id, "employee_id == null");
      return this;
    }

    public Builder firstnameInput(@NotNull Input<String> firstname) {
      this.firstname = Utils.checkNotNull(firstname, "firstname == null");
      return this;
    }

    public Builder inc_employee_idInput(@NotNull Input<Integer> inc_employee_id) {
      this.inc_employee_id = Utils.checkNotNull(inc_employee_id, "inc_employee_id == null");
      return this;
    }

    public UpdateInMultipleTableMutation build() {
      return new UpdateInMultipleTableMutation(id, name, employee_id, firstname, inc_employee_id);
    }
  }

  public static final class Variables extends Operation.Variables {
    private final Input<String> id;

    private final Input<String> name;

    private final Input<List<Integer>> employee_id;

    private final Input<String> firstname;

    private final Input<Integer> inc_employee_id;

    private final transient Map<String, Object> valueMap = new LinkedHashMap<>();

    Variables(Input<String> id, Input<String> name, Input<List<Integer>> employee_id,
        Input<String> firstname, Input<Integer> inc_employee_id) {
      this.id = id;
      this.name = name;
      this.employee_id = employee_id;
      this.firstname = firstname;
      this.inc_employee_id = inc_employee_id;
      if (id.defined) {
        this.valueMap.put("id", id.value);
      }
      if (name.defined) {
        this.valueMap.put("name", name.value);
      }
      if (employee_id.defined) {
        this.valueMap.put("employee_id", employee_id.value);
      }
      if (firstname.defined) {
        this.valueMap.put("firstname", firstname.value);
      }
      if (inc_employee_id.defined) {
        this.valueMap.put("Inc_employee_id", inc_employee_id.value);
      }
    }

    public Input<String> id() {
      return id;
    }

    public Input<String> name() {
      return name;
    }

    public Input<List<Integer>> employee_id() {
      return employee_id;
    }

    public Input<String> firstname() {
      return firstname;
    }

    public Input<Integer> inc_employee_id() {
      return inc_employee_id;
    }

    @Override
    public Map<String, Object> valueMap() {
      return Collections.unmodifiableMap(valueMap);
    }

    @Override
    public InputFieldMarshaller marshaller() {
      return new InputFieldMarshaller() {
        @Override
        public void marshal(InputFieldWriter writer) throws IOException {
          if (id.defined) {
            writer.writeString("id", id.value);
          }
          if (name.defined) {
            writer.writeString("name", name.value);
          }
          if (employee_id.defined) {
            writer.writeList("employee_id", employee_id.value != null ? new InputFieldWriter.ListWriter() {
              @Override
              public void write(InputFieldWriter.ListItemWriter listItemWriter) throws IOException {
                for (final Integer $item : employee_id.value) {
                  listItemWriter.writeInt($item);
                }
              }
            } : null);
          }
          if (firstname.defined) {
            writer.writeString("firstname", firstname.value);
          }
          if (inc_employee_id.defined) {
            writer.writeInt("inc_employee_id", inc_employee_id.value);
          }
        }
      };
    }
  }

  /**
   * Data from the response after executing this GraphQL operation
   */
  public static class Data implements Operation.Data {
    static final ResponseField[] $responseFields = {
      ResponseField.forObject("update_foo", "update_foo", new UnmodifiableMapBuilder<String, Object>(2)
      .put("where", new UnmodifiableMapBuilder<String, Object>(1)
        .put("id", new UnmodifiableMapBuilder<String, Object>(1)
          .put("_ilike", new UnmodifiableMapBuilder<String, Object>(2)
            .put("kind", "Variable")
            .put("variableName", "id")
            .build())
          .build())
        .build())
      .put("_set", new UnmodifiableMapBuilder<String, Object>(1)
        .put("name", new UnmodifiableMapBuilder<String, Object>(2)
          .put("kind", "Variable")
          .put("variableName", "name")
          .build())
        .build())
      .build(), true, Collections.<ResponseField.Condition>emptyList()),
      ResponseField.forObject("update_pt_employees_26", "update_pt_employees_26", new UnmodifiableMapBuilder<String, Object>(3)
      .put("where", new UnmodifiableMapBuilder<String, Object>(1)
        .put("employee_id", new UnmodifiableMapBuilder<String, Object>(1)
          .put("_in", new UnmodifiableMapBuilder<String, Object>(2)
            .put("kind", "Variable")
            .put("variableName", "employee_id")
            .build())
          .build())
        .build())
      .put("_set", new UnmodifiableMapBuilder<String, Object>(1)
        .put("firstname", new UnmodifiableMapBuilder<String, Object>(2)
          .put("kind", "Variable")
          .put("variableName", "firstname")
          .build())
        .build())
      .put("_inc", new UnmodifiableMapBuilder<String, Object>(1)
        .put("employee_id", new UnmodifiableMapBuilder<String, Object>(2)
          .put("kind", "Variable")
          .put("variableName", "Inc_employee_id")
          .build())
        .build())
      .build(), true, Collections.<ResponseField.Condition>emptyList())
    };

    final @Nullable Update_foo update_foo;

    final @Nullable Update_pt_employees_26 update_pt_employees_26;

    private transient volatile String $toString;

    private transient volatile int $hashCode;

    private transient volatile boolean $hashCodeMemoized;

    public Data(@Nullable Update_foo update_foo,
        @Nullable Update_pt_employees_26 update_pt_employees_26) {
      this.update_foo = update_foo;
      this.update_pt_employees_26 = update_pt_employees_26;
    }

    /**
     * update data of the table: "foo"
     */
    public @Nullable Update_foo update_foo() {
      return this.update_foo;
    }

    /**
     * update data of the table: "pt_employees_26"
     */
    public @Nullable Update_pt_employees_26 update_pt_employees_26() {
      return this.update_pt_employees_26;
    }

    @SuppressWarnings({"rawtypes", "unchecked"})
    public ResponseFieldMarshaller marshaller() {
      return new ResponseFieldMarshaller() {
        @Override
        public void marshal(ResponseWriter writer) {
          writer.writeObject($responseFields[0], update_foo != null ? update_foo.marshaller() : null);
          writer.writeObject($responseFields[1], update_pt_employees_26 != null ? update_pt_employees_26.marshaller() : null);
        }
      };
    }

    @Override
    public String toString() {
      if ($toString == null) {
        $toString = "Data{"
          + "update_foo=" + update_foo + ", "
          + "update_pt_employees_26=" + update_pt_employees_26
          + "}";
      }
      return $toString;
    }

    @Override
    public boolean equals(Object o) {
      if (o == this) {
        return true;
      }
      if (o instanceof Data) {
        Data that = (Data) o;
        return ((this.update_foo == null) ? (that.update_foo == null) : this.update_foo.equals(that.update_foo))
         && ((this.update_pt_employees_26 == null) ? (that.update_pt_employees_26 == null) : this.update_pt_employees_26.equals(that.update_pt_employees_26));
      }
      return false;
    }

    @Override
    public int hashCode() {
      if (!$hashCodeMemoized) {
        int h = 1;
        h *= 1000003;
        h ^= (update_foo == null) ? 0 : update_foo.hashCode();
        h *= 1000003;
        h ^= (update_pt_employees_26 == null) ? 0 : update_pt_employees_26.hashCode();
        $hashCode = h;
        $hashCodeMemoized = true;
      }
      return $hashCode;
    }

    public static final class Mapper implements ResponseFieldMapper<Data> {
      final Update_foo.Mapper update_fooFieldMapper = new Update_foo.Mapper();

      final Update_pt_employees_26.Mapper update_pt_employees_26FieldMapper = new Update_pt_employees_26.Mapper();

      @Override
      public Data map(ResponseReader reader) {
        final Update_foo update_foo = reader.readObject($responseFields[0], new ResponseReader.ObjectReader<Update_foo>() {
          @Override
          public Update_foo read(ResponseReader reader) {
            return update_fooFieldMapper.map(reader);
          }
        });
        final Update_pt_employees_26 update_pt_employees_26 = reader.readObject($responseFields[1], new ResponseReader.ObjectReader<Update_pt_employees_26>() {
          @Override
          public Update_pt_employees_26 read(ResponseReader reader) {
            return update_pt_employees_26FieldMapper.map(reader);
          }
        });
        return new Data(update_foo, update_pt_employees_26);
      }
    }
  }

  /**
   * response of any mutation on the table "foo"
   */
  public static class Update_foo {
    static final ResponseField[] $responseFields = {
      ResponseField.forString("__typename", "__typename", null, false, Collections.<ResponseField.Condition>emptyList()),
      ResponseField.forList("returning", "returning", null, false, Collections.<ResponseField.Condition>emptyList())
    };

    final @NotNull String __typename;

    final @NotNull List<Returning> returning;

    private transient volatile String $toString;

    private transient volatile int $hashCode;

    private transient volatile boolean $hashCodeMemoized;

    public Update_foo(@NotNull String __typename, @NotNull List<Returning> returning) {
      this.__typename = Utils.checkNotNull(__typename, "__typename == null");
      this.returning = Utils.checkNotNull(returning, "returning == null");
    }

    public @NotNull String __typename() {
      return this.__typename;
    }

    /**
     * data from the rows affected by the mutation
     */
    public @NotNull List<Returning> returning() {
      return this.returning;
    }

    @SuppressWarnings({"rawtypes", "unchecked"})
    public ResponseFieldMarshaller marshaller() {
      return new ResponseFieldMarshaller() {
        @Override
        public void marshal(ResponseWriter writer) {
          writer.writeString($responseFields[0], __typename);
          writer.writeList($responseFields[1], returning, new ResponseWriter.ListWriter() {
            @Override
            public void write(List items, ResponseWriter.ListItemWriter listItemWriter) {
              for (Object item : items) {
                listItemWriter.writeObject(((Returning) item).marshaller());
              }
            }
          });
        }
      };
    }

    @Override
    public String toString() {
      if ($toString == null) {
        $toString = "Update_foo{"
          + "__typename=" + __typename + ", "
          + "returning=" + returning
          + "}";
      }
      return $toString;
    }

    @Override
    public boolean equals(Object o) {
      if (o == this) {
        return true;
      }
      if (o instanceof Update_foo) {
        Update_foo that = (Update_foo) o;
        return this.__typename.equals(that.__typename)
         && this.returning.equals(that.returning);
      }
      return false;
    }

    @Override
    public int hashCode() {
      if (!$hashCodeMemoized) {
        int h = 1;
        h *= 1000003;
        h ^= __typename.hashCode();
        h *= 1000003;
        h ^= returning.hashCode();
        $hashCode = h;
        $hashCodeMemoized = true;
      }
      return $hashCode;
    }

    public static final class Mapper implements ResponseFieldMapper<Update_foo> {
      final Returning.Mapper returningFieldMapper = new Returning.Mapper();

      @Override
      public Update_foo map(ResponseReader reader) {
        final String __typename = reader.readString($responseFields[0]);
        final List<Returning> returning = reader.readList($responseFields[1], new ResponseReader.ListReader<Returning>() {
          @Override
          public Returning read(ResponseReader.ListItemReader listItemReader) {
            return listItemReader.readObject(new ResponseReader.ObjectReader<Returning>() {
              @Override
              public Returning read(ResponseReader reader) {
                return returningFieldMapper.map(reader);
              }
            });
          }
        });
        return new Update_foo(__typename, returning);
      }
    }
  }

  /**
   * columns and relationships of "foo"
   */
  public static class Returning {
    static final ResponseField[] $responseFields = {
      ResponseField.forString("__typename", "__typename", null, false, Collections.<ResponseField.Condition>emptyList()),
      ResponseField.forString("id", "id", null, false, Collections.<ResponseField.Condition>emptyList()),
      ResponseField.forString("name", "name", null, true, Collections.<ResponseField.Condition>emptyList())
    };

    final @NotNull String __typename;

    final @NotNull String id;

    final @Nullable String name;

    private transient volatile String $toString;

    private transient volatile int $hashCode;

    private transient volatile boolean $hashCodeMemoized;

    public Returning(@NotNull String __typename, @NotNull String id, @Nullable String name) {
      this.__typename = Utils.checkNotNull(__typename, "__typename == null");
      this.id = Utils.checkNotNull(id, "id == null");
      this.name = name;
    }

    public @NotNull String __typename() {
      return this.__typename;
    }

    public @NotNull String id() {
      return this.id;
    }

    public @Nullable String name() {
      return this.name;
    }

    @SuppressWarnings({"rawtypes", "unchecked"})
    public ResponseFieldMarshaller marshaller() {
      return new ResponseFieldMarshaller() {
        @Override
        public void marshal(ResponseWriter writer) {
          writer.writeString($responseFields[0], __typename);
          writer.writeString($responseFields[1], id);
          writer.writeString($responseFields[2], name);
        }
      };
    }

    @Override
    public String toString() {
      if ($toString == null) {
        $toString = "Returning{"
          + "__typename=" + __typename + ", "
          + "id=" + id + ", "
          + "name=" + name
          + "}";
      }
      return $toString;
    }

    @Override
    public boolean equals(Object o) {
      if (o == this) {
        return true;
      }
      if (o instanceof Returning) {
        Returning that = (Returning) o;
        return this.__typename.equals(that.__typename)
         && this.id.equals(that.id)
         && ((this.name == null) ? (that.name == null) : this.name.equals(that.name));
      }
      return false;
    }

    @Override
    public int hashCode() {
      if (!$hashCodeMemoized) {
        int h = 1;
        h *= 1000003;
        h ^= __typename.hashCode();
        h *= 1000003;
        h ^= id.hashCode();
        h *= 1000003;
        h ^= (name == null) ? 0 : name.hashCode();
        $hashCode = h;
        $hashCodeMemoized = true;
      }
      return $hashCode;
    }

    public static final class Mapper implements ResponseFieldMapper<Returning> {
      @Override
      public Returning map(ResponseReader reader) {
        final String __typename = reader.readString($responseFields[0]);
        final String id = reader.readString($responseFields[1]);
        final String name = reader.readString($responseFields[2]);
        return new Returning(__typename, id, name);
      }
    }
  }

  /**
   * response of any mutation on the table "pt_employees_26"
   */
  public static class Update_pt_employees_26 {
    static final ResponseField[] $responseFields = {
      ResponseField.forString("__typename", "__typename", null, false, Collections.<ResponseField.Condition>emptyList()),
      ResponseField.forInt("affected_rows", "affected_rows", null, false, Collections.<ResponseField.Condition>emptyList()),
      ResponseField.forList("returning", "returning", null, false, Collections.<ResponseField.Condition>emptyList())
    };

    final @NotNull String __typename;

    final int affected_rows;

    final @NotNull List<Returning1> returning;

    private transient volatile String $toString;

    private transient volatile int $hashCode;

    private transient volatile boolean $hashCodeMemoized;

    public Update_pt_employees_26(@NotNull String __typename, int affected_rows,
        @NotNull List<Returning1> returning) {
      this.__typename = Utils.checkNotNull(__typename, "__typename == null");
      this.affected_rows = affected_rows;
      this.returning = Utils.checkNotNull(returning, "returning == null");
    }

    public @NotNull String __typename() {
      return this.__typename;
    }

    /**
     * number of rows affected by the mutation
     */
    public int affected_rows() {
      return this.affected_rows;
    }

    /**
     * data from the rows affected by the mutation
     */
    public @NotNull List<Returning1> returning() {
      return this.returning;
    }

    @SuppressWarnings({"rawtypes", "unchecked"})
    public ResponseFieldMarshaller marshaller() {
      return new ResponseFieldMarshaller() {
        @Override
        public void marshal(ResponseWriter writer) {
          writer.writeString($responseFields[0], __typename);
          writer.writeInt($responseFields[1], affected_rows);
          writer.writeList($responseFields[2], returning, new ResponseWriter.ListWriter() {
            @Override
            public void write(List items, ResponseWriter.ListItemWriter listItemWriter) {
              for (Object item : items) {
                listItemWriter.writeObject(((Returning1) item).marshaller());
              }
            }
          });
        }
      };
    }

    @Override
    public String toString() {
      if ($toString == null) {
        $toString = "Update_pt_employees_26{"
          + "__typename=" + __typename + ", "
          + "affected_rows=" + affected_rows + ", "
          + "returning=" + returning
          + "}";
      }
      return $toString;
    }

    @Override
    public boolean equals(Object o) {
      if (o == this) {
        return true;
      }
      if (o instanceof Update_pt_employees_26) {
        Update_pt_employees_26 that = (Update_pt_employees_26) o;
        return this.__typename.equals(that.__typename)
         && this.affected_rows == that.affected_rows
         && this.returning.equals(that.returning);
      }
      return false;
    }

    @Override
    public int hashCode() {
      if (!$hashCodeMemoized) {
        int h = 1;
        h *= 1000003;
        h ^= __typename.hashCode();
        h *= 1000003;
        h ^= affected_rows;
        h *= 1000003;
        h ^= returning.hashCode();
        $hashCode = h;
        $hashCodeMemoized = true;
      }
      return $hashCode;
    }

    public static final class Mapper implements ResponseFieldMapper<Update_pt_employees_26> {
      final Returning1.Mapper returning1FieldMapper = new Returning1.Mapper();

      @Override
      public Update_pt_employees_26 map(ResponseReader reader) {
        final String __typename = reader.readString($responseFields[0]);
        final int affected_rows = reader.readInt($responseFields[1]);
        final List<Returning1> returning = reader.readList($responseFields[2], new ResponseReader.ListReader<Returning1>() {
          @Override
          public Returning1 read(ResponseReader.ListItemReader listItemReader) {
            return listItemReader.readObject(new ResponseReader.ObjectReader<Returning1>() {
              @Override
              public Returning1 read(ResponseReader reader) {
                return returning1FieldMapper.map(reader);
              }
            });
          }
        });
        return new Update_pt_employees_26(__typename, affected_rows, returning);
      }
    }
  }

  /**
   * columns and relationships of "pt_employees_26"
   */
  public static class Returning1 {
    static final ResponseField[] $responseFields = {
      ResponseField.forString("__typename", "__typename", null, false, Collections.<ResponseField.Condition>emptyList()),
      ResponseField.forString("firstname", "firstname", null, true, Collections.<ResponseField.Condition>emptyList())
    };

    final @NotNull String __typename;

    final @Nullable String firstname;

    private transient volatile String $toString;

    private transient volatile int $hashCode;

    private transient volatile boolean $hashCodeMemoized;

    public Returning1(@NotNull String __typename, @Nullable String firstname) {
      this.__typename = Utils.checkNotNull(__typename, "__typename == null");
      this.firstname = firstname;
    }

    public @NotNull String __typename() {
      return this.__typename;
    }

    public @Nullable String firstname() {
      return this.firstname;
    }

    @SuppressWarnings({"rawtypes", "unchecked"})
    public ResponseFieldMarshaller marshaller() {
      return new ResponseFieldMarshaller() {
        @Override
        public void marshal(ResponseWriter writer) {
          writer.writeString($responseFields[0], __typename);
          writer.writeString($responseFields[1], firstname);
        }
      };
    }

    @Override
    public String toString() {
      if ($toString == null) {
        $toString = "Returning1{"
          + "__typename=" + __typename + ", "
          + "firstname=" + firstname
          + "}";
      }
      return $toString;
    }

    @Override
    public boolean equals(Object o) {
      if (o == this) {
        return true;
      }
      if (o instanceof Returning1) {
        Returning1 that = (Returning1) o;
        return this.__typename.equals(that.__typename)
         && ((this.firstname == null) ? (that.firstname == null) : this.firstname.equals(that.firstname));
      }
      return false;
    }

    @Override
    public int hashCode() {
      if (!$hashCodeMemoized) {
        int h = 1;
        h *= 1000003;
        h ^= __typename.hashCode();
        h *= 1000003;
        h ^= (firstname == null) ? 0 : firstname.hashCode();
        $hashCode = h;
        $hashCodeMemoized = true;
      }
      return $hashCode;
    }

    public static final class Mapper implements ResponseFieldMapper<Returning1> {
      @Override
      public Returning1 map(ResponseReader reader) {
        final String __typename = reader.readString($responseFields[0]);
        final String firstname = reader.readString($responseFields[1]);
        return new Returning1(__typename, firstname);
      }
    }
  }
}

However when i use the following code to invoke this

ApolloClient apolloClient = ApolloClient.builder()
                .serverUrl(graphQLServerURL)
                .okHttpClient(new OkHttpClient.Builder().addInterceptor(new AuthorizationInterceptor()).build())
                .batchingConfiguration(batchConfig)
                .build();

        apolloClient.mutate(new com.graphqlclient.UpdateInMultipleTableMutation(new Input<>("11",true),new Input<>("John Thomson",true)
        , new Input<>(new ArrayList<>(11),true), new Input<>("John",true), new Input<>(11,true)))
                .enqueue(new ApolloCall.Callback<com.graphqlclient.UpdateInMultipleTableMutation.Data>() {
                    @Override
                    public void onResponse(@NotNull Response<com.graphqlclient.UpdateInMultipleTableMutation.Data> response) {
                        if (response.getErrors() != null && response.getErrors().size() > 0) {
                            System.out.println("GraphQL Client Query Operation Errors: " + response.getErrors());
                        } else {
                            System.out.println("GraphQL Client Query Operation Response: " + response.getData().toString());
                        }
                    }

                    @Override
                    public void onFailure(@NotNull ApolloException e) {
                        System.out.println("Apollo Client Error:" + e);
                    }
                });

I am getting the following error

GraphQL Client Query Operation Errors: [Error(message = unexpected variables in variableValues: inc_employee_id, locations = , customAttributes = {extensions={code=validation-failed, path=$}})]

Can someone please let me know if there are any problems in invoking the code?

Thank You in Advance!!

unexpected variables in variableValues: inc_employee_id

This looks like a case sensitivity issue as it’s declared as Inc_employee_id in your GraphQL query. Can you try using lowercase inc_employee_id everywhere?

mutation UpdateInMultipleTable ($id:String,$name: String, 
      $employee_id:[Int!],$firstname: String,$inc_employee_id: Int){

Yes that is true @mbonnin , but we can’t restrict the users not to use upperCase Characters, and perhaps this issue occurs only when we use the first Character as upper case, if i use inc_Employee_id or inc_EMPLOYEE_id , this works fine and we get the response.

we can’t restrict the users not to use upperCase Characters

Do you have users (as opposed to developers?) inputing arbitrary GraphQL? If that’s the case, maybe you could rewrite the document just after it’s been input? Using a regex like Regex("(\\\$[A-Z])")?

@mbonnin : I intended the same when I meant users/developers, Yes I do understand that rewriting the document is one way to solve this, but if its not limited by the GraphQL Specification and its not a limitation in the model generation, I would love to fix this in the code. Please let me know the entry points and I can check it out.

Thank You!!

It’s somewhere in the 2.x codegen. Maybe this one or another one (search for decapitalize in package com.apollographql.apollo.compiler). Feel free to open a pull request if you get it working!

1 Like

Sure, Will check it out, Thank You for sharing it.