WeaveScope

Projects and API keys

Separate trace data into projects and manage the API keys that send it.

Projects separate applications, environments, or workloads in WeaveScope. Every API key belongs to one project, and every trace sent with that key lands in the same project.

Manage projects

Open Settings → Projects to create, rename, switch, or delete projects.

The project list shows:

Field Meaning
Project The project's display name.
Public ID Its stable proj_... identifier.
Retained traces Trace records still inside the retention window.
Retention How long the project keeps trace data.
Created When the project was created.

Deleting a project permanently removes its API keys, traces, and stored payloads. Usage already counted during the current billing cycle is not reset. You cannot delete the organization's last project.

Project limits

Plan Projects
Free 1
Pro Unlimited
Scale Unlimited
Enterprise Custom

An immediate plan change is blocked if the organization already has more projects than the target plan allows. See Limits and billing for scheduled downgrade behavior.

Manage API keys

Open Settings → API keys after selecting the project you want to connect.

API keys:

  • Begin with ws_.

  • Are shown in full only once, immediately after creation.

  • Send data to one project.

  • Can be revoked at any time.

  • Show when they were last used.

If you lose the full token, revoke it and create a replacement.

Configure BeamWeaver

Store the key as WEAVESCOPE_API_KEY and configure the hosted endpoint:

config :beam_weaver,
  weave_scope: [
    endpoint: "https://app.weavescope.com",
    api_key: System.fetch_env!("WEAVESCOPE_API_KEY")
  ]

Use separate projects and API keys when you want to isolate production, staging, and development traces.

Authenticate direct ingestion

Send the project API key in either header:

Authorization: Bearer ws_...
x-api-key: ws_...

BeamWeaver uses the Bearer token header.

Custom clients and OpenTelemetry exporters can send data directly with the same project key. For example:

curl https://app.weavescope.com/api/v1/observations/batch \
  -H "authorization: Bearer $WEAVESCOPE_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "events": [
      {
        "observation_id": "manual-root-1",
        "trace_id": "manual-root-1",
        "operation": "finish",
        "name": "manual.test",
        "kind": "span",
        "status": "success"
      }
    ]
  }'

See the Ingestion API for the complete request and response contract.

Key permissions

Project ingestion keys include ingest:write and traces:read. A valid key without ingest:write receives 403 Forbidden when it tries to ingest data.

Rotate a key

  1. Create a replacement key in the same project.

  2. Deploy the new secret.

  3. Confirm that the replacement key shows recent use.

  4. Revoke the old key.

Rotating a key affects only its project.