I created an application using AWS Amplify, and I want to create an endpoint in an API function that will mutate a field in GraphQL. Since its a nodejs API function, I cannot use the recommended libraries from the AWS documentation which use ES6, since the functions can only use ES5. Therefore I need to use Axios.
I created a graphql query:
const query = /* GraphQL */ `mutation updatePublication($id: ID!, $keywords: String) {
                    updatePublication(id: $id, keywords: $keywords){
                      id
                      keywords
                    }
                  }`
Next, I created the Axios request.
const data = await axios.post(
        process.env.API_APPNAME_GRAPHQLAPIENDPOINTOUTPUT,
        {
          query: query,
          variables: {
              id: variableWithID,
              keywords: "updated keywords!"
          }
        },
        {
          headers: {
            'Content-Type': 'application/json',
            'x-api-key': process.env.API_APPNAME_GRAPHQLAPIKEYOUTPUT
          }
        }
    )
When I run the query, I get a status 200 from the server with the following errors:
  data: null,
  errors: [
    {
      path: null,
      locations: [Array],
      message: "Validation error of type MissingFieldArgument: Missing field argument input @ 'updatePublication'"
    },
    {
      path: null,
      locations: [Array],
      message: "Validation error of type UnknownArgument: Unknown field argument id @ 'updatePublication'"
    },
    {
      path: null,
      locations: [Array],
      message: "Validation error of type UnknownArgument: Unknown field argument keywords @ 'updatePublication'"
    }
  ]
}
Can anyone advise on what this means?