curl --request GET \
--url https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders \
--header 'x-api-key: <api-key>'import requests
url = "https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_bodyListar órdenes de compra
Lista paginada de las órdenes de compra de Mercado Público (ChileCompra) que Pruff tiene cargadas. Puedes filtrar por proveedor, organismo comprador, rango de fechas, tipo y estado.
El rango de fechas (from y to) es obligatorio y se aplica sobre la fecha de creación de la orden, que también define el orden del resultado. Las fechas se interpretan como días en hora de Chile.
Si no hay órdenes para los filtros, responde 200 con data vacío.
Límites
- Rango de fechas: máximo 31 días si no indicas
supplierIdnibuyerId; máximo 366 días si indicas alguno. - Profundidad de paginación:
pageporpageSizeno puede superar 10.000. Para recorrer más resultados, divide el rango de fechas. - Cuota: 300 solicitudes por hora por empresa, compartida con los demás endpoints de Mercado Público y con otras consultas de Datahub de tu empresa.
Para ver montos, unidades e ítems, usa GET /datahub/publicMarket/purchaseOrders/{code}.
curl --request GET \
--url https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders \
--header 'x-api-key: <api-key>'import requests
url = "https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pruff.com/api/clients/datahub/publicMarket/purchaseOrders")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_bodyParámetros de consulta
Códigos de estado, separados por coma: 4 Enviada a Proveedor, 5 En proceso, 6 Aceptada, 9 Cancelada, 12 Recepción Conforme, 13 Pendiente de Recepcionar, 14 Recepcionada Parcialmente, 15 Recepcion Conforme Incompleta. Si no lo envías, no se filtra por estado.
4, 5, 6, 9, 12, 13, 14, 15