Nueva versión de API para gestionar los Usuarios y sus movimientos de saldos.
URL´s
https://api.test.sw.com.mx 📄
https://api.sw.com.mx 📄
Crear Usuario
Mejora la gestión de tus clientes creando cuentas hijas desde tu cuenta distribuidora. Accede a una vista gráfica en el Portal SW > Clientes para supervisarlas fácilmente.
🔗 Endpoint
| Método | Ruta |
|---|---|
| POST | /management/v2/api/dealers/users |
🔐 Autenticación y Headers
| Header | Value |
|---|---|
| Authorization | Bearer Token |
| Content-Type | application/json |
🧾 Parámetros JSON
| Propiedad | Tipo | Uso | Descripción |
|---|---|---|---|
| name | string | Requerido | Nombre del usuario. |
| taxId | string | Requerido | RFC del usuario. |
| string | Requerido | Correo del usuario. | |
| stamps | int | Requerido | Timbres a asignar en la creación |
| isUnlimited | boolean | Requerido | Especificar si tendrá timbres ilimitados. |
| password | string | Requerido | Contraseña del usuario. |
| notificationEmail | string | Opcional | Correo a donde quieres recibir notificaciones. |
| phone | string | Opcional | Número de teléfono del usuario. |
Políticas para la contraseña del usuario
Políticas para la contraseña
- La contraseña no debe ser igual que el nombre de usuario.
- La contraseña debe incluir al menos una letra mayúscula.
- La contraseña debe incluir al menos una letra minúscula
- La contraseña debe incluir al menos un número.
- La contraseña debe incluir al menos un símbolo (carácter especial).
- La contraseña no debe incluir espacios en blanco.
- La contraseña debe tener mínimo 8 caracteres .
- La contraseña no debe incluir símbolos especiales fuera de lo común.
Los caracteres especiales aceptados son los siguientes:
!@#$%^&*()_+=[{]};:<>|./?,-]
Ejemplo Request
curl --location 'https://api.test.sw.com.mx/management/v2/api/dealers/users' \
--header 'Authorization: Bearer $token' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Prueba Usuario V2",
"taxId": "XIA190128J61",
"email": "correo.example@gmail.com",
"stamps": 10,
"isUnlimited": false,
"password": "SWpass1!",
"notificationEmail":"correo.example@gmail.com",
"phone": "0000000000"
}'
Ejemplo Response
{
"data": {
"idUser": "798299e2-0000-0000-91ce-00c1c7693807",
"idDealer": "dec88317-0000-0000-9d23-9bb687444600",
"name": "Prueba Usuario V2",
"taxId": "XIA190128J61",
"username": "correo.example@gmail.com",
"lastPasswordChange": "2024-04-11T13:29:58.5576372",
"email": "correo.example@gmail.com",
"isAdmin": false,
"profile": 3,
"isActive": true,
"registeredDate": "2024-04-11T13:29:58.5572504",
"accessToken": null,
"phone": "0000000000"
},
"meta": null,
"links": null,
"status": "success"
}
{
"message": "El email 'correo.example@gmail.com' ya esta en uso.",
"status": "error"
}
| Atributo | Tipo | Descripción |
|---|---|---|
| status | String | Indica el estado de la respuesta. Puede ser “success” o “error”. |
| message | String | Solo aparece en respuestas de error. Describe la razón del error. |
| data | Object/null | Contiene la información del usuario consultado, incluyendo sus datos de registro y configuración. |
Consulta de Usuarios
Método que proporciona la funcionalidad de consultar una lista de usuarios asociados a un token enviado en la solicitud. Permite filtrar los resultados utilizando una variedad de atributos, lo que posibilita la búsqueda de usuarios con características específicas.
🔗 Endpoint
| Método | Ruta |
|---|---|
| GET | /management/v2/api/dealers/users |
🔐 Autenticación y Headers
| Header | Value |
|---|---|
| Authorization | Bearer Token |
📍 Parámetros Query
| Propiedad | Uso | Descripción |
|---|---|---|
| TaxId | Opcional | RFC ligado al Usuario a consultar. |
| Opcional | Dirección de correo del Usuario a consultar. | |
| Name | Opcional | Nombre del Usuario a consultar. |
| IdUser | Opcional | GUID identificador del Usuario. |
| IsActive | Opcional | Indica si el Usuario es activo o no (true o false). |
| Page | Opcional | Página que se extrae en la consulta (Por default = 1). |
| PerPage | Opcional | Número de registros que se obtienen por página(Por default = 10 máx. 50). |
Ejemplo Request
Ejemplo de request para obtener usuarios sin filtro.
curl --request GET --url 'https://api.test.sw.com.mx/management/v2/api/dealers/users' \ --header 'Authorization: Bearer $token'
Ejemplos de consultas usando filtros como ID, RFC o varios filtros
Consulta de usuarios por RFC.
curl --location 'http://api.test.sw.com.mx/management/v2/api/dealers/users?TaxId=XIA190128J63' \ --header 'Authorization: bearer $token'
Consulta de usuarios por ID.
curl --location 'http://api.test.sw.com.mx/management/v2/api/dealers/users?IdUser=a8b8881a-3456-481b-96b9-e02fd895f5be' \ --header 'Authorization: bearer $token'
Consulta de usuarios por varios filtros.
curl --request GET --url 'https://api.test.sw.com.mx/management/v2/api/dealers/users?Email=correo@example.com&IsActive=true' \ --header 'Authorization: Bearer $token'
Ejemplo Response
{
"data": [
{
"idUser": "7300db9e-70d3-0000-0000-d25620290282",
"idDealer": "dec88317-0000-0000-9d23-9bb687444600",
"name": "Pruebas User",
"taxId": "XAXX010101000",
"username": "correo@example.com",
"lastPasswordChange": "2023-09-01T13:31:36.837",
"email": "correo@example.com",
"isAdmin": false,
"profile": 3,
"isActive": true,
"registeredDate": "2023-09-01T13:31:38.483",
"accessToken": null,
"phone": null,
"stamps": 91,
"isUnlimited": false
}
],
"meta": {
"page": 1,
"perPage": 10,
"pageCount": 1,
"totalCount": 1,
"totalPages": 1
},
"links": {
"Self": "?page=1&perPage=10&email=correo@example.com&isActive=true",
"First": "?page=1&perPage=10&email=correo@example.com&isActive=true",
"End": "?page=1&perPage=10&email=correo@example.com&isActive=true"
},
"status": "success"
}
{
"messageDetail": "Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).",
"message": "An exception was thrown while attempting to evaluate a LINQ query parameter expression. See the inner exception for more information. To show additional information call 'DbContextOptionsBuilder.EnableSensitiveDataLogging'.",
"status": "error"
}
| Atributo | Tipo | Descripción |
|---|---|---|
| status | String | Indica el estado de la respuesta. Puede ser “success” o “error”. |
| message | String | Solo aparece en respuestas de error. Describe la razón del error. |
| messageDetail | String | Proporciona detalles adicionales del error cuando existe. |
| data | Array/null | Lista de objetos con información de usuarios. Cada elemento contiene los datos de un usuario registrado. |
| meta | Object/null | Contiene información de paginación: página actual, total de elementos, etc. |
Actualizar Usuario
Realiza la modificación de alguno de los datos de tus cuentas hijas por este método.
🔗 Endpoint
| Método | Ruta |
|---|---|
| PUT | /management/v2/api/dealers/users/{userId} |
🔐 Autenticación y Headers
| Header | Value |
|---|---|
| Authorization | Bearer Token |
| Content-Type | application/json |
📍 Parámetros Path
| Propiedad | Uso | Descripción |
|---|---|---|
| userId | Requerido | ID del usuario a actualizar. Se puede obtener mediante el método de “Consultar usuarios”. |
🧾 Parámetros JSON
| Propiedad | Tipo | Uso | Descripción |
|---|---|---|---|
| iduser | guid | Requerido | ID del usuario a actualizar. |
| name | string | Opcional | Nuevo nombre del usuario. |
| taxId | string | Opcional | Nuevo RFC del usuario. |
| notificationEmail | string | Opcional | Nuevo correo de notificaciones. |
| phone | string | Opcional | Nuevo número telefónico del usuario. |
| isUnlimited | boolean | Opcional | Especificar si tendrá timbres ilimitados. |
Ejemplo Request
curl --location --request PUT 'https://api.test.sw.com.mx/management/v2/api/dealers/users/798299e2-0000-0000-91ce-00c1c7693807' \
--header 'Authorization: bearer $token' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": null,
"taxId": null,
"isUnlimited": false,
"iduser":"798299e2-0000-0000-91ce-00c1c7693807",
"notificationEmail":"correo.cambio@gmail.com",
"phone": "3325115682"
}'
Ejemplo Response
{
"data": "798299e2-0000-0000-91ce-00c1c7693807",
"meta": null,
"links": null,
"status": "success"
}
{
"message": "No es posible actualizar, los dato enviados son identicos a los actuales",
"status": "error"
}
| Atributo | Tipo | Descripción |
|---|---|---|
| status | String | Indica el estado de la respuesta. Puede ser “success” o “error”. |
| message | String | Solo aparece en respuestas de error. Describe la razón del error. |
| data | String | UUID del usuario que fue actualizado exitosamente. |
Eliminar Usuario
Deshabilita las cuentas de tus clientes que no necesites con este método.
🔗 Endpoint
| Método | Ruta |
|---|---|
| DELETE | /management/v2/api/dealers/users/{userId} |
🔐 Autenticación y Headers
| Header | Value |
|---|---|
| Authorization | Bearer Token |
📍 Parámetros Path
| Propiedad | Uso | Descripción |
|---|---|---|
| userId | Requerido | ID del usuario a eliminar. Se puede obtener mediante el método de “Consultar usuarios”. |
Ejemplo Request
curl --location --request DELETE 'https://api.test.sw.com.mx/management/v2/api/dealers/users/798299e2-0000-0000-91ce-00c1c7693807' \ --header 'Authorization: Bearer $token'
Ejemplo Response
Recibirás un HTTP Code 204 - No Content
{
"message": "El usuario no se puede eliminar, tiene saldo de 6",
"status": "error"
}
| Atributo | Tipo | Descripción |
|---|---|---|
| status | String | Indica el estado de la respuesta. |
| message | String | Solo aparece en respuestas de error. Describe la razón del error. |
En SW® somos mejores para TI, es por ello que tu opinión es muy importante, por favor ayúdanos calificando este articulo y dejando tus comentarios.