FullCup.ai

Firma válida

Este recibo fue firmado por FullCup con Ed25519. No hace falta creernos — la clave pública está publicada, y la comprobación corre en tu máquina.

JSON crudo de este recibo ↗

Consumo

Tokens en total

22

16 de entrada · 6 de salida

Coste

$0.000006

6 micro-USD

Modelo
openai/gpt-4o-mini
Fuente del precio
generation_api
Etiqueta de workload
ms:01M245Q1J0YJAYTQGSJ6QFFZJV
Ejecutado el
2026-09-10T11:44:08.814Z
Cup
01M245Q109 — FullCup — Jar Global
Un recibo nunca contiene el prompt, la respuesta ni ningún contenido de usuario — solo metadatos de consumo.

Compruébalo tú

  1. 1

    Buscar la clave pública

    /.well-known/fullcup-signing-key

  2. 2

    Reconstruir la forma canónica

    En el orden de campos de abajo, exactamente.

  3. 3

    Verificar la firma

    Corre en tu máquina, nunca llama a FullCup.

# canonical field order
["id","cup_id","key_id","model","prompt_tokens","completion_tokens","total_tokens","cost_micro_usd","price_source","upstream_id","workload_tag","created_at"]

node -e '
const https=require("https"),c=require("crypto");
const get=u=>new Promise(r=>https.get(u,s=>{let d="";s.on("data",x=>d+=x);s.on("end",()=>r(JSON.parse(d)))}));
(async()=>{
  const rec=await get("https://api.fullcup.ai/api/receipts/01M25J3NSQSWEFMFE112QVQCFE");
  const wk=await get("https://api.fullcup.ai/.well-known/fullcup-signing-key");
  const ORDER=["id","cup_id","key_id","model","prompt_tokens","completion_tokens","total_tokens","cost_micro_usd","price_source","upstream_id","workload_tag","created_at"];
  const spki=Buffer.concat([Buffer.from("302a300506032b6570032100","hex"),Buffer.from(wk.public_key,"base64")]);
  const pub=c.createPublicKey({key:spki,format:"der",type:"spki"});
  console.log(c.verify(null,Buffer.from(JSON.stringify(rec.receipt,ORDER)),pub,Buffer.from(rec.signature,"base64")));
})()'
Clave pública
HiJHv/xlhWVV5GijGczyyq86EBQT1oZiTwqBK7IV570=