I am writing a Ruby Prefect client that’ll eventua...
# ask-community
s
I am writing a Ruby Prefect client that’ll eventually allow our Rails app to schedule flows in Prefect. When exploring the GraphQL schema I am noticing that there are 3 uuid types defined. They are called:
uuid
,
_uuid
and
UUID
. Their definitions look identical, all are
SCALAR
values. What is the purpose of having 3 different UUID types defined in the GraphQL schema?
Having these 3 types is unfortunately causing some problems when using the
graphql-client
gem to communicate with the Prefect API. The problem is name collisions when trying to define a
Uuid
class.
To see run
prefect server run
, go to:
localhost:4200
and execute:
Copy code
query {
  __schema {
    types {
      name
      kind
    }
  }
}
n
Hi @Soren Daugaard - the reason for those different types is that Hasura, GraphQL, and Python all expose different scalar types; because the API you're seeing is a composition of the 3 types you end up seeing all of the types.
z
We define (and use) and single
UUID
type to avoid complications with the auto-generated type.