signUp
Registro de usuário (❗️Para provedores com ativação de usuário, um código de ativação é enviado através do método de notificação correspondente)
Descrição
O método aceita o corpo como um parâmetro. Ele retorna uma Promise que resolve para um objeto ISignUpEntity.
AuthProvider.signUp(
marker*,
body*,
body.formIdentifier*,
body.langCode,
body.authData*,
body.formData*,
formData.marker*,
formData.type*,
formData.value*,
body.notificationData*,
notificationData.email*,
notificationData.phonePush*,
notificationData.phoneSMS,
langCode
);
Esquema de parâmetros
Esquema
marker(obrigatório): string
O identificador de texto do provedor de autorização
exemplo: "email"
body(obrigatório): ISignUpData
Corpo da solicitação
exemplo:
{
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "example@oneentry.cloud"
},
{
"marker": "password",
"value": "12345"
}
],
"formData": [
{
"marker": "last_name",
"type": "string",
"value": "Name"
}
],
"notificationData": {
"email": "example@oneentry.cloud",
"phonePush": [
"+99999999999"
],
"phoneSMS": "+99999999999"
}
}
body.formIdentifier(obrigatório): string
O identificador para o formulário de registro.
exemplo: "reg"
body.langCode: string
Código de idioma. Padrão: "en_US".
body.authData(obrigatório): Array
Um array de objetos de dados de autenticação, cada um contendo um marcador e seu valor correspondente.
body.formData(obrigatório): IAuthFormData | IAuthFormData[]
Os dados do formulário para o registro.
formData.marker(obrigatório): string
Um identificador único para o campo do formulário.
exemplo: "email"
formData.type(obrigatório): string
O tipo do campo do formulário, como 'string', 'email', etc.
exemplo: "string"
formData.value(obrigatório): string
O valor inserido no campo do formulário.
exemplo: "example@oneentry.cloud"
body.notificationData(obrigatório): INotificationData
Um objeto contendo dados de notificação, incluindo email, phonePush e phoneSMS.
notificationData.email(obrigatório): string
Email do usuário usado para notificações.
exemplo: "example@oneentry.cloud"
notificationData.phonePush(obrigatório): string[]
Números de telefone usados para notificações push.
exemplo: ["+19999999999"]
notificationData.phoneSMS: string
Número de telefone usado para notificações SMS.
exemplo: "+19999999999"
langCode: string
Código de idioma. Padrão: "en_US"
exemplo: "en_US"
Exemplos
Exemplo mínimo
const body = { "formIdentifier": "reg", "authData": [ { "marker": "login", "value": "example@oneentry.cloud" }, { "marker": "password", "value":"12345" } ], "formData": [ { "marker": "last_name", "type": "string", "value": "Nome" } ], "notificationData": { "email": "example@oneentry.cloud", "phonePush": [ "+99999999999" ], "phoneSMS": "+99999999999" }};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributos de tipos simples formData "string", "integer", "float".
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
"formData": [
{
"marker": "last_name",
"type": "string",
"value": "Fyodor Ivanov"
}
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributos de tipos "date", "dateTime", "time"
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
"formData": [
{
"marker": "birthday",
"type": "date",
"value": {
"fullDate": "2024-05-07T21:02:00.000Z",
"formattedValue": "08-05-2024 00:02",
"formatString": "DD-MM-YYYY HH:mm"
}
}
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributo de tipo "text"
Para um valor de campo de texto, você pode usar um dos três tipos de valor:
- htmlValue - string HTML
- plainValue - string
- mdValue - string Markdown
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
"formData": [
{
"marker": "about",
"type": "text",
"value": {
"htmlValue": "<p>This is me</p>",
// "plainValue": "",
// "mdValue": ""
}
}
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributo tipo "textWithHeader"
Para um valor de campo textWithHeader, você pode usar um dos três tipos de valor:
- htmlValue - string HTML
- plainValue - string
- mdValue - string Markdown
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
"formData": [
{
"marker": "about",
"type": "textWithHeader",
"value": {
"header": "Header",
"htmlValue": "<p>This is me</p>",
// "plainValue": "",
// "mdValue": ""
}
}
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributos tipo "image" e "groupOfImages"
Se um objeto fileQuery for fornecido no objeto formData, o arquivo será automaticamente enviado para a nuvem OneEntry via SDK ou use o File.uploadFile() handle Veja exemplo
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
formData: [
{
marker: "image",
type: "image",
value: [file],
fileQuery: {
type: "page",
entity: "editor",
id: 3492,
},
},
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributo tipo "file"
Se um objeto fileQuery for fornecido no objeto formData, o arquivo será automaticamente enviado para a nuvem OneEntry via SDK ou use o File.uploadFile() handle Veja exemplo
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
formData: [
{
marker: "image",
type: "image",
value: [file],
fileQuery: {
type: "page",
entity: "editor",
id: 3492,
},
},
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributos tipo "radioButton" e "list"
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
formData: [
{
marker: "list",
type: "list",
value: ["1"],
},
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo com atributo tipo "entity" (lista aninhada)
const body = {
"formIdentifier": "reg",
"authData": [
{
"marker": "login",
"value": "test"
},
{
"marker": "password",
"value": "12345"
}
],
formData: [
{
marker: "entity",
type: "entity",
value: [2954, 2957],
},
],
"notificationData": {
"email": "your-email@test.zone",
"phonePush": [],
"phoneSMS": "+19991234567"
}
};
const response = await AuthProvider.signUp('email', body);
Exemplo de resposta
{
"identifier": "my-id",
"id": 1764,
"createdDate": "1991-08-18T06:18:10.986Z",
"updatedDate": "1967-12-02T16:45:02.051Z",
"version": 10,
"isActive": false,
"isDeleted": false,
"formData": {
"en_US": [
{
"marker": "login",
"type": "string",
"value": "test"
},
{
"marker": "f-name",
"type": "string",
"value": "Ivanov"
}
]
},
"state": {},
"notificationData": {
"email": "test@test.ru",
"phonePush": [],
"phoneSMS": "+89991234567"
},
"locale": "en_US",
"deletedAt": "2023-02-12 10:56",
"rating": {
"value": 4.5,
"like": 10,
"dislike": 2,
"method": "average"
}
}
Esquema de resposta
Esquema: ISignUpEntity
id: number
O identificador único da entidade de registro.
exemplo: 12345
updatedDate: string
A data em que a entidade de registro foi atualizada pela última vez.
exemplo: "2023-10-01T12:00:00Z"
version: number
O número da versão da entidade de registro.
exemplo: 1
identifier: string
Uma string única que identifica a entidade de registro.
exemplo: "signup_12345"
isActive: boolean
Indica se a entidade de registro está ativa.
exemplo: true
formData: IAuthFormData[]
Array de dados do formulário.
exemplo:
[
{
"marker": "first_name",
"value": "John"
}
]
formData.marker: string
Um identificador único para o campo do formulário.
exemplo: "email"
formData.type: string
O tipo do campo do formulário, como 'string', 'email', etc.
exemplo: "string"
formData.value: string
O valor inserido no campo do formulário.
exemplo: "example@oneentry.cloud"
notificationData: INotificationData
Um objeto contendo dados de notificação, incluindo email, phonePush e phoneSMS.
exemplo:
{
"email": "example@oneentry.cloud",
"phonePush": [
"+99999999999"
],
"phoneSMS": "+99999999999"
}
notificationData.email: string
Email do usuário usado para notificações.
exemplo: "example@oneentry.cloud"
notificationData.phonePush: string[]
Números de telefone usados para notificações push.
exemplo: ["+19999999999"]
notificationData.phoneSMS: string
Número de telefone usado para notificações SMS.
exemplo: "+19999999999"
locale: string
O local ou código de idioma associado à entidade de registro.
exemplo: "en_US"
createdDate: string
A data em que a entidade de registro foi criada.
exemplo: "2023-10-01T12:00:00Z"
importId: unknown
Identificador de importação.
exemplo: null
deletedAt: string | null
Data de exclusão ou nula.
exemplo: null
isDeleted: boolean
Se a entidade está excluída.
exemplo: false
state: Record<string, unknown>
Informações adicionais de estado.
exemplo:
rating: IRating
Dados de avaliação.