Abrechnung
US-Dollar-Preise, Reservierung, Abrechnung, Limits und Ledger.
Preise und Guthaben lauten auf US-Dollar. estimatedCost, cost, available, held und total kommen als Dezimalstrings ohne Währungssymbol. Für Buchhaltung ist ein Dezimaltyp statt Float erforderlich.
{
"available": "128.42",
"held": "0.36",
"total": "128.78"
}Aktionsguthaben und Kreditrahmen
GET /api/v1/chat/credit kann das optionale Objekt funding zurückgeben. Es trennt vorausbezahlte Mittel, Aktionsguthaben und genehmigten Kredit. Fehlt es in einer älteren Antwort, bedeutet das nicht null Guthaben. SDK: client.getBalance(); CLI: spicyapi balance --json. Beträge bleiben exakte USD-Dezimalstrings, Zeitangaben verwenden RFC3339.
prepaidAvailableUsd enthält frei verfügbare Vorauszahlungen, grantAvailableUsd die Summe aktuell gültiger Zuwendungen. grants zeigt je Zuwendung availableUsd, heldUsd, spentUsd, status, startsAt, expiresAt und modelSlugs. Eine leere Modellliste gilt für alle Modelle. Gültigkeitszeitraum und Modellbindung werden bei jeder Annahme geprüft; eine Auszahlung ist nicht möglich. Angezeigt werden höchstens 100 Zuwendungen: zuerst diejenigen mit Restguthaben oder reservierten Beträgen, innerhalb beider Gruppen die neuesten zuerst. grantsHasMore=true weist auf weitere Einträge hin; die Listensumme ist daher nicht die Gesamtsumme.
credit.limitUsd ist der genehmigte Rahmen, kein Geldbestand. credit.availableUsd ist der noch verfügbare Kredit, usedUsd die abgerechnete offene Schuld und heldUsd der für laufende Aufgaben reservierte Anteil. Ablauf, Sperre oder Überschreitung beschränken neue Aufrufe; bestehende Schulden bleiben bestehen. available kann durch Kreditnutzung negativ sein. Lehnen Sie deshalb nicht allein anhand dieses Werts ab. Ein positives cashShortfallUsd kennzeichnet einen Fehlbetrag aus zurückgeholten Zahlungen, den Aktionsguthaben und Kredit nicht ausgleichen können. Maßgeblich ist die Annahmeprüfung des Servers.
Rabatte bestimmen den Preis, Aktionsguthaben und Kredit dessen Finanzierung. Nicht genutzte Reservierungen werden ihrer ursprünglichen Quelle zugeordnet; abgelaufenes oder widerrufenes Guthaben wird dadurch nicht wieder gültig. Änderungen gelten erst nach manueller Freigabe. Wenden Sie sich für Zuwendungen oder Kredit an den Support; die öffentliche API kann den eigenen Rahmen nicht erhöhen. Im Ledger stehen grant_expire für Ablauf und grant_revoke für Widerruf.
Nutzung des aktuellen API-Schlüssels
GET /api/v1/usage erfasst nur Tasks des API-Schlüssels, mit dem Sie sich authentifizieren. from und to sind UTC-Daten im Format YYYY-MM-DD. Das Intervall [from,to) schließt den Anfang ein und das Ende aus; maximal sind 92 Tage möglich. Standardmäßig ist to der morgige UTC-Tag und from liegt sieben Tage davor. totalSpend und die einzelnen spend-Werte sind USD-Dezimalstrings und enthalten ausschließlich bereits abgerechnete tatsächliche Kosten, keine offenen Reservierungen. Die Zuordnung erfolgt nach dem Erstellungsdatum des Tasks; eine spätere Abrechnung kann daher frühere Tagesbeträge ändern. Die Antwort ist weder ein Kontostand noch das Restbudget des Schlüssels.
Kundenrabatte und Aktionen
Angebote können für alle Nutzer oder ein bestimmtes Konto und für alle oder ausgewählte Modelle gelten. Dauerhafte Rabatte laufen bis zur Deaktivierung; zeitlich begrenzte Aktionen gelten zwischen ihrem tatsächlichen Beginn und Ende. Kontopreise gelten nur nach Anmeldung mit diesem Konto oder bei einer Preisabfrage mit dessen API-Schlüssel.
Rabatte werden nicht kombiniert. Es gilt automatisch der niedrigste verfügbare Preis: Bei regulär $10, 10% Aktionsrabatt und 20% Kontorabatt zahlen Sie $8. Nach Ablauf einer Aktion berücksichtigen neue Angebote den besten verbleibenden Rabatt oder den regulären Preis.
Ein Countdown reserviert keinen Preis. Fragen Sie jobs/quote mit Authentifizierung und vollständigen Eingaben ab; nach Änderungen an Aktion, Preis oder Eingabe ist eine neue Abfrage nötig. Bereits angenommene Aufgaben behalten ihren eingefrorenen Preis, auch wenn die Aktion während der Ausführung endet. Die Abrechnung überschreitet den reservierten Betrag nicht.
Rabatte werden automatisch auf API-Nutzungskosten angewendet, nicht auf Einzahlungen; sie sind kein Cashback für Aufladungen. Tages- und Monatsbudgets sind Hochrechnungen zum aktuellen Preis. Eine Aktion kann vor Ende des Budgetzeitraums auslaufen; beachten Sie deshalb auch ihr Enddatum.
Abrechnungseinheiten
pricing[].unit eines Modells ist per_image, per_second, per_request oder per_1k_tokens. Lesen Sie quantityField und pricing[].variant aus dem Katalog, statt Eingabefelder zu erraten.
Hold, Settle und Release
createTask reserviert estimatedCost. succeeded wird nach tatsächlicher Nutzung abgerechnet; failed, expired und historische canceled-Datensätze geben den gesamten Betrag frei. Ein neu angenommener Task kann nicht abgebrochen werden. Task und Reservierung entstehen in einer Datenbanktransaktion, und die Abrechnung endet je Task genau einmal.
Guthaben und Obergrenzen
GET /api/v1/chat/credit liefert available, held und total. Zu wenig Guthaben ergibt 40201; Tages-, Monats- und Gesamtlimits eines Schlüssels sowie das tägliche Plattformlimit ergeben 40202. Tageslimits wechseln um 00:00 UTC, Monatslimits am 1. des Monats um 00:00 UTC; ein Gesamtlimit wird nie zurückgesetzt. Eine ausdrücklich gesetzte 0 bedeutet unbegrenzt.
Ledger
Das Ledger ist append-only und verbucht topup, bonus, hold, settle, refund, adjust und chargeback separat. Diese Kontobewegungen fallen nicht unter die Löschfrist für Task-Inhalte und bleiben im Abrechnungsverlauf nachvollziehbar.
Die vollständigen Felddefinitionen stehen im OpenAPI-3.1-Vertrag.

