FluxbaseGraphQL
GraphQL client class for executing queries and mutations
Constructors
Section titled “Constructors”new FluxbaseGraphQL()
Section titled “new FluxbaseGraphQL()”new FluxbaseGraphQL(
fetch):FluxbaseGraphQL
Create a new GraphQL client
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
fetch | FluxbaseFetch | The HTTP client to use for requests |
Returns
Section titled “Returns”Methods
Section titled “Methods”execute()
Section titled “execute()”execute<
T>(query,variables?,operationName?,options?):Promise<GraphQLResponse<T>>
Execute a GraphQL request with an operation name
Use this when your query document contains multiple operations and you need to specify which one to execute.
Type Parameters
Section titled “Type Parameters”| Type Parameter | Default type | Description |
|---|---|---|
T | unknown | The expected response data type |
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
query | string | The GraphQL document containing one or more operations |
variables? | Record<string, unknown> | Variables to pass to the operation |
operationName? | string | The name of the operation to execute |
options? | GraphQLRequestOptions | Additional request options |
Returns
Section titled “Returns”Promise<GraphQLResponse<T>>
Promise resolving to the GraphQL response
Example
Section titled “Example”const { data } = await client.graphql.execute(` query GetUser($id: ID!) { user(id: $id) { id email } } query ListUsers { users { id email } }`, { id: '123' }, 'GetUser')introspect()
Section titled “introspect()”introspect(
options?):Promise<GraphQLResponse<object>>
Fetch the GraphQL schema via introspection
Returns the full schema information including types, fields, and directives. Useful for tooling and documentation.
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options? | GraphQLRequestOptions | Additional request options |
Returns
Section titled “Returns”Promise<GraphQLResponse<object>>
Promise resolving to the introspection result
Example
Section titled “Example”const { data, errors } = await client.graphql.introspect()
if (data) { console.log('Types:', data.__schema.types.length)}mutation()
Section titled “mutation()”mutation<
T>(mutation,variables?,options?):Promise<GraphQLResponse<T>>
Execute a GraphQL mutation
Type Parameters
Section titled “Type Parameters”| Type Parameter | Default type | Description |
|---|---|---|
T | unknown | The expected response data type |
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
mutation | string | The GraphQL mutation string |
variables? | Record<string, unknown> | Variables to pass to the mutation |
options? | GraphQLRequestOptions | Additional request options |
Returns
Section titled “Returns”Promise<GraphQLResponse<T>>
Promise resolving to the GraphQL response
Example
Section titled “Example”interface CreateUserMutation { insertUser: { id: string; email: string }}
const { data, errors } = await client.graphql.mutation<CreateUserMutation>(` mutation CreateUser($data: UserInput!) { insertUser(data: $data) { id email } }`, { data: { email: 'user@example.com' } })query()
Section titled “query()”query<
T>(query,variables?,options?):Promise<GraphQLResponse<T>>
Execute a GraphQL query
Type Parameters
Section titled “Type Parameters”| Type Parameter | Default type | Description |
|---|---|---|
T | unknown | The expected response data type |
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
query | string | The GraphQL query string |
variables? | Record<string, unknown> | Variables to pass to the query |
options? | GraphQLRequestOptions | Additional request options |
Returns
Section titled “Returns”Promise<GraphQLResponse<T>>
Promise resolving to the GraphQL response
Example
Section titled “Example”interface UsersQuery { users: Array<{ id: string; email: string }>}
const { data, errors } = await client.graphql.query<UsersQuery>(` query { users { id email } }`)
if (data) { console.log(data.users)}