useDirectusAuth
Check out the Directus Authentication documentation.
login
Authentication is submitted with email and password of the user to the given directus server. Sets user and token.
- Arguments:
- data:
DirectusAuthCredentials
- data:
- Returns:
Promise<DirectusAuthResponse>
<script setup lang="ts">const { login } = useDirectusAuth();const router = useRouter();const onSubmit = async () => { try { await login({ email: "", password: "" }); } catch (e) {}};</script>logout
<script setup lang="ts">const { logout } = useDirectusAuth();const onSubmit = async () => { logout();};</script>createUser
Create a new Directus user, can also be used as register(). Email and password are required, partial user object is given.
May requires the module's option token to be set if you need to create a user sign in form for example.
- Arguments:
- data:
DirectusUserCreation
- data:
- Returns:
Promise<DirectusUser>
<script setup lang="ts">const { createUser } = useDirectusAuth();const router = useRouter();const onSubmit = async () => { try { const newUser = await createUser({ email: "", password: "" }); } catch (e) {}};</script>requestPasswordReset
Password Request is submitted with email of the user to the given directus server.
- Arguments:
- Returns:
Promise<void>
<script setup lang="ts">const { requestPasswordReset } = useDirectusAuth();const router = useRouter();const onSubmit = async () => { try { await requestPasswordReset({ email: "" }); } catch (e) {}};</script>resetPassword
Password reset is submitted with token of reset email & the new password to the given directus server.
- Arguments:
- Returns:
Promise<void>
<script setup lang="ts">const { resetPassword } = useDirectusAuth();const router = useRouter();const onSubmit = async () => { try { await resetPassword({ token: "", password: "" }); } catch (e) {}};</script>inviteUser
Invite a user to join Directus. Email and role are required. Email is sent by directus server to email with a link to directus server or invite_url containing invite token.
- Arguments:
- data:
DirectusInviteCreation
- data:
- Returns:
Promise<void>
<script setup lang="ts">const { inviteUser } = useDirectusAuth();const router = useRouter();const onSubmit = async () => { try { await inviteUser({ email: "", role: "c86c2761-65d3-43c3-897f-6f74ad6a5bd7" }); } catch (e) {}};</script>acceptInvite
Accepts an invitation created via inviteUser. Token and password are required. Token is provided as a query param in the invite_url.
- Arguments:
- data:
DirectusAcceptInvite
- data:
- Returns:
Promise<void>
<script setup lang="ts">const { acceptInvite } = useDirectusAuth();const router = useRouter();const onSubmit = async () => { try { await acceptInvite({ token: "", password: "" }); } catch (e) {}};</script>Middleware example
Check how to Redirect user to login page over here.
What do you think?