Create the account (Legacy)
POST
/signup/finalize
const url = 'https://auth.timetonic.com/signup/finalize';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"userId":"example","pwd":"example","email":"hello@example.com","mobile":"example","lang":"en","fname":"example","lname":"example","company":"example","companySize":"example","sector":"example","timezone":"example","tcOptin":true}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://auth.timetonic.com/signup/finalize \ --header 'Content-Type: application/json' \ --data '{ "userId": "example", "pwd": "example", "email": "hello@example.com", "mobile": "example", "lang": "en", "fname": "example", "lname": "example", "company": "example", "companySize": "example", "sector": "example", "timezone": "example", "tcOptin": true }'Step 3 of signup — creates the user and its own company account, publishes
a userSignup provisioning event, sends the welcome email, and enriches
geolocation asynchronously.
Unlike the legacy service this does NOT return a JWT (v8 is OIDC-BFF). On
success the client must start the OIDC authorize+PKCE flow, signalled by
next: "oidc". Public; CSRF-exempt. Portal-scoped variant at
/portal/{companyCodeContext}/signup/finalize (additionally enforces the
company password policy).
Request Bodyrequired
Section intitulée « Request Bodyrequired »Media typeapplication/json
object
userId
required
string
pwd
required
string
email
required
string format: email
mobile
string
lang
required
string
Example
enfname
required
string
lname
required
string
company
Company display name; the company_accounts.code is a unique slug derived from it (falls back to the username).
string
companySize
string
sector
string
timezone
string
Responses
Section intitulée « Responses »Account created
Media typeapplication/json
object
success
boolean
message
string
user
object
id
string format: uuid
username
string
email
string format: email
companyAccountCode
string
next
Post-signup instruction. oidc means the client must start the OIDC authorize+PKCE flow to log the new user in.
string
Example
{ "success": true, "message": "User created", "next": "oidc"}Validation error
Media typeapplication/json
object
success
boolean
error
string
message
string
errors
object
key
additional properties
Array<string>
Example
{ "success": false, "error": "validation_error", "message": "The given data was invalid", "errors": { "email": [ "The email field is required." ] }}