Skip to content

Bandwidth you can measure

Beam is an open coordination layer for data transfer. Describe where bytes need to go and a competing network of operators moves them — measured, verified, and paid on delivered performance.

Pick your interface

Start from the map, build visually in Studio, or manage your account from a terminal. Every transfer your organization creates spends the same credits and shows up together in the Console.

Start in five minutes

Create an API key, install what you will drive Beam with, then send bytes. The SDK handles chunking, assignment, and recovery.

python -m pip install beam-network-sdk

async with BeamSDK(api_key=..., environment="prod") as beam:
    transfer = await beam.transfers.create(
        sources=[SourceConfig(type="http", url=source)],
        destinations=[DestConfig(type="http", url=destination)],
        total_size=size,
    )
    await beam.transfers.distribute(transfer.transfer_id)
    await beam.transfers.wait_complete(transfer.transfer_id, timeout=3600)
  1. Add creditsFund your organization in the Console under Settings → Billing.
  2. Create an API keyScope it to a project, and keep it out of source control.
  3. Install the SDKpip install "beam-network-sdk[s3]", or the TypeScript, Go and Rust SDKs.
  4. Install Beam Studiocurl -fsSL https://cdn.b1m.ai/studio/install.sh | sudo sh — the self-hosted app for building data movement visually. Needs a Linux host with systemd, and installs Docker itself; see the requirements.
  5. Install the Beam CLIcurl -fsSL https://cdn.b1m.ai/cli/install.sh | sh — manage your account, machines, and Rooms from a terminal.
  6. Send a transferPoint the SDK at a source and a destination, then wait for completion — or run it from Studio, without writing code.

Understand the network