get_offer
The offer by purpose, generated from the catalog: each capability with its business patterns, its state and its tools
GET https://emporium.ultravioletadao.xyz/api/offer
Where to reach it
| REST API | Read-only | GET https://emporium.ultravioletadao.xyz/api/offer |
|---|---|---|
| MCP | Coming soon | |
| CLI | Coming soon | |
| Python SDK | Coming soon | |
| TypeScript SDK | Coming soon | |
| Rust SDK | Coming soon |
Live: you can use it today, to read and to write. Read-only: today you can read, not write. Coming soon: not there yet.
Parameters
| Name | In | Required | Schema | What it is |
|---|---|---|---|---|
hallados | query | no | string |
Request body
It takes no body.
Responses
200
OK
application/json
{
"$ref": "#/components/schemas/OfertaServida"
}
Any other status
An error: with JSON, the single envelope, whose error.codigo is one of a closed list
application/json
{
"$ref": "#/components/schemas/SobreDeError"
}
Schemas
The ones this operation names, as they are in the contract's components.schemas.
CapacidadServida
{
"properties": {
"estado": {
"$ref": "#/components/schemas/EstadoDeCapacidad"
},
"id": {
"type": "string"
},
"medido_el": {
"type": "string"
},
"nombre": {
"$ref": "#/components/schemas/TextoServido"
},
"patrones": {
"items": {
"$ref": "#/components/schemas/TextoServido"
},
"type": "array"
},
"proposito": {
"$ref": "#/components/schemas/Proposito"
},
"prueba_viva": {
"anyOf": [
{
"$ref": "#/components/schemas/PruebaServida"
},
{
"type": "null"
}
]
},
"puertas": {
"anyOf": [
{
"$ref": "#/components/schemas/PuertasServidas"
},
{
"type": "null"
}
]
},
"que_hace": {
"$ref": "#/components/schemas/TextoServido"
},
"tools": {
"items": {
"$ref": "#/components/schemas/ToolServida"
},
"type": "array"
}
},
"required": [
"estado",
"id",
"medido_el",
"nombre",
"patrones",
"proposito",
"prueba_viva",
"puertas",
"que_hace",
"tools"
],
"type": "object"
}
Cobertura
{
"enum": [
"disponible",
"pronto",
"sin_oferta"
],
"type": "string"
}
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"
}
EstadoDeCapacidad
{
"oneOf": [
{
"const": "pronto",
"type": "string"
},
{
"const": "externa",
"type": "string"
},
{
"const": "solo_lectura",
"type": "string"
},
{
"const": "vivo",
"type": "string"
}
]
}
Matcheo
{
"properties": {
"carencias": {
"items": {
"type": "string"
},
"type": "array"
},
"demanda": {
"items": {
"$ref": "#/components/schemas/NecesidadDemandada"
},
"type": "array"
},
"disponibles": {
"items": {
"$ref": "#/components/schemas/Recomendacion"
},
"type": "array"
},
"esquema": {
"type": "string"
},
"pronto": {
"items": {
"$ref": "#/components/schemas/Recomendacion"
},
"type": "array"
},
"sin_oferta": {
"items": {
"$ref": "#/components/schemas/Recomendacion"
},
"type": "array"
}
},
"required": [
"carencias",
"demanda",
"disponibles",
"esquema",
"pronto",
"sin_oferta"
],
"type": "object"
}
NecesidadDemandada
{
"properties": {
"capacidad": {
"type": [
"string",
"null"
]
},
"clave": {
"type": "string"
},
"proposito": {
"$ref": "#/components/schemas/Proposito"
}
},
"required": [
"capacidad",
"clave",
"proposito"
],
"type": "object"
}
OfertaServida
{
"properties": {
"capacidades": {
"items": {
"$ref": "#/components/schemas/CapacidadServida"
},
"type": "array"
},
"esquema": {
"type": "string"
},
"matcheo": {
"anyOf": [
{
"$ref": "#/components/schemas/Matcheo"
},
{
"type": "null"
}
]
},
"propositos": {
"items": {
"$ref": "#/components/schemas/PropositoServido"
},
"type": "array"
}
},
"required": [
"capacidades",
"esquema",
"propositos"
],
"type": "object"
}
Proposito
{
"enum": [
"comunicaciones",
"trabajos_sin_confianza",
"reputacion_e_identidad",
"enjambre",
"endpoints_x402",
"pagos",
"persistencia",
"billetera"
],
"type": "string"
}
PropositoServido
{
"properties": {
"capacidades": {
"items": {
"type": "string"
},
"type": "array"
},
"id": {
"$ref": "#/components/schemas/Proposito"
},
"nombre": {
"$ref": "#/components/schemas/TextoServido"
}
},
"required": [
"capacidades",
"id",
"nombre"
],
"type": "object"
}
PruebaServida
{
"properties": {
"en": {
"type": "string"
},
"es": {
"type": "string"
},
"fecha": {
"type": "string"
}
},
"required": [
"en",
"es",
"fecha"
],
"type": "object"
}
PuertaDeTool
{
"oneOf": [
{
"const": "mcp",
"type": "string"
},
{
"const": "mostrador",
"type": "string"
},
{
"const": "directa",
"type": "string"
},
{
"const": "paybox",
"type": "string"
}
]
}
PuertasServidas
{
"properties": {
"api": {
"type": "string"
},
"bloque": {
"type": "string"
},
"cli": {
"type": "string"
},
"mcp": {
"type": "string"
},
"sdk": {
"type": "string"
},
"sdk_lenguajes": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"api",
"bloque",
"cli",
"mcp",
"sdk",
"sdk_lenguajes"
],
"type": "object"
}
Recomendacion
{
"properties": {
"capacidad": {
"type": "string"
},
"cobertura": {
"$ref": "#/components/schemas/Cobertura"
},
"estado": {
"anyOf": [
{
"$ref": "#/components/schemas/EstadoDeCapacidad"
},
{
"type": "null"
}
]
},
"necesidad": {
"type": "string"
},
"proposito": {
"$ref": "#/components/schemas/Proposito"
},
"razones": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"capacidad",
"cobertura",
"estado",
"necesidad",
"proposito",
"razones"
],
"type": "object"
}
SobreDeError
{
"additionalProperties": false,
"properties": {
"error": {
"$ref": "#/components/schemas/CuerpoDelError"
}
},
"required": [
"error"
],
"type": "object"
}
TextoServido
{
"properties": {
"en": {
"type": "string"
},
"es": {
"type": "string"
}
},
"required": [
"en",
"es"
],
"type": "object"
}
ToolServida
{
"properties": {
"clase": {
"type": [
"string",
"null"
]
},
"credencial": {
"type": [
"string",
"null"
]
},
"nombre": {
"type": "string"
},
"puerta": {
"$ref": "#/components/schemas/PuertaDeTool"
},
"url": {
"type": [
"string",
"null"
]
}
},
"required": [
"clase",
"credencial",
"nombre",
"puerta",
"url"
],
"type": "object"
}