RessourcenGuthaben

Guthaben

Guthabenstände prüfen, Nutzungsguthaben abziehen, Checkout-Sitzungen erstellen, Auto-Reload verwalten und Transaktionsverlauf über die Talkturo-API abrufen.

curl -X GET "https://api.talkturo.com/api/credits?accountId=acc_7f2c91d8-3b31-4b4d-bf80-5c6f11a2d931" \
  -H "Authorization: Bearer tk_live_example_9xmk7q2r"
{
  "success": true,
  "credits": {
    "id": "cred_4a8d6f12",
    "account_id": "acc_7f2c91d8-3b31-4b4d-bf80-5c6f11a2d931",
    "credits": 18420,
    "total_purchased": 25000,
    "total_used": 6580,
    "auto_reload_enabled": true,
    "auto_reload_threshold": 2000,
    "auto_reload_amount_usd": 199
  }
}
curl -X POST "https://api.talkturo.com/api/credits" \
  -H "Authorization: Bearer tk_live_example_9xmk7q2r" \
  -H "Content-Type: application/json" \
  -d '{
    "accountId": "acc_7f2c91d8-3b31-4b4d-bf80-5c6f11a2d931",
    "amount": 120,
    "description": "Outbound call usage",
    "metadata": {
      "assistantId": "asst_b83bde21",
      "callId": "call_91fd2e74"
    }
  }'
{
  "success": true,
  "transactionId": "txn_6c1f3ab9",
  "balance": 18300,
  "autoReloadTriggered": false
}
curl -X POST "https://api.talkturo.com/api/credits/checkout" \
  -H "Authorization: Bearer tk_live_example_9xmk7q2r" \
  -H "Content-Type: application/json" \
  -d '{
    "accountId": "acc_7f2c91d8-3b31-4b4d-bf80-5c6f11a2d931",
    "accountSlug": "acme-sales",
    "planId": "credits_growth_199",
    "customerEmail": "finance@acme-sales.com"
  }'
{
  "success": true,
  "checkoutToken": "seti_example_7b34f2c8",
  "sessionId": "cs_test_b1a92c7d5e",
  "credits": 20000,
  "amount": 199
}

Guthaben für Ihr Konto verwalten

Mit den Guthaben-Endpunkten prüfen Sie Ihren aktuellen Kontostand, ziehen Nutzungsguthaben ab, starten den Kauf zusätzlicher Credits und rufen verlaufsbezogene Daten ab. Die API deckt sowohl programmgesteuerte Nutzungsvorgänge als auch abrechnungsnahe Workflows wie Checkout und Auto-Reload ab.

Ein Teil dieser Endpunkte verwendet Dual-Auth über withApiAuth. Sie können diese Endpunkte entweder mit einem API-Schlüssel oder mit einer bestehenden Sitzung aufrufen. Andere Endpunkte sind ausschließlich für authentifizierte Sitzungen verfügbar und eignen sich vor allem für Dashboard-nahe Abläufe.

Verwenden Sie für serverseitige Integrationen bevorzugt einen API-Schlüssel. Sitzungsgebundene Endpunkte setzen eine aktive Benutzeranmeldung voraus und sind nicht für generische Backend-Integrationen gedacht.

Endpunkte im Überblick

MethodePfadAuthentifizierungZweck
GET/api/creditsAPI-Schlüssel oder SitzungAktuellen Guthabenstand eines Kontos abrufen
POST/api/creditsAPI-Schlüssel oder SitzungGuthaben für Nutzungsvorgänge abziehen
POST/api/credits/checkoutAPI-Schlüssel oder SitzungStripe-Checkout für den Guthabenkauf erstellen
GET/api/credits/auto-reloadNur SitzungAuto-Reload-Konfiguration abrufen
POST/api/credits/auto-reloadNur SitzungAuto-Reload-Konfiguration speichern
POST/api/credits/claim-grantsNur SitzungVerfügbare Grants beanspruchen
GET/api/credits/plansNur SitzungVerfügbare Guthabenpläne abrufen
GET/api/credits/statementNur SitzungGuthabenauszug abrufen
GET/api/credits/transactionsNur SitzungTransaktionsverlauf abrufen

Guthabenstand abrufen

Rufen Sie den aktuellen Guthabenstand eines Kontos mit GET /api/credits ab. Wenn für das angegebene Konto noch kein Guthabeneintrag existiert, erstellt der Endpunkt ihn automatisch.

Query-Parameter

query
accountIdstring

Die Konto-ID, deren Guthaben Sie abrufen möchten. Wenn Sie diesen Parameter weglassen, verwendet der Endpunkt die accountId aus dem authentifizierten Kontext.

Antwortfelder

successboolean
Required

Gibt an, ob die Anfrage erfolgreich verarbeitet wurde.

creditsobject
Required

Das Guthabenobjekt für das angefragte Konto.

credits.idstring
Required

Die eindeutige ID des Guthabeneintrags.

credits.account_idstring
Required

Die ID des Kontos, zu dem der Guthabeneintrag gehört.

credits.creditsnumber
Required

Der aktuell verfügbare Guthabenstand.

credits.total_purchasednumber
Required

Die insgesamt gekaufte Guthabenmenge.

credits.total_usednumber
Required

Die insgesamt verbrauchte Guthabenmenge.

credits.auto_reload_enabledboolean
Required

Gibt an, ob automatisches Nachladen für das Konto aktiviert ist.

credits.auto_reload_thresholdnumber
Required

Der Schwellenwert, unter dem ein Auto-Reload ausgelöst werden kann.

credits.auto_reload_amount_usdnumber
Required

Der in US-Dollar konfigurierte Nachladebetrag für Auto-Reload.

Guthaben abziehen

Verwenden Sie POST /api/credits, um Guthaben für Nutzungsvorgänge zu verbuchen. Der Endpunkt führt die Abbuchung serverseitig aus und gibt den aktualisierten Saldo sowie Informationen zu einem möglichen Auto-Reload zurück.

Body-Parameter

body
accountIdstring
Required

Die ID des Kontos, von dem Guthaben abgezogen werden soll.

body
amountnumber
Required

Die abzuziehende Guthabenmenge.

body
descriptionstring

Eine optionale Beschreibung des Nutzungsvorgangs, die in der Transaktion gespeichert werden kann.

body
metadataobject

Optionale strukturierte Zusatzdaten zum Vorgang, zum Beispiel Referenzen auf Anrufe, Assistenten oder interne Nutzungs-IDs.

Antwortfelder

successboolean
Required

Gibt an, ob die Abbuchung erfolgreich war.

transactionIdstring
Required

Die ID der erzeugten Guthabentransaktion.

balancenumber
Required

Der verbleibende Guthabenstand nach der Abbuchung.

autoReloadTriggeredboolean
Required

Gibt an, ob die Abbuchung ein automatisches Nachladen ausgelöst hat.

Wenn das Konto nicht über ausreichend Guthaben verfügt, antwortet der Endpunkt mit HTTP-Status 402. Planen Sie diesen Fall in Ihrer Integration explizit ein, bevor Sie nachgelagerte Nutzungsvorgänge als erfolgreich markieren.

Checkout für Guthabenkauf erstellen

Erstellen Sie mit POST /api/credits/checkout eine Stripe-Checkout-Sitzung für den Kauf zusätzlicher Credits. Sie übergeben entweder eine planId oder ein benutzerdefiniertes Paar aus Betrag und Guthabenmenge.

Body-Parameter

body
accountIdstring
Required

Die ID des Kontos, für das die Checkout-Sitzung erstellt wird.

body
accountSlugstring
Required

Der Slug des Kontos. Der Endpunkt verwendet ihn für die Zuordnung des Kaufs.

body
planIdstring

Die ID eines vordefinierten Guthabenplans. Geben Sie entweder planId oder die Kombination aus customAmount und customCredits an.

body
customAmountnumber

Ein benutzerdefinierter Betrag in US-Dollar. Bei benutzerdefinierten Käufen beträgt das Minimum 99.

body
customCreditsnumber

Die Guthabenmenge, die mit einem benutzerdefinierten Betrag gekauft werden soll.

body
customerIdstring

Eine optionale Stripe-Kunden-ID, wenn der Kauf einem bestehenden Kunden zugeordnet werden soll.

body
customerEmailstring

Eine optionale E-Mail-Adresse für den Stripe-Checkout.

body
toltReferralstring

Eine optionale Referral-Kennung, die beim Checkout mitgegeben wird.

Antwortfelder

successboolean
Required

Gibt an, ob die Checkout-Sitzung erfolgreich erstellt wurde.

checkoutTokenstring
Required

Das vom Checkout zurückgegebene Token für die initiale Einbettung oder Weiterverarbeitung.

sessionIdstring
Required

Die ID der erzeugten Stripe-Checkout-Sitzung.

creditsnumber
Required

Die Guthabenmenge, die mit diesem Kauf verbunden ist.

amountnumber
Required

Der Kaufbetrag in US-Dollar.

Für benutzerdefinierte Käufe müssen Sie customAmount und customCredits gemeinsam senden. Ein benutzerdefinierter Betrag unter 99 US-Dollar wird nicht akzeptiert.

Nur für Sitzungen verfügbare Endpunkte

Die folgenden Guthaben-Endpunkte unterstützen keinen API-Schlüssel. Rufen Sie sie nur aus einem angemeldeten Benutzerkontext auf.

MethodePfadZweck
GET/api/credits/auto-reloadAktuelle Auto-Reload-Einstellungen abrufen
POST/api/credits/auto-reloadAuto-Reload-Einstellungen aktualisieren
POST/api/credits/claim-grantsVerfügbare Guthaben-Grants beanspruchen
GET/api/credits/plansVerfügbare Guthabenpläne abrufen
GET/api/credits/statementGuthabenauszug oder Verlauf abrufen
GET/api/credits/transactionsEinzelne Guthabentransaktionen abrufen

Verwandte Seiten