Scalar types represent primitive leaf values in a GraphQL type system. GraphQL responses take the form of a hierarchical tree; the leaves of this tree are typically GraphQL Scalar types
GraphQL specifies a basic set of well-defined Scalar types: Int, Float, String, Boolean, and ID
Custom scalars are a way to define new scalar types that extend the default set of built-in scalar types (Int, Float, String, Boolean, and ID). Custom scalars are useful when you need to handle specific types of data in your GraphQL API that aren't covered by the default scalars, such as dates, email addresses, or JSON objects.