API-Referenz

KI-Anbieter

Direkt mit einem Nur-Lese-Schlüssel verbundene KI-Anbieter und die KI-Rechnungssteller, die Sie als Lieferanten hinzufügen können.

Mehr zu dieser Ressource

Neu mit den KI-Ausgabenkontrollen. Neben den KI-Positionen auf Ihren Cloud-Rechnungen liest Pleaxy die Kosten- und Nutzungsberichte der KI-Anbieter, die Sie direkt bezahlen. OpenAI und Anthropic nutzen einen Nur-Lese-Admin-Schlüssel; Mistral ebenfalls, sofern die Organisation über die Admin API verfügt (eine Enterprise-Funktion); OpenRouter einen Management-Schlüssel; CoreWeave ein API-Zugriffstoken mit der Rolle Billing Viewer; Databricks das OAuth-Secret eines Service-Principals; für Snowflake erzeugt Pleaxy ein Schlüsselpaar, dessen öffentlichen Schlüssel Sie einem Dienstbenutzer zuweisen. Lambda, Nebius, Crusoe und die Seat-basierten Rechnungssteller (Cursor, GitHub, Microsoft) haben keine Abrechnungs-API, die Pleaxy lesen kann: Fügen Sie sie als Lieferanten hinzu, und ihre Rechnungen werden am Vertrag gemessen. Der Schlüssel wird vor dem Speichern mit einem Lesezugriff geprüft, verschlüsselt gespeichert, nie zurückgegeben (nur seine letzten vier Zeichen, keyHint) und nie verwendet, um beim Anbieter etwas zu ändern. Die Positionen jedes verbundenen Anbieters werden täglich gelesen und erscheinen unter KI-Ausgaben als eigener Rechnungssteller, gegen die Bestellungen gestellt, die an seinen Lieferanteneintrag ausgestellt wurden. Für jeden KI-Rechnungssteller legt Pleaxy vorab einen Lieferanteneintrag an, den Sie ohne Verbindung hinzufügen können: Seine Rechnungen und Bestellungen funktionieren dann wie bei jedem anderen Lieferanten. Ein verbundener Anbieter zählt wie ein Cloud-Konto zum Anbieterlimit des Plans. Der Connector jedes Anbieters wird pro Region aktiviert; bis dahin antwortet das Verbinden mit 404, und das Hinzufügen als Lieferant funktioniert weiterhin.

KI-Anbieter auflisten

Listet die verbundenen KI-Anbieter des Workspace auf.

GET/v1/workspaces/{regionId}/ai-providers

Rückgabe

200 OK mit dem in der Antwort gezeigten Objekt.

Weitere Details

Jede direkte Verbindung zu einem KI-Anbieter im Workspace, verbunden oder ausstehend: um welchen Anbieter es sich handelt, welches Konto sie liest, die letzten vier Zeichen des Schlüssels, wann zuletzt synchronisiert wurde und wie es lief. Der Schlüssel selbst wird nie zurückgegeben. Erfordert 'view'-Zugriff auf Lieferanten oder auf Rechnungen.

Antwortfelder

  • accountLabelstring

    Wie der Anbieter die Organisation oder das Konto nennt, das der Schlüssel liest.

  • keyHintstring

    Die letzten vier Zeichen des Schlüssels, die einzige Spur davon, die Pleaxy zeigt. Fehlt bei Snowflake, dessen Schlüsselpaar Pleaxy erzeugt hat.

  • statusstring

    connected, oder pending bei einem Snowflake-Schlüsselpaar, dessen öffentlicher Schlüssel dem Dienstbenutzer noch nicht zugewiesen wurde: SyncAiProvider prüft es und schließt die Verbindung ab.

  • snowflakeobject

    Nur Snowflake: Kontokennung, Dienstbenutzer, Warehouse und optionale Rolle, mit denen sich das Schlüsselpaar anmeldet, sowie der öffentliche Schlüssel (PEM) und sein Fingerprint, die mit ALTER USER ... SET RSA_PUBLIC_KEY zugewiesen werden.

  • creditPriceobject

    Nur Snowflake: der Preis pro Credit laut Ihrem Vertrag, der Credits in Geld umrechnet. Ohne ihn bleiben die KI-Positionen des Anbieters in Credits, mit currency credits, und werden nie mit Geldbeträgen summiert.

  • supplierConnectionIdstring

    Der Lieferanteneintrag, an dem der Anbieter hängt; KI-Ausgaben stellt seine Positionen gegen die an diesen Eintrag ausgestellten Bestellungen.

  • currencystring

    Die Abrechnungswährung des Anbieters, wie sein Kostenbericht sie angibt.

  • lastSyncStatusstring

    Wie der letzte Lesevorgang verlief: ok, error (lastSyncError nennt den Grund, lastSyncErrorCode ist access_revoked, wenn der Schlüssel nicht mehr funktioniert) oder throttled (der Anbieter hat Pleaxy gebeten zu warten; der nächste Lauf versucht es erneut).

Fehler

  • 401 Unauthorized - Es wurden keine Zugangsdaten übermittelt, oder der Bearer-Token bzw. der X-Api-Key-Wert fehlt, ist ungültig, abgelaufen oder widerrufen.
  • 403 Forbidden - Der Bearer-Token oder API-Schlüssel des Aufrufers gewährt keinen Zugriff auf diesen Workspace (regionId) oder hat nicht die erforderliche Rolle.
GET /v1/workspaces/{regionId}/ai-providers
Anfrage
curl "$PLEAXY_API_BASE_URL/v1/workspaces/{regionId}/ai-providers" \
  -H "X-Api-Key: $PLEAXY_API_KEY"
Antwort · 200 OK
[
   {
      "id": "string",
      "provider": "openai" | "anthropic" | "mistral" | "snowflake" | "openrouter" | "databricks" | "coreweave",
      "accountLabel": "string",
      "keyHint": "string",
      "status": "connected" | "pending",
      "connectedAt": "string",
      "connectedBy": "string",
      "snowflake": { "account": "string", "user": "string", "warehouse": "string", "role": "string", "publicKeyPem": "string", "publicKeyFingerprint": "string" },
      "creditPrice": { "amount": number, "currency": "string", "kind": "on_demand" | "capacity" | "commit" },
      "supplierConnectionId": "string",
      "currency": "string",
      "lastSyncedAt": "string",
      "lastSyncStatus": "ok" | "error" | "throttled",
      "lastSyncError": "string",
      "lastSyncErrorCode": "string"
   }
]

KI-Anbieter anlegen

Verbindet einen KI-Anbieter mit einem Nur-Lese-Schlüssel.

POST/v1/workspaces/{regionId}/ai-providers

Body

  • provider"openai" | "anthropic" | "mistral" | "snowflake" | "openrouter" | "databricks" | "coreweave"Pflicht

    Der zu verbindende Anbieter. Sein Connector muss in der Region aktiviert sein.

  • keystring

    Jeder Anbieter außer Snowflake, erforderlich: ein Nur-Lese-Schlüssel. Der Admin-Schlüssel von OpenAI beginnt mit sk-admin- (Organization settings › Admin keys), der von Anthropic mit sk-ant-admin (Claude Console, Settings › Admin keys); der von Mistral ist ein Admin-API-Schlüssel; der Management-Schlüssel von OpenRouter beginnt mit sk-or-; der von CoreWeave ist ein API-Zugriffstoken; der von Databricks ist das OAuth-Secret des Service-Principals. Wird nie protokolliert und nie zurückgegeben.

  • snowflakeobject

    Snowflake, erforderlich: { account, user, warehouse, role? }: die Kontokennung (orgname-account_name), der Dienstbenutzer, das Warehouse, auf dem die Nutzungsabfrage läuft, und eine optionale Rolle.

  • databricksobject

    Databricks, erforderlich: { host, clientId, warehouseId }: der Workspace-Host (eine Databricks-Domain), die OAuth-Client-ID des Service-Principals und das SQL-Warehouse, auf dem die Abrechnungsabfragen laufen; key ist das OAuth-Secret des Principals. Der Principal braucht SELECT auf system.billing (und system.serving für Token-Zahlen).

  • creditPriceobject

    Snowflake und Databricks, optional: { amount, currency, kind } mit kind on_demand, capacity oder commit: der Preis pro Credit (Snowflake) oder DBCU (Databricks) laut Ihrem Vertrag. Ohne ihn bleiben die Positionen von Snowflake in Credits, und die von Databricks stehen zum Listenpreis des Kontos.

Rückgabe

201 Created mit dem in der Antwort gezeigten Objekt.

Weitere Details

Verbindet einen direkten KI-Anbieter. Senden Sie für OpenAI, Anthropic und Mistral den Nur-Lese-Admin-Schlüssel: Pleaxy liest damit einmal und speichert ihn nur, wenn das klappt, verschlüsselt, fügt den Lieferanteneintrag des Anbieters zu Ihren Lieferanten hinzu und gibt die Verbindung zurück. Senden Sie für Snowflake, wo die Anmeldung erfolgt: Pleaxy erzeugt ein Schlüsselpaar und gibt die Verbindung als pending zurück, mit dem öffentlichen Schlüssel, der dem Dienstbenutzer zuzuweisen ist; SyncAiProvider prüft ihn dann. Nach fünf fehlgeschlagenen Prüfungen pro Anbieter innerhalb einer Stunde heißt es warten. Erfordert 'create'-Zugriff auf Lieferanten.

Fehler

  • 400 Bad Request - Die Validierung ist fehlgeschlagen; der Schlüssel fehlt oder ist nicht der Admin-Schlüssel dieses Anbieters; der Anbieter hat ihn nicht akzeptiert (nicht autorisiert, verboten, keine Admin API, ausgelastet oder nicht erreichbar, und es wurde nichts gespeichert); fünf fehlgeschlagene Prüfungen in der letzten Stunde; oder der Plan der Region hat sein Anbieterlimit erreicht.
  • 404 Not Found - Unbekannter Anbieter, oder sein Connector ist in dieser Region nicht aktiviert.
  • 409 Conflict - Der Anbieter ist im Workspace bereits verbunden.
  • 401 Unauthorized - Es wurden keine Zugangsdaten übermittelt, oder der Bearer-Token bzw. der X-Api-Key-Wert fehlt, ist ungültig, abgelaufen oder widerrufen.
  • 403 Forbidden - Der Bearer-Token oder API-Schlüssel des Aufrufers gewährt keinen Zugriff auf diesen Workspace (regionId) oder hat nicht die erforderliche Rolle.
POST /v1/workspaces/{regionId}/ai-providers
Anfrage
POST /v1/workspaces/reg_01k5x8p9j3q7vn2mhb4tzc6rde.buyer/ai-providers

{ "provider": "anthropic", "key": "sk-ant-admin01-…" }
Antwort · 201 Created
{
   "id": "aip_01k8q2m4xv7c9n3p5t6r8w0yzb",
   "provider": "anthropic",
   "accountLabel": "Northwind Labs",
   "keyHint": "f3Qa",
   "status": "connected",
   "connectedAt": "2026-10-30T09:12:44.000Z",
   "supplierConnectionId": "sc_01k8q2m5a1b2c3d4e5f6g7h8j9"
}

KI-Anbieter synchronisieren

Liest Kosten und Nutzung eines KI-Anbieters sofort.

POST/v1/workspaces/{regionId}/ai-providers/{id}/sync

Parameter

  • idstringPflicht

    Die ID der KI-Anbieter-Verbindung.

Rückgabe

201 Created mit dem in der Antwort gezeigten Objekt.

Weitere Details

Liest die Kosten- und Nutzungsberichte eines Anbieters sofort, statt auf den täglichen Lauf zu warten, und gibt die Verbindung mit ihrem neuen Synchronisierungsstatus zurück. Bei einer Snowflake-Verbindung im Status pending prüft es zuerst, ob sich das Schlüsselpaar anmelden kann, und markiert sie als connected. Einmal alle 15 Minuten pro Anbieter. Erwartet keinen Body. Erfordert 'create'-Zugriff auf Lieferanten oder 'edit'-Zugriff auf Rechnungen.

Fehler

  • 400 Bad Request - Vor weniger als 15 Minuten synchronisiert, oder ein Snowflake-Schlüsselpaar im Status pending kann sich weiterhin nicht anmelden (nichts wurde geändert).
  • 404 Not Found - Im Workspace gibt es keine solche Verbindung, oder der Connector des Anbieters wurde deaktiviert.
  • 401 Unauthorized - Es wurden keine Zugangsdaten übermittelt, oder der Bearer-Token bzw. der X-Api-Key-Wert fehlt, ist ungültig, abgelaufen oder widerrufen.
  • 403 Forbidden - Der Bearer-Token oder API-Schlüssel des Aufrufers gewährt keinen Zugriff auf diesen Workspace (regionId) oder hat nicht die erforderliche Rolle.
POST /v1/workspaces/{regionId}/ai-providers/{id}/sync
Anfrage
curl -X POST "$PLEAXY_API_BASE_URL/v1/workspaces/{regionId}/ai-providers/{id}/sync" \
  -H "X-Api-Key: $PLEAXY_API_KEY"
Antwort · 201 Created
{
   "id": "string",
   "provider": "openai" | "anthropic" | "mistral" | "snowflake" | "openrouter" | "databricks" | "coreweave",
   "status": "connected" | "pending",
   "lastSyncedAt": "string",
   "lastSyncStatus": "ok" | "error" | "throttled",
   "lastSyncError": "string"
}

KI-Anbieter löschen

Trennt einen KI-Anbieter.

DELETE/v1/workspaces/{regionId}/ai-providers/{id}

Parameter

  • idstringPflicht

    Die ID der KI-Anbieter-Verbindung.

Rückgabe

200 OK mit dem in der Antwort gezeigten Objekt.

Weitere Details

Trennt einen direkten KI-Anbieter: Die Verbindung und ihr verschlüsselter Schlüssel werden gelöscht, und es wird festgehalten, wer sie getrennt hat. Die bereits gelesenen KI-Positionen bleiben als Verlauf erhalten, ebenso der Lieferanteneintrag. Widerrufen Sie den Schlüssel auch beim Anbieter (bei Snowflake entfernen Sie den öffentlichen Schlüssel des Benutzers).

Angemeldete Sitzung mit 'edit'-Zugriff auf Lieferanten; ein API-Schlüssel erhält 403.

Fehler

  • 403 Forbidden - Der Aufrufer ist ein API-Schlüssel oder hat kein 'edit' für Lieferanten.
  • 404 Not Found - Im Workspace gibt es keine solche Verbindung.
  • 401 Unauthorized - Es wurden keine Zugangsdaten übermittelt, oder der Bearer-Token bzw. der X-Api-Key-Wert fehlt, ist ungültig, abgelaufen oder widerrufen.
DELETE /v1/workspaces/{regionId}/ai-providers/{id}
Anfrage
curl -X DELETE "$PLEAXY_API_BASE_URL/v1/workspaces/{regionId}/ai-providers/{id}" \
  -H "X-Api-Key: $PLEAXY_API_KEY"
Antwort · 200 OK
{
   "id": "string",
   "provider": "openai" | "anthropic" | "mistral" | "snowflake" | "openrouter" | "databricks" | "coreweave"
}

KI-Anbieter als Lieferant hinzufügen

Fügt einen KI-Rechnungssteller als Lieferanten hinzu, ohne ihn zu verbinden.

POST/v1/workspaces/{regionId}/ai-providers/{provider}/supplier

Parameter

  • providerstringPflicht

    Einer von openai, anthropic, mistral, cohere, xai, openrouter, snowflake, databricks, coreweave, lambda, nebius, crusoe, cursor, github oder microsoft (ListAiInvoicers listet sie auf).

Rückgabe

201 Created mit dem in der Antwort gezeigten Objekt.

Weitere Details

Fügt einen KI-Rechnungssteller aus dem Eintrag, den Pleaxy vorab anlegt, Ihrer Lieferantenliste hinzu, ohne etwas zu verbinden, sodass Sie Bestellungen an ihn ausstellen und seine Rechnungen erfassen können. Funktioniert für jeden KI-Rechnungssteller, auch für die, die Pleaxy nicht lesen kann (ihre Ausgaben stammen aus ihren Rechnungen). Gibt den vorhandenen Eintrag zurück, falls es einen gibt, und ein späteres Verbinden verknüpft mit demselben Eintrag. Erwartet keinen Body. Erfordert 'create'-Zugriff auf Lieferanten.

Fehler

  • 404 Not Found - Unbekannter KI-Rechnungssteller.
  • 409 Conflict - Code SUPPLIER_ALREADY_LISTED: Für einen Lieferanten mit diesem Namen läuft bereits ein Onboarding, oder es ist freigegeben.
  • 401 Unauthorized - Es wurden keine Zugangsdaten übermittelt, oder der Bearer-Token bzw. der X-Api-Key-Wert fehlt, ist ungültig, abgelaufen oder widerrufen.
  • 403 Forbidden - Der Bearer-Token oder API-Schlüssel des Aufrufers gewährt keinen Zugriff auf diesen Workspace (regionId) oder hat nicht die erforderliche Rolle.
POST /v1/workspaces/{regionId}/ai-providers/{provider}/supplier
Anfrage
curl -X POST "$PLEAXY_API_BASE_URL/v1/workspaces/{regionId}/ai-providers/{provider}/supplier" \
  -H "X-Api-Key: $PLEAXY_API_KEY"
Antwort · 201 Created
{
   "id": "string",
   "buyerOrgId": "string",
   "supplierName": "string",
   "aiProvider": "string",
   "status": "pending_invite" | "invited" | "in_progress" | "submitted" | "approved" | "rejected",
   "createdAt": "string"
}

KI-Rechnungssteller auflisten

Listet die KI-Rechnungssteller auf, die Pleaxy vorab als Lieferanten anlegt.

GET/v1/workspaces/{regionId}/ai-invoicers

Rückgabe

200 OK mit dem in der Antwort gezeigten Objekt.

Weitere Details

Die KI-Rechnungssteller, für die Pleaxy einen Lieferanteneintrag führt: ihre Namen, die Gesellschaften, aus denen sie je Region Rechnungen stellen, die Währungen, in denen sie abrechnen, ob sie per Rechnung, über Prepaid-Credits oder beides abrechnen, die Domains, von denen ihre Rechnungs-E-Mails kommen, wie Pleaxy ihre Ausgaben liest und ob dieser Leser in Ihrer Region aktiviert ist (connectable). Pleaxy pflegt die Liste; Gesellschaften und Domains sind ein Hinweis auf den Rechnungsempfänger, nie eine Prüfung. Erfordert 'view'-Zugriff auf Lieferanten oder auf Rechnungen.

Antwortfelder

  • legalEntitiesArray<object>

    Die Gesellschaft, die einem Käufer in jeder Region Rechnungen stellt, default für jede nicht aufgeführte Region, mit ihrem Land.

  • credentialstring

    Wie Pleaxy die Ausgaben des Rechnungsstellers liest: admin_key (ein Nur-Lese-Schlüssel, den Sie einfügen), key_pair (ein Schlüsselpaar, das Pleaxy erzeugt) oder none (keine Lese-API; seine Ausgaben stammen aus seinen Rechnungen).

  • shapestring

    Worin seine Positionen gemessen werden: tokens, credits (Snowflake, Databricks) oder capacity (GPU-Stunden).

  • connectableboolean

    Ob CreateAiProvider ihn jetzt in dieser Region verbinden kann.

Fehler

  • 401 Unauthorized - Es wurden keine Zugangsdaten übermittelt, oder der Bearer-Token bzw. der X-Api-Key-Wert fehlt, ist ungültig, abgelaufen oder widerrufen.
  • 403 Forbidden - Der Bearer-Token oder API-Schlüssel des Aufrufers gewährt keinen Zugriff auf diesen Workspace (regionId) oder hat nicht die erforderliche Rolle.
GET /v1/workspaces/{regionId}/ai-invoicers
Anfrage
curl "$PLEAXY_API_BASE_URL/v1/workspaces/{regionId}/ai-invoicers" \
  -H "X-Api-Key: $PLEAXY_API_KEY"
Antwort · 200 OK
[
   {
      "id": "string",
      "name": "string",
      "legalEntities": [ { "region": "us" | "eu" | "default", "name": "string", "country": "string" } ],
      "billingCurrencies": [ "string" ],
      "billing": [ "invoice" | "prepaid_credits" ],
      "senderDomains": [ "string" ],
      "credential": "admin_key" | "key_pair" | "none",
      "tier": "direct" | "data_platform" | "host" | "neocloud" | "seats",
      "shape": "tokens" | "credits" | "capacity" | "seats",
      "contactHint": "string",
      "connectable": boolean
   }
]
Kontakt aufnehmen