# Integrations

> Use your API client with a query cache or Result-based error handling.

## Documentation

- [Result-based calls](https://hulla.dev/docs/api/integrations/control.md): Handle client responses as Ok and Err values from @hulla/control.
- [Choosing a query cache](https://hulla.dev/docs/api/integrations/query-libraries.md): Add caching and loading states to your API client with TanStack Query or SWR.
- [TanStack Query](https://hulla.dev/docs/api/integrations/tanstack-query.md): Load API data with TanStack Query and invalidate it after a mutation.
- [SWR](https://hulla.dev/docs/api/integrations/swr.md): Load API data with SWR and refresh it after a mutation.
