deliver_business_diagnosis
Swarm only, signed: delivers the measured draft against a pending request
PUT https://emporium.ultravioletadao.xyz/api/businesses/{slug}/diagnosis
Where to reach it
| REST API | Live | PUT https://emporium.ultravioletadao.xyz/api/businesses/{slug}/diagnosis |
|---|---|---|
| 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 |
|---|---|---|---|---|
slug | path | yes | string | |
X-Emporium-Enjambre-Firma | header | yes | string | Swarm only: v1,<exp>,<signature>, an HMAC-SHA256 over the method, the path, exp and the sha256 of the body |
Request body
Required.
application/json
{
"anyOf": [
{
"$ref": "#/components/schemas/BorradorV2"
},
{
"$ref": "#/components/schemas/BorradorV1"
}
]
}
Responses
200
OK
application/json
{
"$ref": "#/components/schemas/DiagnosticoEntregado"
}
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.
BorradorV1
{
"properties": {
"dominio": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"esquema": true,
"faltantes": {
"items": {
"type": "string"
},
"type": "array"
},
"hallazgos": {
"properties": {
"hosts_comprimidos": true,
"json_ld": {
"properties": {
"entidades": {
"minimum": 0,
"type": "integer"
},
"ilegibles": {
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"llms_txt": {
"type": "boolean"
},
"mcp": {
"anyOf": [
{
"type": "null"
},
{
"properties": {
"nombre": {
"type": "string"
},
"url": {
"pattern": "^https://\\S+$",
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
}
]
},
"microdatos": {
"properties": {
"entidades": {
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"notas": true,
"og_producto": {
"items": {
"type": "string"
},
"type": "array"
},
"reintento_comprimido": true,
"x402_anunciados": {
"items": {
"type": "string"
},
"type": "array"
},
"x402_confirmados": {
"items": {
"properties": {
"redes": {
"items": {
"type": "string"
},
"type": "array"
},
"url": {
"pattern": "^https://\\S+$",
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
},
"inferencia": true,
"linea_roja": {
"type": "array"
},
"manifiesto": {
"type": "object"
},
"procedencia": {
"additionalProperties": {
"properties": {
"fuente": {
"type": "string"
},
"origen": {
"enum": [
"declarado",
"inferido",
"vacio"
],
"type": "string"
}
},
"required": [
"origen"
],
"type": "object"
},
"type": "object"
},
"publicar": true,
"recorrido": {
"properties": {
"enlaces_descartados": true,
"peticiones": true,
"rechazos": true,
"rechazos_omitidos": true,
"robots": {
"type": "string"
},
"tope": true,
"visitas": true
},
"type": "object"
},
"tipo": {
"const": "emporium-borrador-de-manifiesto",
"type": "string"
},
"validacion": true,
"version": {
"const": 1,
"type": "integer"
}
},
"required": [
"dominio",
"hallazgos",
"manifiesto",
"procedencia",
"tipo",
"version"
],
"type": "object"
}
BorradorV2
{
"properties": {
"chequeos": {
"items": {
"$ref": "#/components/schemas/BorradorV2Chequeo"
},
"maxItems": 20,
"type": "array"
},
"dominio": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"esquema": true,
"faltantes": {
"items": {
"type": "string"
},
"type": "array"
},
"hallazgos": {
"properties": {
"hosts_comprimidos": true,
"json_ld": {
"properties": {
"entidades": {
"minimum": 0,
"type": "integer"
},
"ilegibles": {
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"llms_txt": {
"type": "boolean"
},
"mcp": {
"anyOf": [
{
"type": "null"
},
{
"properties": {
"nombre": {
"type": "string"
},
"url": {
"pattern": "^https://\\S+$",
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
}
]
},
"microdatos": {
"properties": {
"entidades": {
"minimum": 0,
"type": "integer"
}
},
"type": "object"
},
"notas": true,
"og_producto": {
"items": {
"type": "string"
},
"type": "array"
},
"reintento_comprimido": true,
"x402_anunciados": {
"items": {
"type": "string"
},
"type": "array"
},
"x402_confirmados": {
"items": {
"properties": {
"redes": {
"items": {
"type": "string"
},
"type": "array"
},
"url": {
"pattern": "^https://\\S+$",
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
},
"inferencia": true,
"linea_roja": {
"type": "array"
},
"manifiesto": {
"type": "object"
},
"plataforma": {
"additionalProperties": false,
"properties": {
"nombre": {
"enum": [
"shopify",
"wordpress",
"otra",
"desconocida"
],
"type": "string"
}
},
"required": [
"nombre"
],
"type": "object"
},
"procedencia": {
"additionalProperties": {
"properties": {
"fuente": {
"type": "string"
},
"origen": {
"enum": [
"declarado",
"inferido",
"vacio"
],
"type": "string"
}
},
"required": [
"origen"
],
"type": "object"
},
"type": "object"
},
"publicar": true,
"recorrido": {
"properties": {
"enlaces_descartados": true,
"peticiones": true,
"rechazos": true,
"rechazos_omitidos": true,
"robots": {
"type": "string"
},
"tope": true,
"visitas": true
},
"type": "object"
},
"tipo": {
"const": "emporium-borrador-de-manifiesto",
"type": "string"
},
"validacion": true,
"version": {
"const": 2,
"type": "integer"
}
},
"required": [
"chequeos",
"dominio",
"hallazgos",
"manifiesto",
"plataforma",
"procedencia",
"tipo",
"version"
],
"type": "object"
}
BorradorV2Chequeo
{
"additionalProperties": false,
"properties": {
"estado": {
"enum": [
"hallado",
"no_hallado",
"no_medido"
],
"type": "string"
},
"evidencia": {
"items": {
"additionalProperties": false,
"properties": {
"content_type": {
"maxLength": 100,
"type": "string"
},
"status": {
"maximum": 599,
"minimum": 100,
"type": "integer"
},
"url": {
"maxLength": 2048,
"pattern": "^https://\\S+$",
"type": "string"
}
},
"required": [
"content_type",
"status",
"url"
],
"type": "object"
},
"maxItems": 5,
"type": "array"
},
"nombre": {
"enum": [
"robots_bots_ia",
"texto_sin_js",
"contacto",
"json_ld_oferta",
"microdatos",
"og_producto",
"llms_txt",
"cms_api",
"carrito",
"webmcp",
"mcp_server_card",
"mcp_endpoint_vivo",
"a2a_agent_card",
"openapi",
"x402_402",
"cabecera_link"
],
"type": "string"
}
},
"required": [
"estado",
"evidencia",
"nombre"
],
"type": "object"
}
Chequeo
{
"properties": {
"estado": {
"$ref": "#/components/schemas/EstadoDelChequeo"
},
"evidencia": {
"type": [
"string",
"null"
]
},
"nombre": {
"type": "string"
}
},
"required": [
"estado",
"nombre"
],
"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"
}
CuentaDeProcedencia
{
"properties": {
"declarado": {
"format": "uint",
"minimum": 0,
"type": "integer"
},
"inferido": {
"format": "uint",
"minimum": 0,
"type": "integer"
},
"vacio": {
"format": "uint",
"minimum": 0,
"type": "integer"
}
},
"required": [
"declarado",
"inferido",
"vacio"
],
"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"
}
Detalle
{
"additionalProperties": false,
"properties": {
"campo": {
"type": "string"
},
"problema": {
"type": "string"
}
},
"required": [
"campo",
"problema"
],
"type": "object"
}
Diagnostico
{
"properties": {
"chequeos": {
"items": {
"$ref": "#/components/schemas/Chequeo"
},
"type": "array"
},
"dominio": {
"type": "string"
},
"esquema": {
"type": "string"
},
"faltantes": {
"items": {
"type": "string"
},
"type": "array"
},
"fuente": {
"type": "string"
},
"gama": {
"$ref": "#/components/schemas/GamaDemostrada"
},
"linea_roja": {
"items": true,
"type": "array"
},
"procedencia": {
"$ref": "#/components/schemas/CuentaDeProcedencia"
}
},
"required": [
"chequeos",
"dominio",
"esquema",
"faltantes",
"fuente",
"gama",
"linea_roja",
"procedencia"
],
"type": "object"
}
DiagnosticoEntregado
{
"properties": {
"diagnostico": {
"$ref": "#/components/schemas/Diagnostico"
},
"pedido": {
"anyOf": [
{
"$ref": "#/components/schemas/PedidoQueSeVe"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
}
},
"required": [
"diagnostico",
"pedido",
"slug"
],
"type": "object"
}
EstadoDelChequeo
{
"enum": [
"hallado",
"no_hallado",
"no_medido"
],
"type": "string"
}
EstadoQueSeVe
{
"enum": [
"pendiente",
"entregado",
"vencido"
],
"type": "string"
}
Gama
{
"enum": [
"G0",
"G1",
"G2",
"G3",
"G4",
"G5",
"G6"
],
"type": "string"
}
GamaDemostrada
{
"properties": {
"clave_del_motivo": {
"type": "string"
},
"minima_demostrada": {
"anyOf": [
{
"$ref": "#/components/schemas/Gama"
},
{
"type": "null"
}
]
}
},
"required": [
"clave_del_motivo",
"minima_demostrada"
],
"type": "object"
}
PedidoQueSeVe
{
"properties": {
"creado_en": {
"type": "string"
},
"entregado_en": {
"type": [
"string",
"null"
]
},
"estado": {
"$ref": "#/components/schemas/EstadoQueSeVe"
}
},
"required": [
"creado_en",
"entregado_en",
"estado"
],
"type": "object"
}
SobreDeError
{
"additionalProperties": false,
"properties": {
"error": {
"$ref": "#/components/schemas/CuerpoDelError"
}
},
"required": [
"error"
],
"type": "object"
}