n8n-nodes-starter/nodes/S4DSAuth/README.md
2025-07-06 18:44:45 -05:00

111 lines
No EOL
3.1 KiB
Markdown

# S4DS Authentication Node
Este nodo permite autenticarse con las APIs de S4DS y gestionar tokens de acceso.
## Características
- **Generación de tokens**: Autenticación con usuario y contraseña
- **Validación de tokens**: Verificar si un token es válido
- **Múltiples ambientes**: Soporte para Test, UAT y Production
- **Múltiples clientes**: Configuración para diferentes clientes (Demo, Cliente 1, Cliente 2)
- **Gestión de contexto**: Almacenamiento automático de tokens para uso en otros nodos
## Configuración
### Credenciales
1. Configure las credenciales de S4DS API:
- **Base URL**: Seleccione el ambiente y cliente correspondiente
- **Username**: Nombre de usuario para autenticación
- **Password**: Contraseña para autenticación
- **Custom Base URL**: Para URLs personalizadas
- **Timeout**: Tiempo de espera para las peticiones (ms)
### Operaciones
#### Generate Token
Genera un token de autenticación usando las credenciales configuradas.
**Parámetros opcionales:**
- **Store Token in Context**: Almacenar token en el contexto del workflow
- **Token Context Key**: Clave para almacenar el token (por defecto: `s4ds_token`)
**Parámetros opcionales:**
- **Store Token in Context**: Almacenar token en el contexto del workflow
- **Token Context Key**: Clave para almacenar el token (por defecto: `s4ds_token`)
**Respuesta:**
```json
{
"token_type": "Bearer",
"expires_in": 3600,
"token": "8a6c71b3-fa62-434d-8b38-907de24c3176"
}
```
#### Validate Token
Valida si un token existente es válido.
**Parámetros requeridos:**
- **Token**: Token a validar
## Uso en Workflows
### Flujo básico de autenticación
1. Configure el nodo **S4DS Auth** con la operación "Generate Token"
2. Configure las credenciales y parámetros de autenticación
3. El token se almacenará automáticamente en el contexto del workflow
4. Use el token en otros nodos de API S4DS
### Acceso al token desde otros nodos
El token se almacena en el contexto del workflow y puede ser accedido usando:
```
{{ $context.s4ds_token }}
```
O si configuró una clave personalizada:
```
{{ $context.your_custom_key }}
```
## URLs de API
### Demo
- **Test**: `https://demotest.s4ds.com/demoapi-test`
- **UAT**: `https://demouat.s4ds.com/demoapi-uat`
- **Production**: `https://demoprod.s4ds.com/demoapi-prod`
### Cliente 1
- **Test**: `https://cliente1test.s4ds.com/cliente1api-test`
- **UAT**: `https://cliente1uat.s4ds.com/cliente1api-uat`
- **Production**: `https://cliente1prod.s4ds.com/cliente1api-prod`
### Cliente 2
- **Test**: `https://cliente2test.s4ds.com/cliente2api-test`
- **UAT**: `https://cliente2uat.s4ds.com/cliente2api-uat`
- **Production**: `https://cliente2prod.s4ds.com/cliente2api-prod`
## Manejo de Errores
El nodo maneja automáticamente:
- Errores de autenticación (credenciales inválidas)
- Errores de red y timeout
- Tokens expirados
- Errores de formato de respuesta
## Ejemplo de Workflow
```
[S4DS Auth: Generate Token] → [HTTP Request: API Call] → [Process Data]
```
En el nodo HTTP Request, configure el header de autorización:
```
Authorization: Bearer {{ $context.s4ds_token }}
```