'Apollo Client: valid object type not being recognized

Here's my schema file:

import { gql } from 'apollo-server';

const typeDefs = gql`
    type Price {
        currency: Currency!,
        amount: Float!
    }

    type Attribute {
        displayValue: String,
        value: String,
        id: String!
    }

    type AttributeSet {
        id: String!,
        name: String,
        type: String,
        items: [Attribute]
    }

    type Product {
        id: String!,
        name: String!,
        inStock: Boolean,
        gallery: [String],
        description: String!,
        category: String!,
        attributes: [AttributeSet]
        prices: [Price!]!,
        brand: String!
    }

    type Category {
        name: String,
        products: [Product]!
    }

    type Currency {
        label: String!,
        symbol: String!
    }

    input CategoryInput {
        title: String!
    }

    type Query {
        categories: [Category],
        category(input: CategoryInput): Category,
        product(id: String!): Product,
        currencies: [Currency]
    }
`;

export default typeDefs;

and these are the types of Category:

export enum Category {
    all = 'all',
    clothes = 'clothes',
    tech = 'tech'
};

When in the graphQl playground, I tried to make a query like this:

{
  category(input: "all") {
    name
    products {
      id
      name
    }
  }
}

I know that some required types are not being used - like gallery, description, etc... - but the error message I'm getting is:

Expected value of type "CategoryInput", found "all".

I would appreciate any help concerning why is this error message being exhibited, since "all" is a valid type for Category. Thank you in advance.



Solution 1:[1]

the input type is an object so you need to pass properties inside that object like this example :

{
  category(input: {title:"all"}) {
    name
    products {
      id
      name
    }
  }
}

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Mohamed Chouaieb Sayari