API Casos

Inicio / APIs Judiciales / API Casos

Descripcion

La API Pública de Consulta de Casos Judiciales es un servicio web que permite a usuarios y aplicaciones acceder de manera fácil y eficiente a información sobre los trámites y el estado de los casos judiciales en la República Dominicana. Esta herramienta ofrece detalles actualizados sobre los procesos judiciales, incluyendo las partes involucradas, las etapas del caso, las decisiones tomadas, entre otros datos relevantes. Su objetivo es promover la transparencia, facilitar el seguimiento de los casos y mejorar el acceso a la justicia, tanto para profesionales del derecho como para la ciudadanía, permitiendo una consulta ágil y directa a través de plataformas tecnológicas.

Manual de Usuario - API Pública de Consulta de Casos Judiciales

API Pública de Consulta de Casos Judiciales

Poder Judicial - Versión 1.0

1. Introducción

La API Pública de Consulta de Casos Judiciales es un servicio web que permite a usuarios y aplicaciones consultar información sobre los trámites de los casos judiciales de la República Dominicana.

Características Principales

Acceso Público

No requiere autenticación ni registro

Dos Métodos de Consulta

Por NUC o por Número de Solicitud

Formato JSON

Respuestas en formato JSON para fácil integración

¿Qué información puedo consultar?

  • Número Único de Caso (NUC): Identificador único del caso
  • Número de trámite y solicitud: Referencias del proceso
  • Asunto del caso: Descripción del tema judicial
  • Materia legal: Tipo de materia (Civil, Penal, Laboral, etc.)
  • Tribunal y sala asignados: Información de la jurisdicción
  • Fecha del trámite: Registro temporal
  • Estado actual: Situación del proceso
  • Resultado de audiencias: Si aplica al caso

2. Requisitos Previos

Para utilizar esta API, necesitará:

Requisitos Técnicos

  1. Conexión a Internet: Para realizar las peticiones HTTP
  2. Cliente HTTP: Puede usar:
    • Navegador web (para pruebas simples)
    • Herramientas como Postman, Insomnia o cURL
    • Código en cualquier lenguaje de programación (JavaScript, Python, C#, etc.)
  3. Datos de consulta: NUC o Número de Solicitud válido

Conocimientos Recomendados

  • Conceptos básicos de APIs REST
  • Formato JSON
  • Códigos de estado HTTP
  • Manejo de peticiones asíncronas

3. URL Base de la API

https://api.poderjudicial.gob.do/Casos
Nota: Todas las rutas descritas en este manual deben añadirse a la URL base.

Ejemplo de URL completa

https://api.poderjudicial.gob.do/Casos/Tramite/ObtenerDatosPorNuc?Nuc=123-2024-00456

4. Autenticación

Esta API es pública y no requiere autenticación.

Puede realizar consultas directamente sin necesidad de tokens, API keys o credenciales.

5. Límites de Uso

Para garantizar la disponibilidad del servicio, se aplican las siguientes restricciones:

Límite de Peticiones (Rate Limiting)

Parámetro Valor
Peticiones permitidas 100 por minuto
Identificación Por dirección IP
Período Ventana deslizante de 1 minuto
Código de respuesta al exceder 429 Too Many Requests

¿Qué sucede si excedo el límite?

Si realiza más de 100 peticiones en un minuto, recibirá la siguiente respuesta:

{
  "error": "Peticiones excedidas",
  "message": "Ha excedido la cantidad de peticiones. Intente de nuevo en 1 minuto."
}

Recomendaciones

  • Implemente lógica de reintento con retroceso exponencial
  • Distribuya sus peticiones a lo largo del tiempo
  • Cache los resultados cuando sea posible
  • Monitoree sus patrones de uso
  • Espere al menos 1 minuto antes de realizar nuevas peticiones si recibe un error 429

6. Endpoints Disponibles

6.1 Consulta por Número Único de Caso (NUC)

Este endpoint permite obtener todos los trámites asociados a un Número Único de Caso.

ObtenerDatosPorNuc

Consulta todos los trámites asociados a un NUC específico.

GET
/Tramite/ObtenerDatosPorNuc

Parámetros

Nombre Tipo Requerido Descripción
Nuc string Número Único de Caso a consultar

Respuesta Exitosa 200 OK

{
  "message": "Resultados para el caso: 123-2024-00456",
  "data": [
    {
      "nuc": "123-2024-00456",
      "numeroTramite": "TR-001",
      "numeroSolicitud": "SOL-2024-001",
      "asunto": "Demanda Civil",
      "materia": "Civil",
      "tribunal": "Tribunal Superior de Justicia",
      "sala": "Sala Civil 1",
      "fecha": "2024-01-15",
      "estado": "En proceso",
      "referencia": "REF-123",
      "resultadoAudiencia": null
    }
  ]
}

Respuesta Sin Resultados 200 OK

{
  "message": "No se encontraron resultados para el caso: 123-2024-00456",
  "data": []
}

Respuesta de Error 400 Bad Request

{
  "message": "Debe verificar el 'Nuc' suministrado."
}

6.2 Consulta por Número de Solicitud

Este endpoint permite obtener un trámite específico mediante su número de solicitud.

ObtenerDatosPorSolicitud

Consulta un trámite específico mediante su número de solicitud.

GET
/Tramite/ObtenerDatosPorSolicitud

Parámetros

Nombre Tipo Requerido Descripción
NroSolicitud string Número de solicitud del trámite

Respuesta Exitosa 200 OK

{
  "message": "Resultados para la solicitud: SOL-2024-001",
  "data": {
    "nuc": "123-2024-00456",
    "numeroTramite": "TR-001",
    "numeroSolicitud": "SOL-2024-001",
    "asunto": "Demanda Civil",
    "materia": "Civil",
    "tribunal": "Tribunal Superior de Justicia",
    "sala": "Sala Civil 1",
    "fecha": "2024-01-15",
    "estado": "En proceso",
    "referencia": "REF-123",
    "resultadoAudiencia": null
  }
}

Respuesta Sin Resultados 404 Not Found

{
  "message": "No se encontraron resultados con el número suministrado: SOL-2024-001",
  "data": {}
}

Respuesta de Error 400 Bad Request

{
  "message": "Debe verificar el Número de Solicitud suministrado."
}

7. Estructura de Respuestas

Estructura General

Todas las respuestas de la API siguen esta estructura:

{
  "message": "Descripción del resultado",
  "data": {objeto o array de datos}
}

Campos del Objeto de Trámite

Campo Tipo Descripción Ejemplo
nuc string Número Único de Caso "123-2024-00456"
numeroTramite string Identificador del trámite "TR-001"
numeroSolicitud string Número de solicitud asociada "SOL-2024-001"
asunto string Descripción del asunto judicial "Demanda Civil"
materia string Tipo de materia legal "Civil", "Penal", "Laboral"
tribunal string Tribunal asignado al caso "Tribunal Superior de Justicia"
sala string Sala judicial específica "Sala Civil 1"
fecha string Fecha de recepción del trámite "2024-01-15"
estado string Estado actual del trámite "En proceso", "Realizada"
referencia string Información de referencia adicional "REF-123"
resultadoAudiencia string Resultado de audiencia (si aplica) "Aceptada", "Rechazada", null

8. Códigos de Estado HTTP

La API utiliza los siguientes códigos de estado HTTP estándar:

Código Descripción Situación
200 OK Solicitud exitosa Petición procesada correctamente
400 Bad Request Parámetros faltantes o inválidos
404 Not Found No se encontraron resultados
429 Too Many Requests Límite de peticiones excedido
500 Internal Server Error Error del servidor

9. Ejemplos de Uso

Ejemplo 1: Consulta con cURL

Consulta por NUC

curl -X GET "https://api.poderjudicial.gob.do/Casos/Tramite/ObtenerDatosPorNuc?Nuc=2024-0087812"

Consulta por Número de Solicitud

curl -X GET "https://api.poderjudicial.gob.do/Casos/Tramite/ObtenerDatosPorSolicitud?NroSolicitud=2024-R0434917"

Ejemplo 2: Consulta con JavaScript (Fetch API)

// Consulta por NUC
async function consultarPorNuc(nuc) {
  try {
    const response = await fetch(
      `https://api.poderjudicial.gob.do/Casos/Tramite/ObtenerDatosPorNuc?Nuc=${nuc}`
    );

    if (!response.ok) {
      throw new Error(`HTTP error! status: ${response.status}`);
    }

    const data = await response.json();
    console.log('Resultados:', data);
    return data;
  } catch (error) {
    console.error('Error:', error);
  }
}

// Consulta por Número de Solicitud
async function consultarPorSolicitud(numeroSolicitud) {
  try {
    const response = await fetch(
      `https://api.poderjudicial.gob.do/Casos/Tramite/ObtenerDatosPorSolicitud?NroSolicitud=${numeroSolicitud}`
    );

    if (!response.ok) {
      throw new Error(`HTTP error! status: ${response.status}`);
    }

    const data = await response.json();
    console.log('Resultados:', data);
    return data;
  } catch (error) {
    console.error('Error:', error);
  }
}

// Uso
consultarPorNuc('123-2024-00456');
consultarPorSolicitud('SOL-2024-001');

Ejemplo 3: Consulta con Python (Requests)

import requests

def consultar_por_nuc(nuc):
    url = f"https://api.poderjudicial.gob.do/Casos/Tramite/ObtenerDatosPorNuc"
    params = {"Nuc": nuc}

    try:
        response = requests.get(url, params=params)
        response.raise_for_status()
        data = response.json()
        print("Resultados:", data)
        return data
    except requests.exceptions.RequestException as e:
        print(f"Error: {e}")
        return None

def consultar_por_solicitud(numero_solicitud):
    url = f"https://api.poderjudicial.gob.do/Casos/Tramite/ObtenerDatosPorSolicitud"
    params = {"NroSolicitud": numero_solicitud}

    try:
        response = requests.get(url, params=params)
        response.raise_for_status()
        data = response.json()
        print("Resultados:", data)
        return data
    except requests.exceptions.RequestException as e:
        print(f"Error: {e}")
        return None

# Uso
consultar_por_nuc("123-2024-00456")
consultar_por_solicitud("SOL-2024-001")

Ejemplo 4: Consulta con C# (.NET)


    using System;
    using System.Net.Http;
    using System.Threading.Tasks;
    using Newtonsoft.Json;

    public class ApiCliente
    {
    private static readonly HttpClient client = new HttpClient();
    private const string UrlBase = "https://api.poderjudicial.gob.do/Casos";

    public static async Task ConsultarPorNuc(string nuc)
    {
    try
    {
    string url = $"{UrlBase}/Tramite/ObtenerDatosPorNuc?Nuc={nuc}";
    HttpResponseMessage response = await client.GetAsync(url);
    response.EnsureSuccessStatusCode();

    string responseBody = await response.Content.ReadAsStringAsync();
    dynamic data = JsonConvert.DeserializeObject(responseBody);

    Console.WriteLine("Resultados:");
    Console.WriteLine(JsonConvert.SerializeObject(data, Formatting.Indented));
    }
    catch (HttpRequestException e)
    {
    Console.WriteLine($"Error: {e.Message}");
    }
    }

    public static async Task ConsultarPorSolicitud(string numeroSolicitud)
    {
    try
    {
    string url = $"{UrlBase}/Tramite/ObtenerDatosPorSolicitud?NroSolicitud={numeroSolicitud}";
    HttpResponseMessage response = await client.GetAsync(url);
    response.EnsureSuccessStatusCode();

    string responseBody = await response.Content.ReadAsStringAsync();
    dynamic data = JsonConvert.DeserializeObject(responseBody);

    Console.WriteLine("Resultados:");
    Console.WriteLine(JsonConvert.SerializeObject(data, Formatting.Indented));
    }
    catch (HttpRequestException e)
    {
    Console.WriteLine($"Error: {e.Message}");
    }
    }
    }

    // Uso
    await ApiCliente.ConsultarPorNuc("2024-0087812");
    await ApiCliente.ConsultarPorSolicitud("2024-R0434917");

10. Manejo de Errores

Error 400 - Bad Request

Parámetros Inválidos

Causa: Falta el parámetro requerido o está vacío.

Solución: Verifique que está enviando el parámetro correcto (Nuc o NroSolicitud) y que no está vacío.

{
  "message": "Debe verificar el 'Nuc' suministrado."
}

Error 404 - Not Found

Sin Resultados

Causa: No se encontró información con el número de solicitud proporcionado.

Solución: Verifique que el número de solicitud sea correcto y exista en el sistema.

{
  "message": "No se encontraron resultados con el número suministrado: SOL-2024-001",
  "data": {}
}

Error 429 - Too Many Requests

Límite de Peticiones Excedido

Causa: Ha excedido el límite de 100 peticiones por minuto.

Solución: Espere 1 minuto antes de realizar nuevas peticiones. Considere implementar un mecanismo de reintentos con espera.

{
  "error": "Peticiones excedidas",
  "message": "Ha excedido la cantidad de peticiones. Intente de nuevo en 1 minuto."
}

Error 500 - Internal Server Error

Error del Servidor

Causa: Error interno del servidor.

Solución: Intente nuevamente más tarde. Si el problema persiste, contacte con soporte técnico.

Preguntas Frecuentes

Una API (Interfaz de Programación de Aplicaciones) es un puente de comunicación que permite que tu aplicación solicite y reciba datos específicos de nuestros sistemas de justicia de forma segura y estandarizada.

Puedes encontrar la documentación completa en la página de cada una de las APIs listadas en la sección de APIs Judiciales. Incluye ejemplos de código y guías detalladas para ayudarte a integrarlas de forma rápida, ya que nuestras APIs son gratuitas y abiertas.

Como nuestras APIs son abiertas, puedes empezar a usarlas de inmediato. Solo tienes que ir a la sección de APIs Judiciales, seleccionar la que necesites y seguir la documentación para empezar a hacer tus primeras consultas. No necesitas registrarte ni obtener una clave API.

Empowering you not to hesitate to consult about taxes with us.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.