Skip to main content
Skip to main content

Invites

Queries and Mutations listed here are used to send requests to the Admin Invite API Routes.

All hooks listed require user authentication.

An admin can invite new users to manage their team. This would allow new users to authenticate as admins and perform admin functionalities.

Related Guide: How to manage invites.

Mutations

useAdminAcceptInvite

This hook accepts an Invite. This will also delete the invite and create a new user that can log in and perform admin functionalities. The user will have the email associated with the invite, and the password provided in the mutation function's parameter.

Example

import React from "react"
import { useAdminAcceptInvite } from "medusa-react"

const AcceptInvite = () => {
const acceptInvite = useAdminAcceptInvite()
// ...

const handleAccept = (
token: string,
firstName: string,
lastName: string,
password: string
) => {
acceptInvite.mutate({
token,
user: {
first_name: firstName,
last_name: lastName,
password,
},
}, {
onSuccess: () => {
// invite accepted successfully.
}
})
}

// ...
}

export default AcceptInvite

Mutation Function Parameters

AdminPostInvitesInviteAcceptReqAdminPostInvitesInviteAcceptReqRequired
The details of the invite to be accepted.

useAdminResendInvite

This hook resends an invite. This renews the expiry date by seven days and generates a new token for the invite. It also triggers the invite.created event, so if you have a Notification Provider installed that handles this event, a notification should be sent to the email associated with the invite to allow them to accept the invite.

Example

import React from "react"
import { useAdminResendInvite } from "medusa-react"

type Props = {
inviteId: string
}

const ResendInvite = ({ inviteId }: Props) => {
const resendInvite = useAdminResendInvite(inviteId)
// ...

const handleResend = () => {
resendInvite.mutate(void 0, {
onSuccess: () => {
// invite resent successfully
}
})
}

// ...
}

export default ResendInvite

Hook Parameters

idstringRequired
The invite's ID.

useAdminDeleteInvite

This hook deletes an invite. Only invites that weren't accepted can be deleted.

Example

import React from "react"
import { useAdminDeleteInvite } from "medusa-react"

type Props = {
inviteId: string
}

const DeleteInvite = ({ inviteId }: Props) => {
const deleteInvite = useAdminDeleteInvite(inviteId)
// ...

const handleDelete = () => {
deleteInvite.mutate(void 0, {
onSuccess: ({ id, object, deleted }) => {
console.log(id)
}
})
}

// ...
}

export default Invite

Hook Parameters

idstringRequired
The invite's ID.

Mutation Function Returned Data

DeleteResponseDeleteResponseRequired
The response returned for a DELETE request.

Queries

useAdminInvites

This hook retrieves a list of invites.

Example

import React from "react"
import { useAdminInvites } from "medusa-react"

const Invites = () => {
const { invites, isLoading } = useAdminInvites()

return (
<div>
{isLoading && <span>Loading...</span>}
{invites && !invites.length && (
<span>No Invites</span>)
}
{invites && invites.length > 0 && (
<ul>
{invites.map((invite) => (
<li key={invite.id}>{invite.user_email}</li>
))}
</ul>
)}
</div>
)
}

export default Invites

Query Returned Data

invitesInvite[]Required
An array of invites
Was this section helpful?