# Boxmile Team Leads: marketer setup

Workspace: https://leads-staging.boxmile.com

You need Chrome, your own Discord login, and a personal Boxmile team access key issued by the owner. No VPN, SSH key, Discord token, database file or server software is needed. Use a separate key for each person. Do not share the owner's key.

## Install the Discord extension

1. Download https://leads-staging.boxmile.com/downloads/boxmile-team-extension.zip and extract it into a permanent folder on your computer.
2. Open `chrome://extensions`, enable Developer mode, choose **Load unpacked**, and select the extracted folder containing `manifest.json`.
3. Pin **Boxmile Team Leads**. Open its icon, paste your personal Boxmile access key, and select **Connect**. The key begins with `bmt_`. This is not your Discord token.
4. Open or reload https://discord.com/channels/@me. Use Discord normally. Look for the **Boxmile Leads** button at the bottom right and badges beside recognizable visible member, friend and DM rows or an open profile.
5. Click a badge to inspect the team record, claim a contact, add a note or mark an already-sent message as contacted.

If a badge is missing, the page may not expose a stable user ID. Enable Discord Developer Mode in its Advanced settings, use Discord's **Copy User ID**, and paste that ID into the Boxmile panel. Do not use a channel ID from the address bar or guess from a nickname. A manual lookup is only as accurate as the ID you enter.

## Meaning of the badges

- **Contact recorded:** the team has recorded contact, or an imported source record was already marked contacted. Inspect the event history for who, when and which channel. Older imported status may lack these details.
- **Claimed by [name]:** a teammate reserved this contact for 15 minutes. Claims expire automatically. Only the claimant can release an active claim.
- **No contact recorded:** the live team database has no recorded contact. This does not mean nobody has ever messaged them.
- **Not in team database:** lookup succeeded but the Discord ID is not stored. Use **Add reviewed contact** after checking the name and ID.
- **Do not contact:** a shared suppression. Marketers cannot clear it. Ask the owner about corrections.
- **Checking** or **Unknown/offline:** no reliable current result. Do not treat this as permission to contact.

Status is refreshed approximately every 15 to 30 seconds while the Discord tab is visible. Use **Refresh status** immediately before outreach. Server-side claim checks are authoritative if two people act at once. Claims coordinate the team but cannot prevent somebody from manually sending in Discord anyway.

## Daily workflow

Review the record and history. Claim it before starting outreach. Send any message yourself in Discord. After it is actually sent, select **Mark contacted**, optionally adding a short reference or note. This records a team event; it does not send a message or prove delivery. Release your claim if you decide not to contact. Use **Do not contact** for opt-outs and **Add team note** for context or corrections. Corrections are additional notes; history is not erased.

You can also browse the shared workspace in a normal browser using the same key. It retains the key only in that page's memory, so refresh or reopening requires sign-in. The extension retains its key in Chrome extension storage until disconnected; protect your OS account and browser profile. It is not a password vault.

## Reviewed additions and scope

The extension can add a selected, reviewed contact using a stable Discord ID, displayed name and source URL. It does not automatically harvest all server members, inspect bios or connections, infer cross-platform identities, read message bodies, extract Discord credentials or send messages. Profile details and Discord DMs are not synchronized. Existing historical messages are not automatically backfilled. No HAR export is needed; HAR files can contain credentials and private messages.

## Troubleshooting

- **Sign in:** reconnect through the extension icon. Expired or revoked keys require the owner to issue a replacement.
- **Other marketer claimed:** review their name and coordinate with them or wait for expiration.
- **No success confirmed:** do not assume a write failed. Retry the same action without changing its note; the open panel retains a request ID to avoid duplicate events. Reopening the panel resets that pending ID, so check history first.
- **Offline:** check the workspace and your internet connection. Do not mark someone new based on an old cached badge.
- **Updating:** replace the extension files in the same folder, click Reload in `chrome://extensions`, and reload Discord. Do not uninstall unless necessary because uninstalling clears the saved key.

Team keys cannot delete leads, change existing identities or names, erase history, export a raw database, run SQL, issue credentials or access the server shell. Authorized users can read lead records and append notes or contact flags; a compromised key can still misuse those permissions. Report loss or misuse to the owner for immediate revocation.
