@ararahq/pluma-cloud
v0.1.0
Published
Typed client for Pluma Cloud context, streaming exports, managed OCR, and document rendering.
Readme
@ararahq/pluma-cloud
Typed server-side client for Pluma Cloud document rendering, managed OCR, and exact large-dataset context jobs.
npm install @ararahq/pluma-cloudimport { Pluma } from "@ararahq/pluma-cloud"
const pluma = new Pluma({ apiKey: process.env.PLUMA_API_KEY! })
const source = await pluma.read({ url: "https://example.com/report" })
const answer = await myAgent.run(source.markdown)
const { pdf } = await pluma.render({ markdown: answer })const upload = await pluma.reserveContextUpload({ filename, bytes, sha256, contentType })
await fetch(upload.url, { method: "PUT", body: file })
const job = await pluma.createContextJob(upload.key, {
indexes: [{ columns: ["transaction_id"] }],
materializedAggregates: [{ groupBy: ["country"], metrics: [{ field: "amount", operation: "sum", as: "revenue" }] }],
})
const proof = await pluma.explainContext(job.id, { filters: [{ field: "transaction_id", op: "eq", value: "tx_42" }] })
// indexed candidate selection: O(log N + K)The client adds an idempotency key to every document request, preserves Pluma
request IDs and metering metadata, and exposes structured PlumaError failures.
Keep API keys in server-side code only.
