PlatformV3 API · MAY 2026

The platform underneath the production layer.

Composable functions you chain into workflows. Observability and evals on every function. Automatic model upgrades behind a stable API. Multi-cloud, Private Link, on-prem, EU regions. The platform that ships into the security posture your customers already expect.

First 100 function calls every month, free. No credit card. No sales call required.

Functions

Seven primitives. One contract.

Each function is a pure, versioned, schema-typed operation. Use one in isolation, or compose them into a workflow your team can ship in minutes. Every call returns strict-typed JSON, a per-field confidence score, and an audit trail.

Extract
01 / 07

Turn any file into structured JSON in seconds.

The most-used function on the platform. Multi-modal in, schema-typed out, with a confidence score on every field. A classifier picks from 15+ models per file and upgrades them behind a stable API. You write the schema once. We handle the rest.

Multi-modal
PDF · image · audio · video · email · SMS · WhatsApp
Auto models
15+ models, classifier-routed and silently upgraded
Strict schema
Type-safe contract. It never guesses.
A worked example

A 47-page claims packet, in one call.

POST /v3/functions/extract.run200 OK · 4.1s
{
  "claim_id": "C-2026-0428-991",
  "claimant": {
    "name": "Daniel R. Carmichael",
    "dob": "1972-11-04",
    "policy": "PRX-487-A"
  },
  "incident": {
    "date": "2026-04-21",
    "type": "auto_collision",
    "severity_score": 0.81
  },
  "documents": 47,
  "confidence": 0.972
}
Every field typed. Every value confidence-scored. Every output reproducible.
02 / 07
Classify

Identify the input type and route it to the right workflow. Customer taxonomies, learned over time.

Zero-shot or fine-tuned
03 / 07
Parse

Turn raw unstructured input into a clean, machine-readable representation the rest of the pipeline can operate on.

Multi-modal in, IR out
04 / 07
Split

Semantically break a multi-document packet into individual records and classify each one. Map-reduce for files.

100+ pages, one call
05 / 07
Join

Three-way matches across inputs and systems of record. Reconcile invoice, PO, and goods receipt in one pass.

Relational, schema-aware
06 / 07
Enrich

Resolve entities against your CRM, ERP, and internal datasets. Augment fields with what you already know.

Vector + structured lookup
07 / 07
Payload Shaping

Format the final structured output against the exact schema your downstream system expects.

JMESPath, typed contracts
Workflows

Functions chain into workflows your team can ship.

A workflow is a versioned graph of functions, branching logic, and fallback states. Define the path, the thresholds, and the human-review behavior. We execute it with idempotent semantics, full state management, and end-to-end traceability.

workflows/claims-intake.graph
v3 · published
┌──────────────┐    ┌──────────────┐    ┌──────────────┐
│   CLASSIFY   │ ─► │    PARSE     │ ─► │   EXTRACT    │
│  taxonomy    │    │ multi-modal  │    │   schema     │
└──────────────┘    └──────────────┘    └──────┬───────┘
                                               │
                  ┌────────────────────────────┘
                  ▼
       ┌──────────────────┐    ┌──────────────┐    ┌──────────────┐
       │      SPLIT       │ ─► │    ENRICH    │ ─► │     JOIN     │
       │ packets → items  │    │ CRM · ERP    │    │  3-way match │
       └──────────────────┘    └──────────────┘    └──────┬───────┘
                                                          │
                                                          ▼
                                              ┌────────────────────┐
                                              │  PAYLOAD SHAPING   │
                                              │ → downstream API   │
                                              └────────────────────┘
                                                          │
                                       confidence < threshold ?
                                                          │
                                                          ▼
                                              ┌────────────────────┐
                                              │   HUMAN REVIEW     │
                                              │  corrections loop  │
                                              └────────────────────┘
Why workflows
Idempotent
Re-run any payload safely. Same input, same output, every time.
Versioned
Workflows and functions are independently versioned. Promote and roll back per environment.
Branching
Threshold-driven routing. If confidence is low, route to review. If high, ship to the downstream API.
Observable
Every step emits a span. Latency, model used, confidence, cost, all in one trace.
Observability & evals

Probabilistic AI requires deterministic guardrails.

Production accuracy is a system property, not a model property. Bem treats accuracy like code coverage: golden datasets, regression tests, drift detection, and a review queue that doubles as training data.

01 / 03

Accuracy scores

Precision, recall, F1, and threshold analysis on every function. Compare versions, model variants, and customer cohorts side by side.

P/R/F1 · regression · drift
02 / 03

Human review

Type-safe schemas flag low-confidence outputs into a built-in inbox. Operators label, correct, and approve in one place. Corrections become training data immediately.

Inbox · labeling · routing
03 / 03

Fine-tuning

Custom models trained on your schema and your corrections. Auto-retraining, model versioning, instant rollback, and per-customer accuracy that compounds.

Versioned · rollback · isolated
GET /v3/functions/extract.run/regressions/reg_89234
200 OK
{
  "regression_id": "reg_89234",
  "function": "extract.run",
  "baseline_version": "v1.2.0",
  "current_version":  "v1.3.0-rc1",
  "samples":     500,
  "precision":   0.994,
  "recall":      0.991,
  "f1":          0.992,
  "drift_detected": false,
  "field_threshold_breaches": [],
  "verdict": "promote"
}
Surfaces

Forge for the no-code parts. AI Forms for the user-facing parts.

Two surfaces sit on top of the same V3 API. Forge composes workflows visually. AI Forms turns those workflows into auto-generated user-facing forms you can embed or login-gate. The teammates who don't live in code get the same primitives the engineers do.

Forge

Visual workflow builder.

Drag, drop, and connect functions. Define schemas inline. Promote to production without writing a line of code. The same workflow runs behind your API key.

From sample input to live API in minutes
Schemas inferred from your real documents
One-click promote across environments
AI Forms

Auto-generated user-facing forms.

Every workflow exposes an AI Form. Upload a file, the form fills itself. Operators edit anything that looks wrong. Submissions flow back into the same audit trail.

Embed via iframe or React component
Login-gate per workflow
Operator inbox for review queues
API & SDKs

One V3 API. Four SDKs. A Terraform provider and a CLI.

Everything in Bem is an API call. The SDKs are auto-generated, fully typed, and published per release of the platform. Define functions and workflows as code, version them in your repo, and roll forward or back with the same primitives as your application.

examples/workflow.ts
@bem/sdk · v3
import { Bem } from "@bem/sdk";

const bem = new Bem({ apiKey: process.env.BEM_API_KEY });

// 1. Run a single function
const extracted = await bem.functions.extract.run({
  file: await fs.readFile("claim_packet.pdf"),
  schemaId: "claim_v3",
});

// 2. Or call a full workflow you composed in Forge
const workflow = await bem.workflows.run("claims-intake", {
  inputs: { file: extracted.file_id },
  metadata: { policy_id: "PRX-487-A" },
});

workflow.outputs;          // strict-typed JSON
workflow.confidence;       // per-field confidence
workflow.review_queue_id;  // present if any field crossed threshold
workflow.audit_trail;      // every step, every model, every score
SDKs · IaC · CLI
TYPESCRIPT
@bem/sdk
Node 18+, Bun, Deno
PYTHON
bem
3.10+, async-native
GO
github.com/bem-ai/go-sdk
Context-aware, generics
C#
Bem.Sdk
.NET 8, NuGet
TERRAFORM
bem-ai/bem
Functions, workflows, schemas as code
CLI
bem
Local dev, CI, golden datasets
The same V3 API behind all of them. Auto-generated. Type-safe.
Infrastructure

Multi-cloud. Private Link. On-prem. EU sovereignty.

Bem ships into the deployment surface your security team already expects. Start on the multi-tenant cloud, move to Private Link as you scale, and run on-premise or in your own VPC when you need to. Same V3 API, same SDKs, same evals.

Multi-tenant cloud
Pay-as-you-go. US and EU regions. Start in minutes, no procurement.
Private Link
Dedicated AWS connectivity. No public internet, no shared egress.
On-premise / VPC
Customer cloud, air-gapped, or hybrid. Same V3 API, same SDKs.
EU sovereignty
Frankfurt and Dublin endpoints. Data residency on request.
Uptime
99.99% SLA available
Encryption
In transit and at rest
Retention
Zero-retention mode per workflow
Residency
US · EU · customer cloud
Enterprise-grade

Built for regulated industries from day one.

Compliance, deployment, and procurement-ready from your first call. Bem ships into the security posture your customers already expect.

Deployment
Multi-tenant cloud
Pay-as-you-go, start in minutes
Private Link
Dedicated connectivity, no public internet
On-premise / VPC
Air-gapped or customer cloud
EU/EEA endpoints. Data residency on request. End-to-end encryption in transit and at rest.
Controls
SOC 2 Type II
Audited annually
HIPAA
BAA on request
GDPR
EU data sovereignty
Zero retention
Configurable per workflow
Build in minutes

Build in minutes. Start for free.

Whether it's our no-code builder or APIs, ship your first workflow in minutes, not days. Get the first 100 function calls for free, then pay-as-you-go with graduated pricing.

Platform | bem | bem