Skip to main content
Applies to:
  • Plan - Enterprise
  • Deployment - Self-hosted
  • Use case - Resolve online scoring automations not firing on a self-hosted data plane when multiple Braintrust organizations share the same data plane

Summary

An online scorer runs manually but its automation does not fire. The usual cause is a duplicate or missing bt_data_plane_manager service token when multiple orgs share one data plane. Invite the parent org’s bt_data_plane_manager into the child org. If you’ve already minted a manager token in the child org, reach out to Braintrust engineering to remove the duplicate token so the invite will work.

What is happening

When multiple orgs share a self-hosted data plane, automations require a single data plane manager token to be present and consistent across orgs. A child org with its own or a mismatched bt_data_plane_manager token can prevent automations from running. Test automation runs the scorer against a recent matching row and shows results in the modal banner. Test automation does not write scoring spans to logs. The processing status panel fills only for trace-scoped rules. It stays empty for span-scoped automations. For span-scoped filters use span_attributes.name = '...' instead of name = '...'.

Fix or suggestion

Option 1: Invite the parent data plane manager (most common fix)

  1. Open the parent org’s Settings > Service tokens and copy the manager id shown in the token row (the numeric id column shown in the UI). Do not use the invite-string value that looks like bt::sp::custom::data_plane_manager-..., use the numeric id displayed in the Service Tokens list.
  2. Run the invite API from a machine with your API key:
Replace <child_org_id> and <manager_user_id> with the child org id and the numeric manager id copied from the parent org Service Tokens page. Wrap your API key in the BRAINTRUST_API_KEY environment variable when running the command.
  1. If a manager token was previously minted in the child org, contact Braintrust support to remove the duplicate bt_data_plane_manager token. The duplicate must be removed for the parent’s invite to take effect.
  2. In the child org, go to Settings > Service tokens and confirm the bt_data_plane_manager entry matches the parent org manager id you copied.
  3. Wait about one hour for backend caches to clear. Opening the child org Service Tokens page after the changes helps trigger the refresh.

Option 2: Check instance variables and permissions (alternative)

  1. Confirm your instance environment variables are set and correct for multi-org setups: ORG_NAME, PRIMARY_ORG_NAME, and ALLOWED_ORG_IDS (ALLOWED_ORG_IDS should list the org ids that are permitted on the same data plane).
  2. Verify the invited bt_data_plane_manager id shown in the parent org matches the child org entry after you invite it.
  3. If you see 500s when reprocessing traces, check for duplicate bt_data_plane_manager tokens and ask Braintrust to remove the extra token. Also confirm the service token has the required log update permissions for the org.

How to confirm it worked

  • In the automation modal click Test automation. The modal banner should show a test result such as Scores for X matching logs.
  • Send new traces that match the span filter. Check the Logs page for scored spans. A span-scoped automation shows scores on the matching spans.