Definiciones Protobuf

Archivos Protobuf Disponibles

Estos archivos definen los servicios gRPC y los tipos de mensajes para la API.

Los siguientes archivos protobuf están disponibles para descargar. Estos archivos pueden utilizarse para generar código cliente en varios lenguajes para interactuar con nuestra API gRPC.

Nombre del Archivo Tamaño Última Modificación Acciones
case_timeline_event.proto 2.05 KB 2025-05-30 01:30:20 Ver Descargar
common.proto 1.01 KB 2025-05-30 01:30:20 Ver Descargar
corruption_case.proto 3.01 KB 2025-05-30 01:30:20 Ver Descargar
evidence_document.proto 2 KB 2025-05-30 01:30:20 Ver Descargar
maria_irregularity.proto 2.56 KB 2025-05-30 01:30:20 Ver Descargar
politician.proto 2.55 KB 2025-05-30 01:30:20 Ver Descargar
politician_party_affiliation.proto 2.38 KB 2025-05-30 01:30:20 Ver Descargar
public_institution.proto 2.23 KB 2025-05-30 01:30:20 Ver Descargar
source.proto 1.66 KB 2025-05-30 01:30:20 Ver Descargar

Uso de la API gRPC

Primeros Pasos

Nuestra API gRPC proporciona acceso a datos de corrupción con interfaces eficientes y fuertemente tipadas. Sigue estos pasos para comenzar:

  1. Descarga las definiciones protobuf de la tabla anterior.
  2. Genera código cliente en tu lenguaje preferido utilizando el compilador protobuf.
  3. Conéctate a nuestro servidor gRPC en grpc.corruption.org:50051.
  4. Utiliza el cliente generado para realizar solicitudes a la API.

Ejemplo (Python)


# Instalar paquetes requeridos
# pip install grpcio grpcio-tools

# Generar código Python desde definiciones protobuf
# python -m grpc_tools.protoc -I. --python_out=. --grpc_python_out=. public_institution.proto

import grpc
from public_institution_pb2 import ListPublicInstitutionsRequest, PaginationRequest
from public_institution_pb2_grpc import PublicInstitutionServiceStub

# Crear un canal gRPC
channel = grpc.insecure_channel('grpc.corruption.org:50051')

# Crear un stub (cliente)
stub = PublicInstitutionServiceStub(channel)

# Crear una solicitud
request = ListPublicInstitutionsRequest(
    pagination=PaginationRequest(offset=0, limit=10)
)

# Realizar la llamada
response = stub.ListPublicInstitutions(request)

# Procesar la respuesta
for institution in response.public_institutions:
    print(f"{institution.name}: Rango de Corrupción {institution.corruption_rank}")