> ## Documentation Index
> Fetch the complete documentation index at: https://tech.sedierp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Radicar solicitud PQRs

El servicio permite a los usuarios radicar una solicitud de PQR (petición, queja, reclamo o sugerencia) desde el portal de clientes, con sus documentos adjuntos, en línea en formato JSON.

Al radicar la solicitud, la plataforma le asigna el consecutivo, el estado inicial configurado por la empresa, el canal "página web" y el responsable de la tipificación, calcula la fecha límite de respuesta según la tipificación, la prioridad y el calendario de atención, registra el seguimiento inicial "Hemos recibido tu solicitud" y notifica al responsable (y al cliente, si la empresa lo tiene configurado).

El método de solicitud es POST y se requiere un encabezado "Authorization" para la autenticación, que debe contener el **AccessToken** (JWT) obtenido previamente del servicio de [inicio de sesión](https://tech.sedierp.com/inicio-de-sesion.md).

## Prerequisitos

Antes de radicar la solicitud, se debe contar con los siguientes datos:

* AccessToken solicitado mediante el servicio de [inicio de sesión](https://tech.sedierp.com/inicio-de-sesion.md)
* Identificador único del cliente (`UniqueID`) obtenido del servicio de [datos del cliente](https://tech.sedierp.com/datos-del-cliente.md)
* Origen, tipificación, tipo de requerimiento y prioridad obtenidos del servicio de [orígenes de solicitudes](https://tech.sedierp.com/origenes-de-solicitudes.md)
* Código del inmueble, bodega, fiducia o contrato obtenido del servicio de [orígenes por cliente](https://tech.sedierp.com/origenes-por-cliente.md)
* Archivos adjuntos cargados previamente con el servicio de [carga de archivos](https://tech.sedierp.com/carga-de-archivos.md), si aplica

## Radicar solicitud

**Request URL:** [https://portal.sedierp.com/API/api/SolicitudesPQRs/SolicitudesInsertar](https://portal.sedierp.com/API/api/SolicitudesPQRs/SolicitudesInsertar)\
**Tipo:** POST \
**Content Type:** application/json

**TipificacionID** `int` *required*

Código de la tipificación de la solicitud (ID), obtenido del servicio de [orígenes de solicitudes](https://tech.sedierp.com/origenes-de-solicitudes.md). La tipificación define el responsable y el tiempo de respuesta; se puede consultar su detalle con el servicio de [tipificación detallada](https://tech.sedierp.com/extranet/tipificacion-detallada-consultar).

**Mensaje** `string` *required*

Mensaje o cuerpo de la solicitud.

**UniqueID** `GUID`

Identificador único del cliente que radica (`UniqueID` del servicio de [datos del cliente](https://tech.sedierp.com/datos-del-cliente.md)). Asocia la solicitud al cliente: las solicitudes radicadas sin este dato no aparecen en la [consulta de solicitudes](https://tech.sedierp.com/consulta-general-pqrs.md).

**Asunto** `string`

Asunto de la solicitud (máx. 200 caracteres).

**SolicitudOrigenID** `int`

Código del origen de la solicitud.

| Código | Origen |
| - | - |
| 2 | Inmuebles |
| 3 | Bodegas |
| 5 | Fiducias |
| 6 | Nómina |

**CodigoOrigen** `int`

Código del inmueble, bodega, fiducia o contrato de trabajo sobre el que se radica la solicitud (ID), obtenido del servicio de [orígenes por cliente](https://tech.sedierp.com/origenes-por-cliente.md). Para inmuebles, bodegas y fiducias se usa para asignar la sucursal de la solicitud.

**TipoRequerimientoID** `int`

Código del tipo de requerimiento (ID), obtenido del servicio de [orígenes de solicitudes](https://tech.sedierp.com/origenes-de-solicitudes.md).

**ClientePrioridadID** `int`

Código de la prioridad de la solicitud (ID), obtenido del servicio de [orígenes de solicitudes](https://tech.sedierp.com/origenes-de-solicitudes.md). Si no se envía, se asigna la prioridad de menor factor configurada por la empresa.

**ReplicaSolicitudID** `int`

Código de una solicitud anterior (ID) cuando la nueva solicitud es una réplica de esta.

**FechaOcurrencia** `date`

Fecha de ocurrencia de los hechos.

**TipoPersonaID** `int`

Código del tipo de persona que radica (ID), obtenido del servicio de [tipos de persona](https://tech.sedierp.com/tipos-de-personas.md).

**Empresa** `string`

Nombre de la empresa que radica la solicitud, cuando aplica (máx. 150 caracteres).

**Cargo** `string`

Cargo de la persona que radica la solicitud (máx. 150 caracteres).

**Nombre** `string`

Nombres de la persona que radica la solicitud (máx. 150 caracteres).

**Apellidos** `string`

Apellidos de la persona que radica la solicitud (máx. 150 caracteres).

**TipoDocumentoID** `int`

Código del tipo de documento de la persona que radica (ID), obtenido del servicio de [tipos de documentos](https://tech.sedierp.com/tipos-de-documentos.md).

**NumeroDocumento** `string`

Número de documento de la persona que radica (máx. 50 caracteres).

**Direccion** `string`

Dirección de la persona que radica (máx. 150 caracteres).

**TelefonoFijo** `string`

Teléfono fijo de la persona que radica (máx. 50 caracteres).

**TelefonoMovil** `string`

Teléfono móvil o celular de la persona que radica (máx. 50 caracteres).

**Email** `string`

Correo electrónico de la persona que radica (máx. 150 caracteres).

**CiudadID** `int`

Código de la ciudad de la persona que radica (ID).

**SolicitudID** `int`

No se tiene en cuenta: el servicio siempre registra una nueva solicitud. Enviar null.

**SolicitudesDocumentos** `array`

Documentos adjuntos de la solicitud. Cada archivo se debe cargar primero con el servicio de [carga de archivos](https://tech.sedierp.com/carga-de-archivos.md), que retorna los valores de `Ruta`, `NombreArchivo` y `Extension`.

**propiedades**

**Ruta** `string`

Nombre del archivo en el servidor, tal como lo retorna el campo `Ruta` del servicio de carga de archivos (máx. 200 caracteres).

**Nombre** `string`

Nombre original del archivo, tal como lo retorna el campo `NombreArchivo` del servicio de carga de archivos (máx. 200 caracteres).

**Extension** `string`

Extensión del archivo, tal como la retorna el servicio de carga de archivos (ej. ".pdf", máx. 6 caracteres).

**Eliminar** `bool` *required*

Se debe enviar `false` para registrar el documento. Los documentos con `true` o sin este campo **no se registran**.

**Respuesta** `bool`

Indica si el documento hace parte de la respuesta (true) o de la radicación (false), por defecto false. Desde el portal se debe enviar false.

**Fecha** `datetime`

Fecha de carga del documento. Si no se envía, se toma la fecha de radicación.

**SolicitudDocumentoID** `int`

No se tiene en cuenta en la radicación. Enviar null.

```bash theme={null}
curl --location 'https://portal.sedierp.com/API/api/SolicitudesPQRs/SolicitudesInsertar' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--data '{
	"SolicitudID": null,
	"UniqueID": "c4d81e27-90ab-4f3e-b6a2-71d5e09f8c34",
	"FechaOcurrencia": "2026-11-01",
	"ReplicaSolicitudID": null,
	"SolicitudOrigenID": 2,
	"CodigoOrigen": 318,
	"TipificacionID": 14,
	"TipoRequerimientoID": 3,
	"TipoPersonaID": 1,
	"TipoDocumentoID": 1,
	"CiudadID": 11001,
	"ClientePrioridadID": 2,
	"Asunto": "Filtración en el baño principal",
	"Empresa": null,
	"Cargo": null,
	"Nombre": "LAURA",
	"Apellidos": "MARTINEZ ROJAS",
	"NumeroDocumento": "1032456789",
	"Direccion": "CL 45 # 12 - 30 AP 501",
	"TelefonoFijo": null,
	"TelefonoMovil": "3104567890",
	"Email": "laura.martinez@correo.com",
	"Mensaje": "Desde el fin de semana hay una filtración en el techo del baño principal que está dañando el cielo raso.",
	"SolicitudesDocumentos": [
		{
			"SolicitudDocumentoID": null,
			"Ruta": "0b6f2c1e-7a43-4d59-8e21-c9a7d3f45b10foto-bano.jpg",
			"Nombre": "foto-bano.jpg",
			"Extension": ".jpg",
			"Respuesta": false,
			"Fecha": null,
			"Eliminar": false
		}
	]
}'
```

### Validaciones

El servicio realiza las siguientes validaciones antes de radicar la solicitud. Si alguna no se cumple, no se registra la solicitud y se retorna el error correspondiente.

* `Mensaje` es obligatorio y los campos de texto no deben superar su longitud máxima (HTTP 400 con el detalle de la validación).
* `TipificacionID` es obligatorio y la tipificación debe tener un usuario o grupo responsable asignado.
* Si la empresa exige calificar las solicitudes, el cliente (`UniqueID`) no debe tener solicitudes cerradas hace más de 3 días sin calificar. Esta validación no aplica cuando se envía `ReplicaSolicitudID`.
* La empresa debe tener configurados: un único estado de solicitud por defecto, el calendario de días y horas de atención, y el canal de página web.

### Respuesta

El servicio retorna un registro con el resultado de la radicación. Si el AccessToken no se envía, es inválido o expiró, el servicio responde HTTP 401 (`{"Code": 401, "Message": "El TokenAcceso no es valido"}`).

**TipoSalida** `string`

Resultado de la operación: "OK".

**Codigo** `int`

Código único de la solicitud registrada (SolicitudID).

**Descripcion** `string`

Mensaje con el consecutivo de radicación (ej. "Se radico su solicitud correctamente N° 126.").

Cuando ocurre un error, el servicio responde HTTP 400 con el campo `Message`, que contiene el detalle del error precedido de "Error:".

```json Request theme={null}
{
  "SolicitudID": null,
  "UniqueID": "c4d81e27-90ab-4f3e-b6a2-71d5e09f8c34",
  "FechaOcurrencia": "2026-11-01",
  "ReplicaSolicitudID": null,
  "SolicitudOrigenID": 2,
  "CodigoOrigen": 318,
  "TipificacionID": 14,
  "TipoRequerimientoID": 3,
  "TipoPersonaID": 1,
  "TipoDocumentoID": 1,
  "CiudadID": 11001,
  "ClientePrioridadID": 2,
  "Asunto": "Filtración en el baño principal",
  "Empresa": null,
  "Cargo": null,
  "Nombre": "LAURA",
  "Apellidos": "MARTINEZ ROJAS",
  "NumeroDocumento": "1032456789",
  "Direccion": "CL 45 # 12 - 30 AP 501",
  "TelefonoFijo": null,
  "TelefonoMovil": "3104567890",
  "Email": "laura.martinez@correo.com",
  "Mensaje": "Desde el fin de semana hay una filtración en el techo del baño principal que está dañando el cielo raso.",
  "SolicitudesDocumentos": [
    {
      "SolicitudDocumentoID": null,
      "Ruta": "0b6f2c1e-7a43-4d59-8e21-c9a7d3f45b10foto-bano.jpg",
      "Nombre": "foto-bano.jpg",
      "Extension": ".jpg",
      "Respuesta": false,
      "Fecha": null,
      "Eliminar": false
    }
  ]
}
```

```json Exitosa theme={null}
{
    "total": 1,
    "rows": [
        {
            "TipoSalida": "OK",
            "Codigo": 1542,
            "Descripcion": "Se radico su solicitud correctamente N° 126."
        }
    ],
    "result": 1
}
```

```json Error theme={null}
{
    "Message": "Error: Tienes casos pendientes por calificar, para registrar uno nuevo primero debes calificar los anteriores."
}
```

```json Validación theme={null}
{
    "type": "https://tools.ietf.org/html/rfc9110#section-15.5.1",
    "title": "One or more validation errors occurred.",
    "status": 400,
    "errors": {
        "Mensaje": [
            "The Mensaje field is required."
        ]
    },
    "traceId": "00-6f1d2c3b4a5e6f708192a3b4c5d6e7f8-1a2b3c4d5e6f7081-00"
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.