Besides useSanctumClient you can directly send a request by using a module-specific
version of fetch composable - useLazySanctumFetch.
This composable implements an API-specific useLazyFetch, so you can check more details here.
Composable accepts 2 arguments:
url: target endpoint to call (type: MaybeRefOrGetter<string>)options: fetch options for client (type: UseFetchOptions<T>)const { data, status, error, refresh } = await useLazySanctumFetch("/api/users")
// or
const { data, status, error, refresh } = await useLazySanctumFetch(
"/api/users",
{
method: "GET",
query: { page: 1 },
default() {
return {
data: [],
meta: {
total: 0,
per_page: 0,
},
}
},
},
)
You can also use type casting to work with the response as an interface:
interface MyResponse {
name: string
}
const { data } = await useLazySanctumFetch<MyResponse>("/api/endpoint")
const name = data.value.name // augmented by MyResponse interface