Register a new user account
curl --request POST \
--url https://api.sitespy.app/api/v1/auth/register \
--header 'Content-Type: application/json' \
--data '
{
"email": "user@example.com",
"password": "secretpassword123",
"altcha": "eyJjaGFsbGVuZ2UiOiB7...",
"name": "John Doe"
}
'import requests
url = "https://api.sitespy.app/api/v1/auth/register"
payload = {
"email": "user@example.com",
"password": "secretpassword123",
"altcha": "eyJjaGFsbGVuZ2UiOiB7...",
"name": "John Doe"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
email: 'user@example.com',
password: 'secretpassword123',
altcha: 'eyJjaGFsbGVuZ2UiOiB7...',
name: 'John Doe'
})
};
fetch('https://api.sitespy.app/api/v1/auth/register', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"message": "Account created successfully",
"user": {
"email": "user@example.com",
"name": "John Doe",
"api_key": "abc123def456...",
"email_verified": false
}
}{
"error": "Email and password are required"
}{
"error": "User with this email already exists"
}{
"error": "Too many signup attempts. Please try again later."
}Authentication
Register a new user account
Create a new user account with email and password. An API key is automatically
generated and linked to the account. This API key can be used for all subsequent
authenticated requests. Signup requires a solved ALTCHA proof-of-work payload
from /auth/altcha-challenge.
POST
/
auth
/
register
Register a new user account
curl --request POST \
--url https://api.sitespy.app/api/v1/auth/register \
--header 'Content-Type: application/json' \
--data '
{
"email": "user@example.com",
"password": "secretpassword123",
"altcha": "eyJjaGFsbGVuZ2UiOiB7...",
"name": "John Doe"
}
'import requests
url = "https://api.sitespy.app/api/v1/auth/register"
payload = {
"email": "user@example.com",
"password": "secretpassword123",
"altcha": "eyJjaGFsbGVuZ2UiOiB7...",
"name": "John Doe"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
email: 'user@example.com',
password: 'secretpassword123',
altcha: 'eyJjaGFsbGVuZ2UiOiB7...',
name: 'John Doe'
})
};
fetch('https://api.sitespy.app/api/v1/auth/register', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"message": "Account created successfully",
"user": {
"email": "user@example.com",
"name": "John Doe",
"api_key": "abc123def456...",
"email_verified": false
}
}{
"error": "Email and password are required"
}{
"error": "User with this email already exists"
}{
"error": "Too many signup attempts. Please try again later."
}Body
application/json
User's email address
Example:
"user@example.com"
Password (minimum 8 characters)
Minimum string length:
8Example:
"secretpassword123"
Base64 ALTCHA verification payload
Example:
"eyJjaGFsbGVuZ2UiOiB7..."
User's display name (optional)
Example:
"John Doe"

