← Inicio
⌕
Pregunta en el Discord
General ER:LC FiveM API
Desarrolladores
DOCUMENTACIÓN/Referencia de la API v1

API v1: moderación

Referencia de /v1/sanctions y /v1/bans: leer sanciones y bans, y poner una sanción.

Sanciones y bans. Todas las rutas cuelgan de https://api.blixye.com/v1 y llevan la llave en la cabecera Authorization (ver Llaves y ámbitos). Esta página sale de la especificación OpenAPI de la API; lo que no esté aquí, la API no lo hace.
OJO Sanciones y bans. Todas las rutas cuelgan de https://api.blixye.com/v1 y llevan la llave en la cabecera Authorization (ver Llaves y ámbitos). Esta página sale de la especificación OpenAPI de la API; lo que no esté aquí, la API no lo hace.
OJO
GET /sanctions: Lista de sanciones (moderation:read)
POST /sanctions: Poner una sanción (moderation:write)
GET /bans: Lista de bans (moderation:read)
Lista de sanciones
OJO Lista de sanciones
GET /sanctions. Sanciones de moderación. Ámbito: moderation:read.
OJO GET /sanctions. Sanciones de moderación. Ámbito: moderation:read.
Parámetros:
OJO Parámetros:
OJO
limit (consulta; entero, 1-100, por defecto 25, opcional): Tamaño de página (1-100).
cursor (consulta; texto, opcional): El meta.next_cursor de la página anterior.
order (consulta; texto, uno de: desc, asc, por defecto desc, opcional): desc = lo más nuevo primero.
member_id (consulta; texto, opcional): Miembro sancionado (usr_…).
status (consulta; texto, opcional): active, expired o revoked.
curl "https://api.blixye.com/v1/sanctions?limit=25" \ -H "Authorization: Bearer bx_live_…"
curl "https://api.blixye.com/v1/sanctions?limit=25" \ -H "Authorization: Bearer bx_live_…"
OJO curl "https://api.blixye.com/v1/sanctions?limit=25" \ -H "Authorization: Bearer bx_live_…"
Respuesta 200: Una página de sanciones.
OJO Respuesta 200: Una página de sanciones.
{ "data": [ { "id": "san_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "character_id": "chr_3tq0vJ1c9Ydl2Hk7WqPzEw", "type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "type": "Warning", "reason": "Random deathmatch", "description": "Insulted another player in OOC chat.", "notes": null, "images": [ "string" ], "warn_points": 1, "is_ban": false, "status": "active", "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "issued_by_name": "Admin", "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z" } ], "meta": { "next_cursor": "cur_3tq0vJ1c9Ydl2Hk7WqPzEw" } }
{ "data": [ { "id": "san_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "character_id": "chr_3tq0vJ1c9Ydl2Hk7WqPzEw", "type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "type": "Warning", "reason": "Random deathmatch", "description": "Insulted another player in OOC chat.", "notes": null, "images": [ "string" ], "warn_points": 1, "is_ban": false, "status": "active", "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "issued_by_name": "Admin", "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z" } ], "meta": { "next_cursor": "cur_3tq0vJ1c9Ydl2Hk7WqPzEw" } }
OJO { "data": [ { "id": "san_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "character_id": "chr_3tq0vJ1c9Ydl2Hk7WqPzEw", "type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "type": "Warning", "reason": "Random deathmatch", "description": "Insulted another player in OOC chat.", "notes": null, "images": [ "string" ], "warn_points": 1, "is_ban": false, "status": "active", "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "issued_by_name": "Admin", "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z" } ], "meta": { "next_cursor": "cur_3tq0vJ1c9Ydl2Hk7WqPzEw" } }
Errores (el formato está en Errores):
OJO Errores (el formato está en Errores):
OJO
400: Petición mal formada (limit, cursor, JSON o Idempotency-Key inválidos, o la llave en la URL).
401: Llave ausente, inválida, revocada o caducada (códigos missing_api_key, invalid_api_key, api_key_revoked, api_key_expired).
403: A la llave le falta un ámbito (missing_scope), la IP no está permitida (ip_not_allowed), el plan del servidor no tiene API (plan_required) o un módulo del MDT está apagado (module_off).
404: No existe en este servidor. Un id de otro servidor es siempre un 404.
429: Demasiadas peticiones con esta llave (el límite es por llave y por minuto, según el plan). Demasiados fallos de autenticación desde una IP también dan 429.
Poner una sanción
OJO Poner una sanción
POST /sanctions. Pone una sanción con la misma lógica que el panel de moderación: se aplican los valores del tipo salvo que mandes el valor, y la respuesta dice qué recomienda la política de escalado. Si el servidor tiene apagados los motivos libres, manda type_id. Ámbito: moderation:write.
OJO POST /sanctions. Pone una sanción con la misma lógica que el panel de moderación: se aplican los valores del tipo salvo que mandes el valor, y la respuesta dice qué recomienda la política de escalado. Si el servidor tiene apagados los motivos libres, manda type_id. Ámbito: moderation:write.
Parámetros:
OJO Parámetros:
OJO
Idempotency-Key (cabecera; texto, opcional): Hace seguro reintentar el POST: la misma clave devuelve la primera respuesta (con Idempotent-Replayed: true) durante 24 h. La misma clave con otro cuerpo es un 422.
Cuerpo (JSON):
OJO Cuerpo (JSON):
OJO
member_id (id usr_…, obligatorio): Miembro a sancionar.
character_id (id chr_…, admite null, opcional): Un personaje de ese miembro.
type_id (id sty_…, admite null, opcional): Tipo configurado (esto o type_label).
type_label (texto, máx. 80, admite null, opcional): Tipo libre (máx. 80).
reason (texto, máx. 255, admite null, opcional): Motivo (máx. 255).
description (texto, máx. 4000, admite null, opcional): Descripción.
notes (texto, máx. 4000, admite null, opcional): Notas del staff.
warn_points (entero, 0-1000, admite null, opcional): Puntos de aviso (por defecto, los del tipo).
expiry_days (entero, 0-3650, admite null, opcional): Días hasta que caduca, 0 = nunca (por defecto, los del tipo).
is_ban (booleano, admite null, opcional): Es un ban (por defecto, lo del tipo).
curl -X POST "https://api.blixye.com/v1/sanctions" \ -H "Authorization: Bearer bx_live_…" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 5f7c1d2e-mi-reintento-1" \ -d '{"member_id":"usr_3tq0vJ1c9Ydl2Hk7WqPzEw","character_id":"chr_3tq0vJ1c9Ydl2Hk7WqPzEw","type_id":"sty_3tq0vJ1c9Ydl2Hk7WqPzEw"}'
curl -X POST "https://api.blixye.com/v1/sanctions" \ -H "Authorization: Bearer bx_live_…" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 5f7c1d2e-mi-reintento-1" \ -d '{"member_id":"usr_3tq0vJ1c9Ydl2Hk7WqPzEw","character_id":"chr_3tq0vJ1c9Ydl2Hk7WqPzEw","type_id":"sty_3tq0vJ1c9Ydl2Hk7WqPzEw"}'
OJO curl -X POST "https://api.blixye.com/v1/sanctions" \ -H "Authorization: Bearer bx_live_…" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: 5f7c1d2e-mi-reintento-1" \ -d '{"member_id":"usr_3tq0vJ1c9Ydl2Hk7WqPzEw","character_id":"chr_3tq0vJ1c9Ydl2Hk7WqPzEw","type_id":"sty_3tq0vJ1c9Ydl2Hk7WqPzEw"}'
Respuesta 201: Creada.
OJO Respuesta 201: Creada.
{ "data": { "id": "san_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "character_id": "chr_3tq0vJ1c9Ydl2Hk7WqPzEw", "type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "type": "Warning", "reason": "Random deathmatch", "description": "Insulted another player in OOC chat.", "notes": null, "images": [ "string" ], "warn_points": 1, "is_ban": false, "status": "active", "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "issued_by_name": "Admin", "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z", "policy": { "step": 1, "count": 1, "within_days": 1, "apply_type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "apply_type": "Temporary ban", "ban_days": 1 } } }
{ "data": { "id": "san_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "character_id": "chr_3tq0vJ1c9Ydl2Hk7WqPzEw", "type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "type": "Warning", "reason": "Random deathmatch", "description": "Insulted another player in OOC chat.", "notes": null, "images": [ "string" ], "warn_points": 1, "is_ban": false, "status": "active", "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "issued_by_name": "Admin", "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z", "policy": { "step": 1, "count": 1, "within_days": 1, "apply_type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "apply_type": "Temporary ban", "ban_days": 1 } } }
OJO { "data": { "id": "san_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "character_id": "chr_3tq0vJ1c9Ydl2Hk7WqPzEw", "type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "type": "Warning", "reason": "Random deathmatch", "description": "Insulted another player in OOC chat.", "notes": null, "images": [ "string" ], "warn_points": 1, "is_ban": false, "status": "active", "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "issued_by_name": "Admin", "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z", "policy": { "step": 1, "count": 1, "within_days": 1, "apply_type_id": "sty_3tq0vJ1c9Ydl2Hk7WqPzEw", "apply_type": "Temporary ban", "ban_days": 1 } } }
Errores (el formato está en Errores):
OJO Errores (el formato está en Errores):
OJO
400: Petición mal formada (limit, cursor, JSON o Idempotency-Key inválidos, o la llave en la URL).
401: Llave ausente, inválida, revocada o caducada (códigos missing_api_key, invalid_api_key, api_key_revoked, api_key_expired).
403: A la llave le falta un ámbito (missing_scope), la IP no está permitida (ip_not_allowed), el plan del servidor no tiene API (plan_required) o un módulo del MDT está apagado (module_off).
404: No existe en este servidor. Un id de otro servidor es siempre un 404.
409: Conflicto (p. ej. la misma Idempotency-Key aún se está atendiendo, o se llegó al tope del plan).
422: Un campo no vale (details.field dice cuál).
429: Demasiadas peticiones con esta llave (el límite es por llave y por minuto, según el plan). Demasiados fallos de autenticación desde una IP también dan 429.
Lista de bans
OJO Lista de bans
GET /bans. Bans del servidor. Ámbito: moderation:read.
OJO GET /bans. Bans del servidor. Ámbito: moderation:read.
Parámetros:
OJO Parámetros:
OJO
limit (consulta; entero, 1-100, por defecto 25, opcional): Tamaño de página (1-100).
cursor (consulta; texto, opcional): El meta.next_cursor de la página anterior.
order (consulta; texto, uno de: desc, asc, por defecto desc, opcional): desc = lo más nuevo primero.
member_id (consulta; texto, opcional): Miembro baneado (usr_…).
active (consulta; booleano, opcional): true = solo los que están en vigor.
curl "https://api.blixye.com/v1/bans?limit=25" \ -H "Authorization: Bearer bx_live_…"
curl "https://api.blixye.com/v1/bans?limit=25" \ -H "Authorization: Bearer bx_live_…"
OJO curl "https://api.blixye.com/v1/bans?limit=25" \ -H "Authorization: Bearer bx_live_…"
Respuesta 200: Una página de bans.
OJO Respuesta 200: Una página de bans.
{ "data": [ { "id": "ban_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "reason": "Random deathmatch", "is_active": true, "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "revoked": false, "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z" } ], "meta": { "next_cursor": "cur_3tq0vJ1c9Ydl2Hk7WqPzEw" } }
{ "data": [ { "id": "ban_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "reason": "Random deathmatch", "is_active": true, "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "revoked": false, "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z" } ], "meta": { "next_cursor": "cur_3tq0vJ1c9Ydl2Hk7WqPzEw" } }
OJO { "data": [ { "id": "ban_3tq0vJ1c9Ydl2Hk7WqPzEw", "member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "reason": "Random deathmatch", "is_active": true, "expires_at": "2026-09-27T18:04:05Z", "issued_by_member_id": "usr_3tq0vJ1c9Ydl2Hk7WqPzEw", "revoked": false, "revoked_at": null, "revoked_reason": null, "created_at": "2026-09-27T18:04:05Z" } ], "meta": { "next_cursor": "cur_3tq0vJ1c9Ydl2Hk7WqPzEw" } }
Errores (el formato está en Errores):
OJO Errores (el formato está en Errores):
OJO
400: Petición mal formada (limit, cursor, JSON o Idempotency-Key inválidos, o la llave en la URL).
401: Llave ausente, inválida, revocada o caducada (códigos missing_api_key, invalid_api_key, api_key_revoked, api_key_expired).
403: A la llave le falta un ámbito (missing_scope), la IP no está permitida (ip_not_allowed), el plan del servidor no tiene API (plan_required) o un módulo del MDT está apagado (module_off).
404: No existe en este servidor. Un id de otro servidor es siempre un 404.
429: Demasiadas peticiones con esta llave (el límite es por llave y por minuto, según el plan). Demasiados fallos de autenticación desde una IP también dan 429.
← Anterior
API v1: miembros y roles
Siguiente →
API v1: sesiones de ER:LC
46 / 54 Falta algo aquí →
PASO 1 · PLAN ×
Elige el plan de tu servidor
Después del pago le pones nombre y lo configuramos juntos. Puedes cambiar de plan cuando quieras.
FREE1 DE 1 LIBRE 500 personajes y el CAD completo. Para probarlo. 0 €
PLUSAL MES CAD completo, moderación, actividad y economía. 5,99 €
PREMIUMER:LC Y FIVEM Todo lo de PLUS, FiveM incluido y límites más altos. 12,99 €
ENTERPRISEPERMANENTE Todo PREMIUM para siempre, hospedado por ti y sin cuotas nunca. Consultar
Continuar al pago
Cancelas cuando quieras · 14 días de desistimiento, salvo que pidas empezar al momento
Confirmar y pagar
ER:LC PREMIUM
Mensual · una licencia
12,99 €
CORREO
TARJETA
Atrás
En desarrollo — no disponible
Blixye está en desarrollo: todavía no se pueden contratar servicios.Pago seguro · IVA incluido
Ponle nombre a tu servidor
Es el nombre que verán tus jugadores en el launcher y en Discovery. Lo puedes cambiar cuando quieras.
NOMBRE DEL SERVIDOR
Le daremos un código corto, tipo SKY-T2Q, para vincular el launcher.
SIGUIENTE Al crearlo abrimos la guía de configuración: launcher, Discord y módulos en tres pasos.
Atrás
Crear el servidor
Escribe al menos 3 letras.
PASO 1 DE 3 · GUÍA ×
1. Pásale el launcher a tu gente
Es lo único que instalan, y solo una vez. Entran con Discord, verificamos su cuenta de Roblox y el overlay aparece sobre la partida.
Ir a la descarga
2. Crea tus departamentos
Policía, sheriff, bomberos o lo que uses. Cada uno con sus rangos y permisos: eso decide quién puede sancionar, fichar o ver expedientes.
3. Abre el servidor
Con el primer turno de servicio empiezan a llenarse las llamadas, la actividad y la economía. A partir de ahí solo ajustas.
Atrás
Siguiente
⌕ ESC
Overlay in-game Radio, ficha y despacho encima de la partida, sin alt-tab. ER:LC CAD y departamentos Llamadas en cola, unidades con estado y rosters con rangos. ER:LC Moderación y apelaciones Sanciones con contexto, logs y apelaciones que no se pierden. ER:LC Actividad del staff Cuotas por rango, turnos y un informe semanal automático. ER:LC Economía y negocios Cuentas, nóminas, negocios de jugadores e inventario. ER:LC Blixye Framework El núcleo: personajes, permisos, base de datos y bridge QBCore y ESX. FiveM Inventario Peso, contenedores e intercambios seguros entre jugadores. FiveM MDT policial Fichas, multas, órdenes de busca y consultas de matrícula. FiveM Banca Cuentas, transferencias, nóminas y cuentas de empresa. FiveM Trabajos Turnos, nóminas y jerarquía por empresa. FiveM Garajes Propiedad de vehículos, daños persistentes y depósito. FiveM Casas Compra, alquiler, muebles y almacenamiento propio. FiveM Teléfono Mensajes, llamadas, apps y redes sociales del rol. FiveM Médico Heridas por zona, tratamientos y hospital con camas. FiveM Todos los scripts Los ocho scripts sin límite, en un pago permanente o por suscripción. FiveM Instalar Blixye en ER:LC Del servidor vacío al primer turno de servicio, sin tocar un archivo del juego. Documentación Instalar el framework de FiveM El zip, el SQL y el bridge de tu base actual, en el orden correcto. Documentación Tu primera semana Qué configurar cada día para no acabar con veinte cosas a medias. Documentación CAD y despacho Llamadas, unidades y prioridades dentro del overlay. Documentación Moderación y apelaciones Sanciones con pruebas, apelaciones y el registro que te cubre. Documentación Actividad y turnos Horas, cuotas y quién está patrullando de verdad. Documentación Scripts y versión gratis Qué limita la versión gratis de cada script y qué abre la completa. Documentación Bridge con QBCore y ESX Convivir con tu base actual sin duplicar jugadores ni dinero. Documentación Rendimiento Dónde mirar cuando el servidor va a tirones. Documentación
Nada con ese nombre. Prueba con «inventario», «CAD» o «licencias».
↵ abrir CTRL K buscar 37 resultados
ROTAR LA KEY ×
! La key actual deja de valer en el momento en que confirmes. Esto no se puede deshacer.
key actual → key nueva al confirmar
Pega la key nueva en el config del script.
Reinicia el recurso: refresh y ensure.
Mientras no lo hagas, el script no cargará.
Sí, rotar la key Cancelar
Qué incluye cada plan ×
FREE
DISCORD
PLUS
PREMIUM
ENTERPRISE
Precio
Gratis
2,99 €/mes
5,99 €/mes
12,99 €/mes
Consultar
GENERAL
Personajes guardados
500
—
5000
∞
∞
Código de invitación propio
—
✓
✓
✓
✓
CAD
Corporaciones máx.
2
—
6
∞
∞
Subdivisiones máx.
0
—
6
∞
∞
Borrado de datos MDT
1 mes
—
1 año
Nunca
Nunca
Acceso al MDT
Completo
—
Completo
Completo
Completo
Historial de logs
7 días
—
90 días
∞
∞
Exportar datos
—
—
✓
✓
✓
Investigaciones
—
—
✓
✓
✓
Almacenamiento de pruebas
—
—
Sin límite
Sin límite
Sin límite
Leyes propias
50
—
150
∞
∞
Mapa en tiempo real
—
—
✓
✓
✓
Bodycam
—
—
✓
✓
✓
Ubicación en el mapa en vivo
—
—
✓
✓
✓
Búsqueda avanzada
—
—
✓
✓
✓
Canales de radio (Discord VC)
10
—
50
100
∞
Roles por corporación
15
—
50
∞
∞
BANK
Cuentas bancarias
1 por pj
—
3 por pj
6 por pj
12 por pj
Transferencias
✓
—
✓
✓
✓
Historial de movimientos
✓
—
✓
✓
✓
Tarjetas por cuenta
1
—
2
3
5
Tarjetas temporales
Duración fija
—
✓
✓
✓
Tarjetas por usos
—
—
Máx. 5 por pj
✓
✓
Recompensas por rol
✓
—
✓
✓
✓
Permitir saldo negativo
—
—
✓
✓
✓
Transferencias programadas
—
—
✓
✓
✓
Deudas entre jugadores
—
—
✓
✓
✓
Límites por operación
—
—
✓
✓
✓
Cuentas compartidas
Máx. 2 miembros
—
Máx. 5 miembros
∞
∞
ADMIN
Mapa de calor de jugadores
—
—
✓
✓ más preciso
✓ más preciso
Formularios máx.
3
5
10
∞
∞
Tu servidor en el teléfono
—
—
✓
✓
✓
Roles de admin máx.
owner +2
owner +5
owner +10
∞
∞
Soporte prioritario
—
✓
✓
✓
✓
Historial de auditoría de staff
7 días
30 días
90 días
∞
∞
Funciones beta
—
✓
✓
✓
✓
Crear servidor
Los addons de personajes y almacenamiento se añaden sobre cualquier plan.
Cookies SOLO ESENCIALES
Solo usamos las imprescindibles: tu sesión, la seguridad al entrar y tu idioma. No hay analítica ni publicidad, así que no hay nada que aceptar ni rechazar.
Entendido
Política de cookies