SOAP · ¿Quiénes se parecen a mi cliente?
Prospección
Listas de empresas por tamaño, rubro, régimen y comuna de su casa matriz, sin escribir un nombre, y cuántas son antes de pedirlas. Los ejemplos de abajo son la petición y la respuesta real de cada operación, no una aproximación.
Lo que descuenta cada operación es lo mismo por REST, SOAP, GraphQL y MCP —pagas por el dato, no por el protocolo—; la tabla completa está en Empezar.
POST /soap/v1
ListarProspeccion — Prospección de empresas
Empresas por lo que son —tamaño, rubro, régimen y la comuna de su casa matriz—, sin escribir un nombre, en el orden de su RUT. Descuenta una consulta por empresa que no hayas recibido antes en este ciclo: pedir de nuevo una ya recibida no descuenta, y la página vacía descuenta una. Cada plan entrega un máximo de empresas por ciclo, y antes de pedirlas puedes contarlas gratis.
Hay página que devolver — también la vacía, que descuenta una. Con empresas, descuenta una por cada una que no hayas recibido en este ciclo.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="https://api.datario.cl/soap/v1">
<soapenv:Header/>
<soapenv:Body>
<tns:ListarProspeccion>
<tns:categoria>grande</tns:categoria>
<tns:trabajadores_minimo>10000</tns:trabajadores_minimo>
<tns:rubro>B</tns:rubro>
<tns:comuna>13101</tns:comuna>
</tns:ListarProspeccion>
</soapenv:Body>
</soapenv:Envelope>
curl -s -i https://api.datario.cl/soap/v1 \
-H "Authorization: Bearer dtr_TU_KEY" \
-H "Content-Type: text/xml; charset=utf-8" \
--data-binary @peticion.xml
import requests
sobre = open("peticion.xml", "rb").read()
r = requests.post(
"https://api.datario.cl/soap/v1",
data=sobre,
headers={
"Authorization": "Bearer dtr_TU_KEY",
"Content-Type": "text/xml; charset=utf-8",
},
timeout=10,
)
if "<soap:Fault>" in r.text:
raise SystemExit(r.text) # faultstring dice qué pasó
print(r.text)
<?php
// SoapClient lee el WSDL y genera las operaciones solo.
$contexto = stream_context_create(["http" => [
"header" => "Authorization: Bearer dtr_TU_KEY",
]]);
$cliente = new SoapClient(
"https://api.datario.cl/soap/v1?wsdl",
["stream_context" => $contexto]
);
try {
$ficha = $cliente->ListarProspeccion([
"rut" => "61.704.000-K",
]);
print_r($ficha);
} catch (SoapFault $f) {
echo $f->faultcode . ": " . $f->faultstring;
}
using var http = new HttpClient();
http.DefaultRequestHeaders.Add(
"Authorization", "Bearer dtr_TU_KEY");
var sobre = new StringContent(
File.ReadAllText("peticion.xml"),
Encoding.UTF8, "text/xml");
var r = await http.PostAsync(
"https://api.datario.cl/soap/v1", sobre);
var xml = await r.Content.ReadAsStringAsync();
if (xml.Contains("<soap:Fault>"))
throw new Exception(xml); // faultstring dice qué pasó
Console.WriteLine(xml);
var sobre = Path.of("peticion.xml");
var req = HttpRequest.newBuilder()
.uri(URI.create(
"https://api.datario.cl/soap/v1"))
.header("Authorization", "Bearer dtr_TU_KEY")
.header("Content-Type",
"text/xml; charset=utf-8")
.POST(BodyPublishers.ofFile(sobre))
.build();
var r = HttpClient.newHttpClient()
.send(req, BodyHandlers.ofString());
// 500 = fault: el faultstring dice qué pasó.
System.out.println(r.body());
Set Variable [ $accion ; Value:
"https://api.datario.cl/soap/v1/ListarProspeccion" ]
Insert from URL [ Select ; With dialog: Off ; Target: $r ;
"https://api.datario.cl/soap/v1" ; cURL options:
"-X POST" &
" -H \"Authorization: Bearer dtr_TU_KEY\"" &
" -H \"Content-Type: text/xml\"" &
" -H \"SOAPAction: " & $accion & "\"" &
" -D @peticion.xml" ]
# 500 = fault: el faultstring dice qué pasó.
Show Custom Dialog [ $r ]
La respuesta
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ListarProspeccionResponse xmlns="https://api.datario.cl/soap/v1">
<pagina>
<filtros>
<categoria>
<valor>grande</valor>
</categoria>
<trabajadores_minimo>10000</trabajadores_minimo>
<rubro>
<valor>B</valor>
</rubro>
<regimen/>
<comuna>13101</comuna>
<vigentes>true</vigentes>
<crecio>false</crecio>
</filtros>
<empresas>
<empresa>
<rut>61704000-K</rut>
<rut_formateado>61.704.000-K</rut_formateado>
<razon_social>CORP NACIONAL DEL COBRE DE CHILE</razon_social>
<vigente>true</vigente>
<anio_comercial>2024</anio_comercial>
<tramo_ventas>
<codigo>13</codigo>
<descripcion>4to Rango Gran Empresa</descripcion>
<desde_uf>1000000.01</desde_uf>
<categoria>Gran empresa</categoria>
</tramo_ventas>
<trabajadores>16946</trabajadores>
<rubro>
<codigo>B</codigo>
<descripcion>EXPLOTACION DE MINAS Y CANTERAS</descripcion>
</rubro>
<subrubro>EXTRACCION Y PROCESAMIENTO DE COBRE</subrubro>
<regimen>
<codigo>no14</codigo>
<descripcion>CONTRIBUYENTES NO SUJETOS AL ARTICULO 14</descripcion>
</regimen>
<casa_matriz>
<comuna>
<codigo>13101</codigo>
<nombre>Santiago</nombre>
</comuna>
<provincia>
<codigo>131</codigo>
<nombre>Santiago</nombre>
</provincia>
<region>
<codigo>13</codigo>
<nombre>Región Metropolitana de Santiago</nombre>
</region>
</casa_matriz>
</empresa>
</empresas>
<nuevas>1</nuevas>
<hay_mas>false</hay_mas>
<fuente>Nóminas públicas de contribuyentes y nómina anual de empresas, SII</fuente>
<padron_publicado>2026-08-05T15:36:37+00:00</padron_publicado>
<consultado_en>2026-08-29T04:12:07+00:00</consultado_en>
</pagina>
</ListarProspeccionResponse>
</soap:Body>
</soap:Envelope>
POST /soap/v1
ContarProspeccion — Cuántas empresas calzan
Cuántas empresas calzan con los mismos filtros de la prospección y cómo se reparten por tamaño, región y rubro, sin listarlas. No descuenta, y sirve en cualquier plan: es cómo se mide un mercado antes de pedir la lista.
Nunca descuenta, en cualquier plan.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="https://api.datario.cl/soap/v1">
<soapenv:Header/>
<soapenv:Body>
<tns:ContarProspeccion>
<tns:categoria>grande</tns:categoria>
<tns:trabajadores_minimo>10000</tns:trabajadores_minimo>
<tns:rubro>B</tns:rubro>
<tns:comuna>13101</tns:comuna>
</tns:ContarProspeccion>
</soapenv:Body>
</soapenv:Envelope>
curl -s -i https://api.datario.cl/soap/v1 \
-H "Authorization: Bearer dtr_TU_KEY" \
-H "Content-Type: text/xml; charset=utf-8" \
--data-binary @peticion.xml
import requests
sobre = open("peticion.xml", "rb").read()
r = requests.post(
"https://api.datario.cl/soap/v1",
data=sobre,
headers={
"Authorization": "Bearer dtr_TU_KEY",
"Content-Type": "text/xml; charset=utf-8",
},
timeout=10,
)
if "<soap:Fault>" in r.text:
raise SystemExit(r.text) # faultstring dice qué pasó
print(r.text)
<?php
// SoapClient lee el WSDL y genera las operaciones solo.
$contexto = stream_context_create(["http" => [
"header" => "Authorization: Bearer dtr_TU_KEY",
]]);
$cliente = new SoapClient(
"https://api.datario.cl/soap/v1?wsdl",
["stream_context" => $contexto]
);
try {
$ficha = $cliente->ContarProspeccion([
"rut" => "61.704.000-K",
]);
print_r($ficha);
} catch (SoapFault $f) {
echo $f->faultcode . ": " . $f->faultstring;
}
using var http = new HttpClient();
http.DefaultRequestHeaders.Add(
"Authorization", "Bearer dtr_TU_KEY");
var sobre = new StringContent(
File.ReadAllText("peticion.xml"),
Encoding.UTF8, "text/xml");
var r = await http.PostAsync(
"https://api.datario.cl/soap/v1", sobre);
var xml = await r.Content.ReadAsStringAsync();
if (xml.Contains("<soap:Fault>"))
throw new Exception(xml); // faultstring dice qué pasó
Console.WriteLine(xml);
var sobre = Path.of("peticion.xml");
var req = HttpRequest.newBuilder()
.uri(URI.create(
"https://api.datario.cl/soap/v1"))
.header("Authorization", "Bearer dtr_TU_KEY")
.header("Content-Type",
"text/xml; charset=utf-8")
.POST(BodyPublishers.ofFile(sobre))
.build();
var r = HttpClient.newHttpClient()
.send(req, BodyHandlers.ofString());
// 500 = fault: el faultstring dice qué pasó.
System.out.println(r.body());
Set Variable [ $accion ; Value:
"https://api.datario.cl/soap/v1/ContarProspeccion" ]
Insert from URL [ Select ; With dialog: Off ; Target: $r ;
"https://api.datario.cl/soap/v1" ; cURL options:
"-X POST" &
" -H \"Authorization: Bearer dtr_TU_KEY\"" &
" -H \"Content-Type: text/xml\"" &
" -H \"SOAPAction: " & $accion & "\"" &
" -D @peticion.xml" ]
# 500 = fault: el faultstring dice qué pasó.
Show Custom Dialog [ $r ]
La respuesta
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ContarProspeccionResponse xmlns="https://api.datario.cl/soap/v1">
<conteo>
<filtros>
<categoria>
<valor>grande</valor>
</categoria>
<trabajadores_minimo>10000</trabajadores_minimo>
<rubro>
<valor>B</valor>
</rubro>
<regimen/>
<comuna>13101</comuna>
<vigentes>true</vigentes>
<crecio>false</crecio>
</filtros>
<total>1</total>
<por_categoria>
<grupo>
<categoria>grande</categoria>
<nombre>Gran empresa</nombre>
<empresas>1</empresas>
</grupo>
</por_categoria>
<por_region>
<grupo>
<codigo>13</codigo>
<nombre>Región Metropolitana de Santiago</nombre>
<empresas>1</empresas>
</grupo>
</por_region>
<por_rubro>
<grupo>
<codigo>B</codigo>
<descripcion>EXPLOTACION DE MINAS Y CANTERAS</descripcion>
<empresas>1</empresas>
</grupo>
</por_rubro>
<fuente>Nóminas públicas de contribuyentes y nómina anual de empresas, SII</fuente>
<padron_publicado>2026-08-05T15:36:37+00:00</padron_publicado>
<consultado_en>2026-08-29T04:12:07+00:00</consultado_en>
</conteo>
</ContarProspeccionResponse>
</soap:Body>
</soap:Envelope>
Probar en la consola Este producto por REST Este producto por GraphQL Este producto por MCP Qué es Prospección