Referencia

Reglas

Políticas de la organización que se aplican a todos los turnos alcanzados.

Listar reglas

GETapi.niucore.com/api/v1/rules

Scope: rules:read

Reglas de la organización visibles para el usuario.

Consulta

levelstring

Filtra por nivel.

companyarea

pageintegerpor defecto 1

Página, empezando en 1.

sizeintegerpor defecto 50

Elementos por página. Máximo 200.

curl -sS -X GET 'https://api.niucore.com/api/v1/rules?level=company' \
  -H "Authorization: Bearer $NIUCORE_ACCESS_TOKEN"
Respuesta
{
  "status": "success",
  "message": "Operación exitosa",
  "message_code": "api_v1_ok",
  "data": [
    {
      "id": 58,
      "name": "No prometer plazos de entrega",
      "description": "Aplica a toda la empresa.",
      "instructions": "Nunca comprometas una fecha de entrega sin confirmarla con logística.",
      "icon": "shield",
      "level": "company",
      "area_ids": [],
      "is_active": true,
      "created_at": "2026-05-20T08:44:02Z"
    }
  ],
  "meta": {
    "request_id": "9f1c0a3e-7b2d-4f18-9a55-2c6e0d1b4a77",
    "page": 1,
    "size": 50,
    "total": 1
  }
}

Crear una regla

POSTapi.niucore.com/api/v1/rules

Scope: rules:write

Crea una regla de empresa o de área. Devuelve 201.

Cuerpo

namestringobligatorio

Hasta 255 caracteres.

instructionsstringobligatorio

La instrucción que se aplica a todos los turnos alcanzados. Hasta 4 000 caracteres. Puede citar bibliotecas, archivos, conectores y herramientas con {{tipo:id}} —no habilidades—: ver Referencias a recursos.

descriptionstring

Descripción.

iconstring

Icono.

levelstringpor defecto company

Alcance de la regla.

companyarea

area_idsinteger[]

Áreas alcanzadas, con level: "area". Tienen que estar en el alcance de la credencial.

Errores

  • 403api_v1_resource_policy_create_deniedLa credencial está limitada a recursos concretos (allowlist) y no puede crear nuevos de este tipo.
  • 422prompt_refs_invalidinstructions cita recursos que no existen, que el usuario no puede usar o que este tipo no admite. data[0] los agrupa por categoría y nada se guarda. Ver Referencias a recursos.
  • 422prompt_text_too_longinstructions supera 4 000 caracteres.
curl -sS -X POST 'https://api.niucore.com/api/v1/rules' \
  -H "Authorization: Bearer $NIUCORE_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "No prometer plazos de entrega",
    "instructions": "Nunca comprometas una fecha de entrega sin confirmarla con logística.",
    "level": "company"
  }'
Respuesta
{
  "status": "success",
  "message": "Operación exitosa",
  "message_code": "api_v1_ok",
  "data": {
    "id": 58,
    "name": "No prometer plazos de entrega",
    "description": "Aplica a toda la empresa.",
    "instructions": "Nunca comprometas una fecha de entrega sin confirmarla con logística.",
    "icon": "shield",
    "level": "company",
    "area_ids": [],
    "is_active": true,
    "created_at": "2026-05-20T08:44:02Z"
  },
  "meta": {
    "request_id": "9f1c0a3e-7b2d-4f18-9a55-2c6e0d1b4a77"
  }
}

Ver una regla

GETapi.niucore.com/api/v1/rules/{rule_id}

Scope: rules:read

Detalle de una regla.

Ruta

rule_idintegerobligatorio

Identificador.

Errores

  • 404api_v1_not_foundNo existe, o está fuera del alcance de la credencial. Los dos casos responden igual: un 403 confirmaría que el recurso existe.
curl -sS -X GET 'https://api.niucore.com/api/v1/rules/58' \
  -H "Authorization: Bearer $NIUCORE_ACCESS_TOKEN"
Respuesta
{
  "status": "success",
  "message": "Operación exitosa",
  "message_code": "api_v1_ok",
  "data": {
    "id": 58,
    "name": "No prometer plazos de entrega",
    "description": "Aplica a toda la empresa.",
    "instructions": "Nunca comprometas una fecha de entrega sin confirmarla con logística.",
    "icon": "shield",
    "level": "company",
    "area_ids": [],
    "is_active": true,
    "created_at": "2026-05-20T08:44:02Z"
  },
  "meta": {
    "request_id": "9f1c0a3e-7b2d-4f18-9a55-2c6e0d1b4a77"
  }
}

Editar una regla

PATCHapi.niucore.com/api/v1/rules/{rule_id}

Scope: rules:write

Actualiza los campos enviados.

Ruta

rule_idintegerobligatorio

Identificador.

Cuerpo

namestring

Nuevo nombre.

instructionsstring

Nuevas instrucciones. Si cambian, sus referencias {{tipo:id}} se revalidan todas.

descriptionstring

Descripción.

iconstring

Icono.

levelstring

Nuevo nivel.

companyarea

is_activeboolean

Activa o desactiva la regla.

area_idsinteger[]

Reemplaza las áreas alcanzadas.

Errores

  • 404api_v1_not_foundNo existe, o está fuera del alcance de la credencial. Los dos casos responden igual: un 403 confirmaría que el recurso existe.
  • 422prompt_refs_invalidinstructions cita recursos que no existen, que el usuario no puede usar o que este tipo no admite. data[0] los agrupa por categoría y nada se guarda. Ver Referencias a recursos.
  • 422prompt_text_too_longinstructions supera 4 000 caracteres.
curl -sS -X PATCH 'https://api.niucore.com/api/v1/rules/58' \
  -H "Authorization: Bearer $NIUCORE_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "is_active": false
  }'
Respuesta
{
  "status": "success",
  "message": "Operación exitosa",
  "message_code": "api_v1_ok",
  "data": {
    "id": 58,
    "name": "No prometer plazos de entrega",
    "description": "Aplica a toda la empresa.",
    "instructions": "Nunca comprometas una fecha de entrega sin confirmarla con logística.",
    "icon": "shield",
    "level": "company",
    "area_ids": [],
    "is_active": false,
    "created_at": "2026-05-20T08:44:02Z"
  },
  "meta": {
    "request_id": "9f1c0a3e-7b2d-4f18-9a55-2c6e0d1b4a77"
  }
}

Activar o desactivar

PATCHapi.niucore.com/api/v1/rules/{rule_id}/toggle

Scope: rules:write

Invierte el estado activo.

Ruta

rule_idintegerobligatorio

Identificador.

Errores

  • 404api_v1_not_foundNo existe, o está fuera del alcance de la credencial. Los dos casos responden igual: un 403 confirmaría que el recurso existe.
curl -sS -X PATCH 'https://api.niucore.com/api/v1/rules/58/toggle' \
  -H "Authorization: Bearer $NIUCORE_ACCESS_TOKEN"
Respuesta
{
  "status": "success",
  "message": "Operación exitosa",
  "message_code": "api_v1_ok",
  "data": {
    "id": 58,
    "name": "No prometer plazos de entrega",
    "description": "Aplica a toda la empresa.",
    "instructions": "Nunca comprometas una fecha de entrega sin confirmarla con logística.",
    "icon": "shield",
    "level": "company",
    "area_ids": [],
    "is_active": false,
    "created_at": "2026-05-20T08:44:02Z"
  },
  "meta": {
    "request_id": "9f1c0a3e-7b2d-4f18-9a55-2c6e0d1b4a77"
  }
}

Eliminar una regla

DELETEapi.niucore.com/api/v1/rules/{rule_id}

Scope: rules:write

Borrado lógico.

Ruta

rule_idintegerobligatorio

Identificador.

Errores

  • 404api_v1_not_foundNo existe, o está fuera del alcance de la credencial. Los dos casos responden igual: un 403 confirmaría que el recurso existe.
curl -sS -X DELETE 'https://api.niucore.com/api/v1/rules/58' \
  -H "Authorization: Bearer $NIUCORE_ACCESS_TOKEN"
Respuesta
{
  "status": "success",
  "message": "Operación exitosa",
  "message_code": "api_v1_ok",
  "data": {
    "id": 58
  },
  "meta": {
    "request_id": "9f1c0a3e-7b2d-4f18-9a55-2c6e0d1b4a77"
  }
}