SDK pentru TypeScript
Folosește SDK-ul din depozit pentru citiri tipizate, modificări confirmate și încărcări de fișiere media locale.
@influence/sdk este în prezent un pachet dintr-un depozit privat, fără o versiune publicată pentru instalare prin npm. Exemplele se aplică proiectelor care au acces la acest pachet de spațiu de lucru. Pentru un client independent, folosește HTTP API.
Specifică explicit originea de încredere și încarcă cheia din mediul securizat pentru secrete al procesului:
import { InfluenceClient } from "@influence/sdk/client";
const accessToken = process.env.PUBLISH_API_TOKEN;
if (!accessToken) throw new Error("PUBLISH_API_TOKEN");
const client = new InfluenceClient({
baseUrl: "https://influence.so",
accessToken,
});
const catalog = await client.listTools();
const accounts = await client.callTool("accountList", {});
console.log(catalog.tools, accounts.output);
Folosește listTools() pentru descoperire și callTool(name, input) pentru instrumentele al căror catalog indică faptul că nu este necesară confirmarea, inclusiv continuările autorizate ale încărcărilor. Acțiunile care necesită confirmare folosesc prepareTool(name, input), apoi confirmTool(name, input, confirmationCapability, { idempotencyKey }). După un răspuns incert, păstrează aceleași date de intrare, același permis de confirmare și aceeași cheie. SDK-ul validează cererile și răspunsurile și aruncă InfluenceSdkError pentru erori HTTP și erori ale instrumentelor.
uploadMedia(file, { clientKey, name, contentType, sizeBytes }) acceptă un Blob și gestionează transferul multipart cu confirmare. Reîncearcă folosind același fișier și aceeași valoare clientKey. Citește mediaUploadGet până când fișierul final este pregătit; o încărcare în curs de procesare nu este gata de publicare. Respectă regulile separate pentru verificarea publicării și reîncercare.