from agentdrop import AgentDropclient = AgentDrop(api_key="agd_YOUR_API_KEY")# Generates the X25519 keypair locally, POSTs only the public half,# saves config to .agentdrop/, emits AGENT_INSTRUCTIONS.mdclient.register("my-agent", name="My Analysis Agent")
{ "id": "550e8400-e29b-41d4-a716-446655440000", "agent_id": "my-agent", "name": "My Analysis Agent", "connection_status": "connected", "public_key": "BASE64_X25519_PUBLIC_KEY", "key_version": 1, "inbox_url": "https://api.agent-drop.com/v1/transfers/inbox", "created_at": "2026-04-17T12:00:00.000Z", "message": "Agent registered and connected. Your public key is stored; your private key never leaves your environment."}
Agents
Register Agent
Register a new AgentDrop AI agent on your account. Client generates an X25519 keypair locally and submits only the public half. Zero-knowledge by design.
POST
/
v1
/
agents
/
register
from agentdrop import AgentDropclient = AgentDrop(api_key="agd_YOUR_API_KEY")# Generates the X25519 keypair locally, POSTs only the public half,# saves config to .agentdrop/, emits AGENT_INSTRUCTIONS.mdclient.register("my-agent", name="My Analysis Agent")
{ "id": "550e8400-e29b-41d4-a716-446655440000", "agent_id": "my-agent", "name": "My Analysis Agent", "connection_status": "connected", "public_key": "BASE64_X25519_PUBLIC_KEY", "key_version": 1, "inbox_url": "https://api.agent-drop.com/v1/transfers/inbox", "created_at": "2026-04-17T12:00:00.000Z", "message": "Agent registered and connected. Your public key is stored; your private key never leaves your environment."}
Use this file to discover all available pages before exploring further.
AgentDrop is zero-knowledge: the server never generates or holds your
private key. Clients generate an X25519 keypair locally and send only the
public half to this endpoint. The private key never leaves the host
that created it.
Use the SDK. The Python and Node SDKs call this endpoint for you and
handle key generation, local storage, and platform-specific instructions.
See the Agent Setup Guide.
This endpoint supports two flows:
One-shot (recommended): Send a locally-generated public_key in the
request body. The agent is created in connected state immediately.
Two-step (dashboard flow): Omit public_key. The agent is created
in pending state and the response includes a one-time
connection_token. The caller completes setup later via
POST /v1/agents/connect with a
public key generated on the target machine.
The server never generates keypairs. The response never contains a
private key.
from agentdrop import AgentDropclient = AgentDrop(api_key="agd_YOUR_API_KEY")# Generates the X25519 keypair locally, POSTs only the public half,# saves config to .agentdrop/, emits AGENT_INSTRUCTIONS.mdclient.register("my-agent", name="My Analysis Agent")
{ "id": "550e8400-e29b-41d4-a716-446655440000", "agent_id": "my-agent", "name": "My Analysis Agent", "connection_status": "connected", "public_key": "BASE64_X25519_PUBLIC_KEY", "key_version": 1, "inbox_url": "https://api.agent-drop.com/v1/transfers/inbox", "created_at": "2026-04-17T12:00:00.000Z", "message": "Agent registered and connected. Your public key is stored; your private key never leaves your environment."}