Ir al contenido

Crear invitación

POST
/invitations
curl --request POST \
--url https://api.dev.lade.com.mx/invitations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "teamId": "550e8400-e29b-41d4-a716-446655440000", "email": "nuevo@ejemplo.com", "role": "USER" }'

Invita a un usuario a unirse al equipo por email. Requiere rol ADMIN o OWNER

Media typeapplication/json
object
teamId
required
string format: uuid
email
required
string format: email
role

Rol del usuario en el equipo

string
default: USER
Allowed values: OWNER ADMIN USER
Example
{
"teamId": "550e8400-e29b-41d4-a716-446655440000",
"email": "nuevo@ejemplo.com",
"role": "USER"
}

Invitación creada

Media typeapplication/json
object
id
string format: uuid
teamId
string format: uuid
teamName
string
email
string format: email
role

Rol del usuario en el equipo

string
Allowed values: OWNER ADMIN USER
status
string
Allowed values: PENDING ACCEPTED REJECTED CANCELLED EXPIRED
invitedBy
string format: uuid
inviterName
string
expiresAt
string format: date-time
createdAt
string format: date-time
Example
{
"role": "OWNER",
"status": "PENDING"
}

Solicitud inválida

Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{
"error": "Validation failed",
"field": "email",
"message": "Invalid email format"
}

No autenticado

Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{
"error": "Unauthorized",
"message": "Invalid or expired token"
}

Sin permisos

Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{
"error": "Forbidden",
"message": "You don't have permission to access this resource"
}

Conflicto con recurso existente

Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{
"error": "Conflict",
"message": "Resource already exists"
}