SDK TypeScript
Use o SDK do repositório para leituras tipadas, gravações com confirmação e envios de mídia local.
@influence/sdk é, no momento, um pacote privado do repositório, não uma instalação publicada no npm. Estes exemplos se aplicam a projetos que tenham esse pacote do espaço de trabalho disponível. Para um cliente independente, use a API HTTP.
Forneça a origem confiável explicitamente e carregue a chave do ambiente de segredos do processo:
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);
Use listTools() para descoberta e callTool(name, input) para ferramentas cujo catálogo indique que a confirmação é desnecessária, incluindo a continuação de envios autorizados. Ações que exigem confirmação usam prepareTool(name, input) seguido de confirmTool(name, input, confirmationCapability, { idempotencyKey }). Mantenha a mesma entrada, capacidade de confirmação e chave após uma resposta incerta. O SDK valida solicitações e respostas e lança InfluenceSdkError para falhas HTTP e falhas das ferramentas.
uploadMedia(file, { clientKey, name, contentType, sizeBytes }) aceita um Blob e cuida da transferência multipart com confirmação. Tente novamente com o mesmo arquivo e o mesmo clientKey. Leia mediaUploadGet até que o recurso final esteja pronto; um envio em processamento não está pronto para publicar. Respeite as regras de revisão para publicação e novas tentativas, que são separadas.