Saltar al contenido
Notificado

Inicio de sesión y cuenta

13 operaciones, cada una con sus parámetros, ejemplos en curl y TypeScript listos para copiar y sus errores.

Las operaciones marcadas /v1 se autentican con un token de agente; las demás, con una sesión del panel. Cómo funcionan ambas está en Autenticación

cancelEmailChange

POST/api/cancel-email-change

Miembro de la firmaPermiso: auth:email-change-link

cancelEmailChange

Parámetros de cancelEmailChange
NombreDóndeTipoObligatorio
tokenCuerpostring 1–2048Sí
curl
curl -X POST 'https://www.notificado.co/api/cancel-email-change' \
  -b cookies.txt \
  -H 'origin: https://www.notificado.co' \
  -H 'content-type: application/json' \
  -d '{"token":"<token>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/cancel-email-change', {
  method: 'POST',
  headers: { 'content-type': 'application/json', origin: 'https://www.notificado.co', cookie: sessionCookie },
  body: JSON.stringify({
    "token": "<token>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

completeGoogleSignUp

POST/api/complete-google-sign-up

Sin sesiónPermiso: auth:anonymous

completeGoogleSignUp

Parámetros de completeGoogleSignUp
NombreDóndeTipoObligatorio
attributionCuerpostring 0–2048No
nextCuerpostring 0–2048No
orgNameCuerpostring 0–200Sí
referralCodeCuerpostring 0–40No
termsVersionCuerpostring 1–64No
curl
curl -X POST 'https://www.notificado.co/api/complete-google-sign-up' \
  -H 'content-type: application/json' \
  -d '{"orgName":"<orgName>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/complete-google-sign-up', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({
    "orgName": "<orgName>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true,
  "userId": "<userId>"
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

confirmEmailChange

POST/api/confirm-email-change

Miembro de la firmaPermiso: auth:email-change-link

confirmEmailChange

Parámetros de confirmEmailChange
NombreDóndeTipoObligatorio
tokenCuerpostring 1–2048Sí
curl
curl -X POST 'https://www.notificado.co/api/confirm-email-change' \
  -b cookies.txt \
  -H 'origin: https://www.notificado.co' \
  -H 'content-type: application/json' \
  -d '{"token":"<token>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/confirm-email-change', {
  method: 'POST',
  headers: { 'content-type': 'application/json', origin: 'https://www.notificado.co', cookie: sessionCookie },
  body: JSON.stringify({
    "token": "<token>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

confirmGoogleCode

POST/api/confirm-google-code

Sin sesiónPermiso: auth:anonymous

confirmGoogleCode

Parámetros de confirmGoogleCode
NombreDóndeTipoObligatorio
codeCuerpostring 1–64Sí
nextCuerpostring 0–2048No
curl
curl -X POST 'https://www.notificado.co/api/confirm-google-code' \
  -H 'content-type: application/json' \
  -d '{"code":"<code>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/confirm-google-code', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({
    "code": "<code>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true,
  "userId": "<userId>"
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

confirmSignInCode

POST/api/confirm-sign-in-code

Sin sesiónPermiso: auth:anonymous

confirmSignInCode

Parámetros de confirmSignInCode
NombreDóndeTipoObligatorio
codeCuerpostring 1–64Sí
nextCuerpostring 0–2048No
curl
curl -X POST 'https://www.notificado.co/api/confirm-sign-in-code' \
  -H 'content-type: application/json' \
  -d '{"code":"<code>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/confirm-sign-in-code', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({
    "code": "<code>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true,
  "userId": "<userId>"
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

requestPasswordReset

POST/api/request-password-reset

Sin sesiónPermiso: auth:anonymous

requestPasswordReset

Parámetros de requestPasswordReset
NombreDóndeTipoObligatorio
captchaTokenCuerpostring 0–4096No
cf-turnstile-responseCuerpostring 0–4096No
emailCuerpostring 0–320Sí
h-captcha-responseCuerpostring 0–4096No
localeCuerpostring 0–16No
curl
curl -X POST 'https://www.notificado.co/api/request-password-reset' \
  -H 'content-type: application/json' \
  -d '{"email":"<email>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/request-password-reset', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({
    "email": "<email>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

resetPassword

POST/api/reset-password

Sin sesiónPermiso: auth:anonymous

resetPassword

Parámetros de resetPassword
NombreDóndeTipoObligatorio
passwordCuerpostring 0–1024Sí
passwordConfirmCuerpostring 0–1024No
tokenCuerpostring 0–2048Sí
curl
curl -X POST 'https://www.notificado.co/api/reset-password' \
  -H 'content-type: application/json' \
  -d '{"password":"<password>","token":"<token>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/reset-password', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({
    "password": "<password>",
    "token": "<token>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

signIn

POST/api/sign-in

Sin sesiónPermiso: auth:anonymous

signIn

Parámetros de signIn
NombreDóndeTipoObligatorio
codeCuerpostring 0–64No
emailCuerpostring 1–320Sí
localeCuerpostring 0–16No
nextCuerpostring 0–2048No
passwordCuerpostring 1–1024Sí
curl
curl -X POST 'https://www.notificado.co/api/sign-in' \
  -H 'content-type: application/json' \
  -d '{"email":"<email>","password":"<password>"}'
TypeScript
const response = await fetch('https://www.notificado.co/api/sign-in', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({
    "email": "<email>",
    "password": "<password>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true,
  "userId": "<userId>"
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

signOut

POST/api/sign-out

Miembro de la firmaPermiso: auth:sign-out

signOut

curl
curl -X POST 'https://www.notificado.co/api/sign-out' \
  -b cookies.txt \
  -H 'origin: https://www.notificado.co' \
  -H 'content-type: application/json' \
  -d '{}'
TypeScript
const response = await fetch('https://www.notificado.co/api/sign-out', {
  method: 'POST',
  headers: { 'content-type': 'application/json', origin: 'https://www.notificado.co', cookie: sessionCookie },
  body: JSON.stringify({}),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID

signUp

POST/api/sign-up

Sin sesiónPermiso: auth:anonymous

signUp

Parámetros de signUp
NombreDóndeTipoObligatorio
attributionCuerpostring 0–2048No
captchaTokenCuerpostring 0–4096No
cf-turnstile-responseCuerpostring 0–4096No
emailCuerpostring 1–320Sí
h-captcha-responseCuerpostring 0–4096No
localeCuerpostring 0–16No
nameCuerpostring 1–200Sí
nextCuerpostring 0–2048No
orgNameCuerpostring 0–200Sí
passwordCuerpostring 1–1024Sí
referralCodeCuerpostring 0–40No
termsVersionCuerpostring 1–64No
curl
curl -X POST 'https://www.notificado.co/api/sign-up' \
  -H 'content-type: application/json' \
  -d '{
  "email": "<email>",
  "name": "<name>",
  "orgName": "<orgName>",
  "password": "<password>"
}'
TypeScript
const response = await fetch('https://www.notificado.co/api/sign-up', {
  method: 'POST',
  headers: { 'content-type': 'application/json' },
  body: JSON.stringify({
    "email": "<email>",
    "name": "<name>",
    "orgName": "<orgName>",
    "password": "<password>"
  }),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true,
  "orgId": "<orgId>",
  "userId": "<userId>"
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds

unsubscribeOnboarding

POST/api/unsubscribe-onboarding

Miembro de la firmaPermiso: growth:unsubscribe-link

unsubscribeOnboarding

Parámetros de unsubscribeOnboarding
NombreDóndeTipoObligatorio
List-UnsubscribeCuerpostring 1–32No
tCuerpostring 1–512No
curl
curl -X POST 'https://www.notificado.co/api/unsubscribe-onboarding' \
  -b cookies.txt \
  -H 'origin: https://www.notificado.co' \
  -H 'content-type: application/json' \
  -d '{}'
TypeScript
const response = await fetch('https://www.notificado.co/api/unsubscribe-onboarding', {
  method: 'POST',
  headers: { 'content-type': 'application/json', origin: 'https://www.notificado.co', cookie: sessionCookie },
  body: JSON.stringify({}),
});
const result = await response.json();
Ejemplo de respuesta
200
{
  "ok": true
}

Errores

  • 400 X_INPUT_INVALID
  • 403 policy denied
  • 422 X_BODY_INVALID
  • 429 X_RATE_LIMITED — retry after Retry-After seconds