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 APILivePUT https://emporium.ultravioletadao.xyz/api/businesses/{slug}/diagnosis
MCPComing soon
CLIComing soon
Python SDKComing soon
TypeScript SDKComing soon
Rust SDKComing 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

NameInRequiredSchemaWhat it is
slugpathyesstring
X-Emporium-Enjambre-FirmaheaderyesstringSwarm 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"
}