
Invalid userId: Parameter must contain at most 36 chars. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special character
That's the error am seeing when I tried to sign up using appwrite auth

Can you share the create
function code?

This right
mport React, { useState } from "react"; import { account } from "./appwrite"; import "./auth.css" import { v4 as uuidv4 } from 'uuid';
function Signup() { const [username, setUsername] = useState(""); const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const [error, setError] = useState("");
const handleSignup = async (e) => { e.preventDefault();
try {
// Validate inputs
if (!username || !email || !password) {
setError("Please fill in all fields");
return;
}
// Call the createAccount method from appwrite object
const randomString = Math.random().toString(36).substring(2, 15);
// Combine username and random string to create user ID
const userId = `${username.replace(/[^a-zA-Z0-9.-_]/g, "").toLowerCase()}_${randomString}`
await account.create(email, password, username, userId);
// User sign-up successful, perform further actions like redirecting to the main page
// or updating the application state
console.log("User signed up successfully");
} catch (error) {
setError( error.message);
console.error("Failed to sign up", error);
}
};

import { Client, Account } from 'appwrite';
const appwrite = new Client(); appwrite.setEndpoint('myendpoint'); appwrite.setProject('myid');
const account = new Account(appwrite);
export { appwrite, account };

Everything seems fine, Just change the variables order in the function to this
await account.create(userId, email, password, username);

You can explore it here https://appwrite.io/docs/client/account?sdk=web-default#accountCreate

Wow! thank you it's working now

Can you mark it as solved @Devben.tech ?

How do I do that ?

I'll do it, np!

[SOLVED] Invalid userId:

Okayt thanks
Recommended threads
- Sharing cookies
Hi, I’m using Appwrite Cloud, and I have a setup where my Appwrite backend is hosted on a subdomain (e.g., api.example.com), while my frontend (Next.js app) and...
- Organization not exists anymore
Hello! We have a problem with a cloud database. We are on the Free plan, but after a refresh the site wants me to create a new organisation, and I not see the c...
- JSON and Object Support in Collection do...
I am working with Next.Js and Appwrite Cloud, I am relatively New to Appwrite but i have noticed there is no direct support of JSON and Object support in attrib...
