get_business_use_cases
Los casos de uso de un negocio publicado y los huecos que cierra, por categoría
GET https://emporium.ultravioletadao.xyz/api/businesses/{slug}/use-cases
Por dónde se llega
| API REST | Solo lectura | GET https://emporium.ultravioletadao.xyz/api/businesses/{slug}/use-cases |
|---|---|---|
| MCP | Muy pronto | |
| CLI | Muy pronto | |
| SDK de Python | Muy pronto | |
| SDK de TypeScript | Muy pronto | |
| SDK de Rust | Muy 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
| Nombre | Dónde | Requerido | Esquema | Qué es |
|---|---|---|---|---|
slug | camino | sí | string |
El cuerpo de la petición
No lleva cuerpo.
Respuestas
200
Correcto
application/json
{
"$ref": "#/components/schemas/CasosPublicados"
}
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.
Accion
{
"oneOf": [
{
"properties": {
"nombre": {
"type": "string"
},
"tipo": {
"const": "tool",
"type": "string"
}
},
"required": [
"nombre",
"tipo"
],
"type": "object"
},
{
"properties": {
"medio": {
"type": "string"
},
"tipo": {
"const": "enlace",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"medio",
"tipo",
"url"
],
"type": "object"
}
]
}
Caso
{
"properties": {
"accion": {
"$ref": "#/components/schemas/Accion"
},
"alias_aceptados": {
"items": {
"type": "string"
},
"type": "array"
},
"alias_propuestos": {
"items": {
"type": "string"
},
"type": "array"
},
"estado": {
"$ref": "#/components/schemas/EstadoDelCaso"
},
"frase": {
"type": "string"
},
"id": {
"type": "string"
},
"oferta_id": {
"type": "string"
},
"precio": {
"$ref": "#/components/schemas/PrecioDelCaso"
},
"procedencia": {
"$ref": "#/components/schemas/ProcedenciaDelCaso"
},
"via_de_pago": {
"$ref": "#/components/schemas/ViaDePago"
}
},
"required": [
"accion",
"alias_aceptados",
"alias_propuestos",
"estado",
"frase",
"id",
"oferta_id",
"precio",
"procedencia",
"via_de_pago"
],
"type": "object"
}
CasosPublicados
{
"properties": {
"aviso": {
"type": "string"
},
"casos": {
"items": {
"$ref": "#/components/schemas/Caso"
},
"type": "array"
},
"huecos_cerrados": {
"items": {
"$ref": "#/components/schemas/HuecoCerrado"
},
"type": "array"
},
"rio": {
"$ref": "#/components/schemas/EstadoDelRio"
},
"slug": {
"type": "string"
}
},
"required": [
"aviso",
"casos",
"huecos_cerrados",
"rio",
"slug"
],
"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"
}
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"
}
Detalle
{
"additionalProperties": false,
"properties": {
"campo": {
"type": "string"
},
"problema": {
"type": "string"
}
},
"required": [
"campo",
"problema"
],
"type": "object"
}
EstadoDelCaso
{
"enum": [
"propuesto",
"aceptado"
],
"type": "string"
}
EstadoDelRio
{
"anyOf": [
{
"$ref": "#/components/schemas/VentanaAplicada"
},
{
"const": "no_disponible",
"type": "string"
}
]
}
HuecoCerrado
{
"properties": {
"busquedas_sin_candidatos": {
"format": "uint64",
"minimum": 0,
"type": "integer"
},
"categoria": {
"type": "string"
},
"ciudad": {
"type": [
"string",
"null"
]
},
"etiqueta": {
"type": "string"
},
"frase": {
"type": "string"
}
},
"required": [
"busquedas_sin_candidatos",
"categoria",
"ciudad",
"etiqueta",
"frase"
],
"type": "object"
}
PrecioDelCaso
{
"oneOf": [
{
"properties": {
"comprometible": {
"type": "boolean"
},
"modo": {
"const": "publicado",
"type": "string"
},
"moneda": {
"type": "string"
},
"monto": {
"type": "string"
}
},
"required": [
"comprometible",
"modo",
"moneda",
"monto"
],
"type": "object"
},
{
"properties": {
"modo": {
"const": "a_cotizar",
"type": "string"
}
},
"required": [
"modo"
],
"type": "object"
}
]
}
ProcedenciaDelCaso
{
"properties": {
"accion": {
"type": "string"
},
"alias": {
"type": "string"
},
"frase": {
"type": "string"
},
"precio": {
"type": "string"
}
},
"required": [
"accion",
"alias",
"frase",
"precio"
],
"type": "object"
}
SobreDeError
{
"additionalProperties": false,
"properties": {
"error": {
"$ref": "#/components/schemas/CuerpoDelError"
}
},
"required": [
"error"
],
"type": "object"
}
VentanaAplicada
{
"properties": {
"desde": {
"type": "string"
},
"hasta": {
"type": "string"
},
"horas": {
"format": "int64",
"type": "integer"
}
},
"required": [
"desde",
"hasta",
"horas"
],
"type": "object"
}
ViaDePago
{
"enum": [
"x402",
"enlace_tarjeta",
"fuera_de_banda",
"ninguna"
],
"type": "string"
}