Make a In the body of the request, include a Each result in the response includes:
POST request to:users field with an array of up to 20 user objects.Below is a sample cURL command for creating multiple new users:Parameters
An array including all of the user’s linked accounts. These objects are in the same shape as the
linked accounts returned by
getUser. For
each linked account, you must specify the type and must not include a verifiedAt timestamp.LinkedAccount types
LinkedAccount types
AppleAccount
AppleAccount
CustomJwtAccount
CustomJwtAccount
DiscordAccount
DiscordAccount
(See Discord docs)
EmailAccount
EmailAccount
FarcasterAccount
FarcasterAccount
(See Farcaster docs. Note that the Privy import interface differs slightly from the Farcaster public interface in order to maintain consistency with other Privy
LinkedAccount types.)GithubAccount
GithubAccount
(See GitHub docs)
GoogleAccount
GoogleAccount
InstagramAccount
InstagramAccount
(See Instagram docs)
LinkedinAccount
LinkedinAccount
(See Linkedin docs)
PhoneAccount
PhoneAccount
While
number is accepted as input, phoneNumber is returned in the response.SpotifyAccount
SpotifyAccount
(See Spotify docs)
TelegramAccount
TelegramAccount
(See Telegram docs)
TwitterAccount
TwitterAccount
(See Twitter docs)
SmartWalletAccount
SmartWalletAccount
WalletAccount
WalletAccount
(Optional) An array of wallets to create for the user.
Response Format
A successful response will include a list of results along with details about which succeeded and which failed:The action taken (“create”).
The index of the user in the request array.
Whether the user creation succeeded.
The Privy DID of the user (if successful).
Error code (if unsuccessful).
Error message (if unsuccessful).
The conflicting DID (if there was an account conflict).
User creation endpoints have a rate limit of 240 users per minute. If you are being rate limited,
responses will have status code 429. We suggest you set up exponential back-offs starting at 1
second to seamlessly recover.

