Base URL https://api.afer.pro Referencia aferapp.com Reservar demo

Estados de documento

GET https://api.afer.pro/api/v1/document-statuses
Alias en castellano (v0, sigue operativo): POST https://api.afer.pro/consultarEstados

Los estados del pipeline de documentos, con su color, para filtrar y para pintar.

Los estados configurables que ves en el selector de cada listado interno: borrador, enviado, aceptado, rechazado, en curso… Cada uno pertenece a un tipo, y los tipos van en plural (presupuestos, pedidos, proyectos…). Si no sabes cuáles tiene tu cuenta, llama sin filtro y agrúpalos por tipo.

Los estadoId que devuelve son los que aceptan como filtro consultarPresupuestos y consultarProyectos, y los mismos que aparecen dentro de cada documento.

Autenticación

Envía tus claves API en las cabeceras X-API-KEY y X-API-SECRET. La cuenta sobre la que se opera se resuelve automáticamente a partir de la clave. Cómo obtener tus claves →

Este endpoint requiere autenticación con API key: sin credenciales responde 401.

Parámetros del cuerpo

El cuerpo de la petición es un objeto JSON con Content-Type: application/json.

tipostring
opcional
Solo los estados de este tipo. Los valores van en plural: presupuestos, pedidos, proyectos, tasks, works, contratos, inbox_docs… Llama sin filtro para ver los que tiene tu cuenta.

Ejemplo de petición

curl -X GET 'https://api.afer.pro/api/v1/document-statuses?tipo=presupuestos' \
  -H 'X-API-KEY: afer_tk_TU_TOKEN' \
  -H 'X-API-SECRET: afer_sk_TU_SECRET'
<?php

$ch = curl_init('https://api.afer.pro/api/v1/document-statuses?tipo=presupuestos');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'X-API-KEY: afer_tk_TU_TOKEN',
    'X-API-SECRET: afer_sk_TU_SECRET',
]);

$respuesta = json_decode(curl_exec($ch), true);
curl_close($ch);
const respuesta = await fetch('https://api.afer.pro/api/v1/document-statuses?tipo=presupuestos', {
  method: 'GET',
  headers: {
    'X-API-KEY': 'afer_tk_TU_TOKEN',
    'X-API-SECRET': 'afer_sk_TU_SECRET'
  }
});

const resultado = await respuesta.json();

Respuesta

200 · application/json
{
    "errorCode": 200,
    "errorMsg": "",
    "data": {
        "total_estados": 2,
        "estados": [
            {
                "estadoId": "eSt1…",
                "tipo": "presupuestos",
                "titulo": "Aceptado",
                "color": "#2ecc71"
            },
            {
                "estadoId": "eSt2…",
                "tipo": "presupuestos",
                "titulo": "Pendiente",
                "color": "#f1c40f"
            }
        ]
    }
}