search_directory

Busca un servicio en la guia; lo que buscas se guarda en privado para mejorar el motor (que se guarda y por cuanto tiempo: /privacy)

GET https://emporium.ultravioletadao.xyz/api/directory

Bloque: Planificación de intenciones

Por dónde se llega

API RESTSolo lecturaGET https://emporium.ultravioletadao.xyz/api/directory
MCPSolo lecturaemporium_search_service POST https://emporium.ultravioletadao.xyz/mcp
emporium_search_service POST https://emporium.ultravioletadao.xyz/counter/mcp
CLISolo lecturauvd search
SDK de PythonMuy pronto
SDK de TypeScriptMuy pronto
SDK de RustMuy pronto

Vivo: se usa hoy, para leer y para escribir. Solo lectura: hoy se lee y no se escribe. Muy pronto: todavía no está.

Parámetros

NombreDóndeRequeridoEsquemaQué es
categoriaconsultanostring
ciudadconsultanostring
idiomaconsultano{"$ref":"#/components/schemas/IdiomaDeLaConsulta"}
limiteconsultano{"format":"uint8","maximum":20,"minimum":1,"type":"integer"}
qconsultasí{"maxLength":200,"minLength":2,"type":"string"}
redconsultanostring
verboseconsultanoboolean

El cuerpo de la petición

No lleva cuerpo.

Respuestas

200

Correcto

application/json

{
  "$ref": "#/components/schemas/RespuestaDeLaBusqueda"
}

Cualquier otro status

Un error: en JSON, el sobre único, cuyo error.codigo es uno de una lista cerrada

application/json

{
  "$ref": "#/components/schemas/SobreDeError"
}

Esquemas

Los que nombra esta operación, tal cual están en components.schemas del contrato.

BloqueDeAutopistas
{
  "properties": {
    "como_se_llaman": {
      "type": "string"
    },
    "mostrador_url": {
      "type": "string"
    },
    "necesidades": {
      "items": {
        "$ref": "#/components/schemas/NecesidadEnLaRespuesta"
      },
      "type": "array"
    }
  },
  "required": [
    "como_se_llaman",
    "mostrador_url",
    "necesidades"
  ],
  "type": "object"
}
BloqueDeLaRaiz
{
  "properties": {
    "como_se_lee": {
      "type": "string"
    },
    "frase": {
      "type": "string"
    },
    "piernas": {
      "items": {
        "$ref": "#/components/schemas/PiernaEnLaRespuesta"
      },
      "type": "array"
    },
    "preguntas": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "raiz": {
      "type": "string"
    }
  },
  "required": [
    "como_se_lee",
    "frase",
    "piernas",
    "preguntas",
    "raiz"
  ],
  "type": "object"
}
Candidato
{
  "anyOf": [
    {
      "$ref": "#/components/schemas/CandidatoTenant"
    },
    {
      "$ref": "#/components/schemas/CandidatoPrestador"
    },
    {
      "$ref": "#/components/schemas/CandidatoTercero"
    }
  ]
}
CandidatoPrestador
{
  "properties": {
    "aviso_datos_del_prestador": {
      "type": "string"
    },
    "declarado_por_el_prestador": {
      "$ref": "#/components/schemas/DeclaradoPorElPrestador"
    },
    "dimensiones": {
      "items": {
        "$ref": "#/components/schemas/Dimension"
      },
      "type": "array"
    },
    "faltan": {
      "items": {
        "$ref": "#/components/schemas/Faltante"
      },
      "type": "array"
    },
    "prestador_id": {
      "type": "string"
    },
    "procedencia": {
      "$ref": "#/components/schemas/ProcedenciaDelCandidato"
    },
    "prueba": {
      "$ref": "#/components/schemas/PruebaEnLaRespuesta"
    },
    "puntaje": {
      "format": "double",
      "type": "number"
    },
    "servicio_id": {
      "type": "string"
    }
  },
  "required": [
    "aviso_datos_del_prestador",
    "declarado_por_el_prestador",
    "dimensiones",
    "faltan",
    "prestador_id",
    "procedencia",
    "prueba",
    "puntaje",
    "servicio_id"
  ],
  "type": "object"
}
CandidatoTenant
{
  "properties": {
    "aviso_datos_del_negocio": {
      "type": "string"
    },
    "declarado_por_el_negocio": {
      "$ref": "#/components/schemas/DeclaradoPorElNegocio"
    },
    "dimensiones": {
      "items": {
        "$ref": "#/components/schemas/Dimension"
      },
      "type": "array"
    },
    "faltan": {
      "items": {
        "$ref": "#/components/schemas/Faltante"
      },
      "type": "array"
    },
    "procedencia": {
      "$ref": "#/components/schemas/ProcedenciaDelCandidato"
    },
    "puntaje": {
      "format": "double",
      "type": "number"
    },
    "slug": {
      "type": "string"
    },
    "url_ficha": {
      "type": "string"
    },
    "url_mcp": {
      "type": "string"
    }
  },
  "required": [
    "aviso_datos_del_negocio",
    "declarado_por_el_negocio",
    "dimensiones",
    "faltan",
    "procedencia",
    "puntaje",
    "slug",
    "url_ficha",
    "url_mcp"
  ],
  "type": "object"
}
CandidatoTercero
{
  "properties": {
    "admision": {
      "type": "string"
    },
    "declarado_por_el_vendedor": {
      "$ref": "#/components/schemas/DeclaradoPorElVendedor"
    },
    "dimensiones": {
      "items": {
        "$ref": "#/components/schemas/Dimension"
      },
      "type": "array"
    },
    "evidencia": {
      "$ref": "#/components/schemas/Evidencia"
    },
    "faltan": {
      "items": {
        "$ref": "#/components/schemas/Faltante"
      },
      "type": "array"
    },
    "host": {
      "type": "string"
    },
    "procedencia": {
      "$ref": "#/components/schemas/ProcedenciaDelCandidato"
    },
    "puntaje": {
      "format": "double",
      "type": "number"
    },
    "rotulo": {
      "type": "string"
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "admision",
    "declarado_por_el_vendedor",
    "dimensiones",
    "evidencia",
    "faltan",
    "host",
    "procedencia",
    "puntaje",
    "rotulo",
    "url"
  ],
  "type": "object"
}
CodigoDeError
{
  "enum": [
    "dominio_invalido",
    "slug_ocupado",
    "tenant_no_encontrado",
    "tenant_no_publicado",
    "tenant_suspendido",
    "clave_invalida",
    "estado_no_permite",
    "ventana_no_cumplida",
    "metodo_invalido",
    "manifiesto_invalido",
    "categoria_prohibida",
    "terminos_no_aceptados",
    "canal_no_confirmado",
    "version_de_terminos_desconocida",
    "pedido_invalido",
    "faltan_datos",
    "respuesta_invalida",
    "firma_invalida",
    "enlace_vencido",
    "enlace_ya_usado",
    "demasiadas_peticiones",
    "parametro_invalido",
    "metodo_no_permitido",
    "firma_no_configurada",
    "correo_no_configurado",
    "terminos_no_configurados",
    "casa_no_configurada",
    "almacen_no_disponible",
    "error_interno",
    "paybox_no_configurado",
    "boveda_no_disponible",
    "sesion_requerida",
    "estado_oauth_invalido",
    "consentimiento_rechazado",
    "concesion_insegura",
    "paybox_no_responde",
    "paybox_rechazo",
    "sin_vinculo",
    "vinculo_revocado",
    "vinculo_vencido",
    "reconexion_requerida",
    "vinculo_ajeno",
    "renovacion_en_curso"
  ],
  "type": "string"
}
ConsultaRespondida
{
  "properties": {
    "categoria": {
      "type": [
        "string",
        "null"
      ]
    },
    "ciudad": {
      "type": [
        "string",
        "null"
      ]
    },
    "limite": {
      "format": "uint8",
      "maximum": 255,
      "minimum": 0,
      "type": "integer"
    },
    "q": {
      "type": "string"
    },
    "red": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "categoria",
    "ciudad",
    "limite",
    "q",
    "red"
  ],
  "type": "object"
}
CuerpoDelError
{
  "additionalProperties": false,
  "properties": {
    "codigo": {
      "$ref": "#/components/schemas/CodigoDeError"
    },
    "detalles": {
      "items": {
        "$ref": "#/components/schemas/Detalle"
      },
      "type": "array"
    },
    "mensaje": {
      "type": "string"
    },
    "peticion_id": {
      "type": "string"
    }
  },
  "required": [
    "codigo",
    "detalles",
    "mensaje",
    "peticion_id"
  ],
  "type": "object"
}
DeclaradoPorElNegocio
{
  "properties": {
    "nombre": {
      "type": [
        "string",
        "null"
      ]
    },
    "oferta": true
  },
  "required": [
    "nombre",
    "oferta"
  ],
  "type": "object"
}
DeclaradoPorElPrestador
{
  "properties": {
    "oferta": true
  },
  "required": [
    "oferta"
  ],
  "type": "object"
}
DeclaradoPorElVendedor
{
  "properties": {
    "categoria": {
      "type": [
        "string",
        "null"
      ]
    },
    "descripcion": {
      "type": [
        "string",
        "null"
      ]
    },
    "etiquetas": {
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "categoria",
    "descripcion",
    "etiquetas"
  ],
  "type": "object"
}
Detalle
{
  "additionalProperties": false,
  "properties": {
    "campo": {
      "type": "string"
    },
    "problema": {
      "type": "string"
    }
  },
  "required": [
    "campo",
    "problema"
  ],
  "type": "object"
}
Dimension
{
  "properties": {
    "demostrado": {
      "type": "boolean"
    },
    "nombre": {
      "type": "string"
    },
    "peso": {
      "format": "double",
      "type": "number"
    },
    "por_que": {
      "type": "string"
    },
    "puntaje": {
      "format": "double",
      "type": "number"
    }
  },
  "required": [
    "demostrado",
    "nombre",
    "peso",
    "por_que",
    "puntaje"
  ],
  "type": "object"
}
EstadoVivo
{
  "enum": [
    "alive",
    "auth_gated"
  ],
  "type": "string"
}
Evidencia
{
  "properties": {
    "liquido": {
      "$ref": "#/components/schemas/Liquido"
    },
    "precio": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/PrecioLeido"
        },
        {
          "type": "null"
        }
      ]
    },
    "reputacion": {
      "$ref": "#/components/schemas/ReputacionDelTercero"
    },
    "sin_precio_por": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/MotivoSinPrecio"
        },
        {
          "type": "null"
        }
      ]
    },
    "sin_vivo_por": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/MotivoSinVivo"
        },
        {
          "type": "null"
        }
      ]
    },
    "vivo": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/Vivo"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "liquido",
    "precio",
    "reputacion",
    "vivo"
  ],
  "type": "object"
}
Faltante
{
  "properties": {
    "como_se_consigue": {
      "type": "string"
    },
    "por_que_importa": {
      "type": "string"
    },
    "que": {
      "type": "string"
    }
  },
  "required": [
    "como_se_consigue",
    "por_que_importa",
    "que"
  ],
  "type": "object"
}
HuecoPlan
{
  "properties": {
    "por_que_no_hay": {
      "$ref": "#/components/schemas/PorQueNoHay"
    },
    "prospecto": {
      "type": "string"
    },
    "que_se_pidio": {
      "type": "string"
    }
  },
  "required": [
    "por_que_no_hay",
    "prospecto",
    "que_se_pidio"
  ],
  "type": "object"
}
IdiomaDeLaConsulta
{
  "enum": [
    "es",
    "en"
  ],
  "type": "string"
}
Liquido
{
  "oneOf": [
    {
      "properties": {
        "estado": {
          "const": "sin_evidencia_de_liquidacion",
          "type": "string"
        }
      },
      "required": [
        "estado"
      ],
      "type": "object"
    },
    {
      "properties": {
        "estado": {
          "const": "evidencia_de_liquidacion_sin_leer",
          "type": "string"
        }
      },
      "required": [
        "estado"
      ],
      "type": "object"
    }
  ]
}
MedioLeido
{
  "properties": {
    "activo": {
      "type": "string"
    },
    "decimales": {
      "format": "uint32",
      "minimum": 0,
      "type": "integer"
    },
    "monto_atomico": {
      "type": "string"
    },
    "red": {
      "type": "string"
    }
  },
  "required": [
    "activo",
    "decimales",
    "monto_atomico",
    "red"
  ],
  "type": "object"
}
MotivoSinPrecio
{
  "oneOf": [
    {
      "enum": [
        "conflict",
        "unknown",
        "stale"
      ],
      "type": "string"
    },
    {
      "const": "sin_frescura",
      "type": "string"
    },
    {
      "const": "otra",
      "type": "string"
    },
    {
      "const": "sin_fecha",
      "type": "string"
    },
    {
      "const": "sin_medios",
      "type": "string"
    },
    {
      "const": "esquema_upto",
      "type": "string"
    }
  ]
}
MotivoSinVivo
{
  "oneOf": [
    {
      "const": "sin_salud",
      "type": "string"
    },
    {
      "const": "otra_salud",
      "type": "string"
    },
    {
      "const": "sin_fecha",
      "type": "string"
    },
    {
      "const": "sondeo_en_el_futuro",
      "type": "string"
    }
  ]
}
MotorDeLaRespuesta
{
  "properties": {
    "paarce": {
      "type": "string"
    },
    "politica": {
      "type": "string"
    }
  },
  "required": [
    "paarce",
    "politica"
  ],
  "type": "object"
}
NecesidadEnLaRespuesta
{
  "properties": {
    "necesidad": {
      "type": "string"
    },
    "que_resuelve": {
      "type": "string"
    },
    "tools": {
      "items": {
        "$ref": "#/components/schemas/PiezaEnLaRespuesta"
      },
      "type": "array"
    }
  },
  "required": [
    "necesidad",
    "que_resuelve",
    "tools"
  ],
  "type": "object"
}
NivelDePrueba
{
  "oneOf": [
    {
      "const": "con_venta_externa",
      "type": "string"
    },
    {
      "const": "sin_venta_externa_demostrada",
      "type": "string"
    }
  ]
}
PiernaEnLaRespuesta
{
  "properties": {
    "candidatos": {
      "items": {
        "$ref": "#/components/schemas/Candidato"
      },
      "type": "array"
    },
    "nombre": {
      "type": "string"
    },
    "numero": {
      "format": "uint32",
      "minimum": 0,
      "type": "integer"
    },
    "para_una_persona": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/PiezaEnLaRespuesta"
        },
        {
          "type": "null"
        }
      ]
    },
    "se_busca": {
      "type": "boolean"
    }
  },
  "required": [
    "candidatos",
    "nombre",
    "numero",
    "se_busca"
  ],
  "type": "object"
}
PiezaEnLaRespuesta
{
  "properties": {
    "forma": {
      "type": "string"
    },
    "nombre": {
      "type": "string"
    },
    "superficies": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "tramo": {
      "type": "string"
    }
  },
  "required": [
    "forma",
    "nombre",
    "superficies",
    "tramo"
  ],
  "type": "object"
}
PorQueNoHay
{
  "enum": [
    "INPUT_MISSING",
    "CATALOG_COVERAGE_UNKNOWN",
    "DISCOVERY_MISMATCH",
    "ADAPTER_GAP",
    "AVAILABILITY_GAP",
    "CONSTRAINT_CONFLICT",
    "CAPABILITY_GAP_CONFIRMED_IN_SCOPE",
    "OUTCOME_GAP",
    "sin_clasificar",
    "fuera_de_alcance",
    "sin_oferta",
    "sin_superficie",
    "sin_credencial"
  ],
  "type": "string"
}
PrecioLeido
{
  "properties": {
    "leido_el": {
      "type": "string"
    },
    "medios": {
      "items": {
        "$ref": "#/components/schemas/MedioLeido"
      },
      "type": "array"
    },
    "rotulo": {
      "type": "string"
    }
  },
  "required": [
    "leido_el",
    "medios",
    "rotulo"
  ],
  "type": "object"
}
ProcedenciaDelCandidato
{
  "enum": [
    "tenant",
    "prestador",
    "tercero"
  ],
  "type": "string"
}
PruebaEnLaRespuesta
{
  "properties": {
    "compradores_distintos": {
      "format": "uint64",
      "minimum": 0,
      "type": [
        "integer",
        "null"
      ]
    },
    "compradores_externos": {
      "format": "uint64",
      "minimum": 0,
      "type": [
        "integer",
        "null"
      ]
    },
    "marca": {
      "type": "string"
    },
    "nivel": {
      "$ref": "#/components/schemas/NivelDePrueba"
    },
    "reputacion": {
      "format": "double",
      "type": [
        "number",
        "null"
      ]
    },
    "trabajos_completados": {
      "format": "uint64",
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "compradores_distintos",
    "compradores_externos",
    "marca",
    "nivel",
    "reputacion",
    "trabajos_completados"
  ],
  "type": "object"
}
ReputacionDelTercero
{
  "oneOf": [
    {
      "properties": {
        "estado": {
          "const": "no_disponible_en_emporium",
          "type": "string"
        }
      },
      "required": [
        "estado"
      ],
      "type": "object"
    }
  ]
}
RespuestaDeLaBusqueda
{
  "properties": {
    "autopistas": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/BloqueDeAutopistas"
        },
        {
          "type": "null"
        }
      ]
    },
    "aviso": {
      "type": "string"
    },
    "candidatos": {
      "items": {
        "$ref": "#/components/schemas/Candidato"
      },
      "type": "array"
    },
    "consulta": {
      "$ref": "#/components/schemas/ConsultaRespondida"
    },
    "hueco": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/HuecoPlan"
        },
        {
          "type": "null"
        }
      ]
    },
    "motor": {
      "$ref": "#/components/schemas/MotorDeLaRespuesta"
    },
    "raiz": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/BloqueDeLaRaiz"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "autopistas",
    "aviso",
    "candidatos",
    "consulta",
    "hueco",
    "motor",
    "raiz"
  ],
  "type": "object"
}
SobreDeError
{
  "additionalProperties": false,
  "properties": {
    "error": {
      "$ref": "#/components/schemas/CuerpoDelError"
    }
  },
  "required": [
    "error"
  ],
  "type": "object"
}
Vivo
{
  "properties": {
    "estado": {
      "$ref": "#/components/schemas/EstadoVivo"
    },
    "latencia_ms": {
      "format": "uint64",
      "minimum": 0,
      "type": [
        "integer",
        "null"
      ]
    },
    "ultimo_sondeo": {
      "type": "string"
    }
  },
  "required": [
    "estado",
    "latencia_ms",
    "ultimo_sondeo"
  ],
  "type": "object"
}