Listar clientes
using System.Net.Http.Headers;var client = new HttpClient();var request = new HttpRequestMessage{ Method = HttpMethod.Get, RequestUri = new Uri("https://api.simplo.cl/api/v1/billing/clientes?limit=20"), Headers = { { "Authorization", "Bearer <token>" }, },};using (var response = await client.SendAsync(request)){ response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);}HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://api.simplo.cl/api/v1/billing/clientes?limit=20")) .header("Authorization", "Bearer <token>") .method("GET", HttpRequest.BodyPublishers.noBody()) .build();HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());System.out.println(response.body());const url = 'https://api.simplo.cl/api/v1/billing/clientes?limit=20';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.simplo.cl/api/v1/billing/clientes?limit=20' \ --header 'Authorization: Bearer <token>'Listado de clientes con paginación basada en cursor.
Solo sesión (JWT): esta operación no es accesible por API key — una key
billing:dterecibe403 BILLING_API_KEY_ROUTE_NOT_ALLOWED. Se gestiona desde la cuenta en app.simplo.cl.
Autenticación
Sección titulada «Autenticación»Parámetros
Sección titulada «Parámetros»Parámetros de consulta
Sección titulada «Parámetros de consulta»Cursor de paginación retornado en next_cursor de la página anterior
Cantidad máxima de resultados por página
Respuestas
Sección titulada «Respuestas»Lista de clientes
object
object
Cursor para la siguiente página
Example
{ "data": [ { "rut": "76543210-3", "razon_social": "Empresa Ejemplo SpA" } ]}Token o API key inválido o ausente
object
Código de error máquina-legible
Mensaje descriptivo del error. Este es el campo canónico para clientes nuevos.
Alias de compatibilidad de message mantenido hacia atrás.
object
Campo con error (dot notation para nested)
Código de validación
Mensaje descriptivo
Acción recomendada para el cliente
Severidad opcional del error
Contexto estructurado opcional para debugging
object
Example
{ "code": "VALIDATION_ERROR", "message": "Error de validacion en los campos enviados", "details": [ { "field": "receptor.rut", "code": "INVALID_RUT", "message": "RUT invalido: digito verificador no coincide" } ], "severity": "critical"}