Skip to content

A single entry point for AI agents to access internal APIs and tools.

License

Notifications You must be signed in to change notification settings

treadiehq/entrys

Repository files navigation

Entrys

Give your AI agents a single entry point to access internal APIs and tools. Redact PII by default, audit every request, and control access, without modifying your existing services.

Try Entrys Cloud →

Quick Start

# Initial setup (one-time)
pnpm setup

# Run all services
pnpm run up

SDK

npm install @entrys/client

By default, the SDK connects to entrys.co. For self-hosted deployments, see below.

import Entry from "@entrys/client";

const entry = new Entry({
  apiKey: process.env.ENTRYS_API_KEY
});

const customer = await entry.invoke("get_customer", {
  params: { id: "123" }
});
// { name: "Jane Doe", email: "[REDACTED]", ... }

For self-hosted deployments, also pass baseUrl:

const entry = new Entry({
  apiKey: process.env.ENTRYS_API_KEY,
  baseUrl: "http://localhost:3001"
});

See packages/client/README.md for full SDK docs.

API

curl -X POST "https://api.entrys.co/v1/invoke/get_customer" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $ENTRYS_API_KEY" \
  -d '{"params": {"id": "123"}}'
{
  "ok": true,
  "output": { "name": "Jane Doe", "email": "[REDACTED]" },
  "meta": { "latencyMs": 234, "redactions": [{ "type": "email", "count": 1 }] }
}

Features

  • Tool Versioning - Multiple versions per tool, activate/deactivate without changing agent code
  • PII Redaction - Automatic scrubbing of emails, tokens, SSNs, API keys
  • Audit Log - Full request history with redaction summaries
  • Access Control - Per-agent tool permissions
  • Rate Limiting - 60 req/min per agent/tool

Environment

Create .env files:

apps/api/.env

DATABASE_URL="postgresql://postgres:postgres@localhost:5433/entrys?schema=public"
ADMIN_KEY="your-admin-key"

apps/web/.env

NUXT_API_URL="http://localhost:3001"
NUXT_ADMIN_KEY="your-admin-key"
NUXT_PUBLIC_API_URL="http://localhost:3001"

Scripts

pnpm setup      # Initial setup (database, dependencies, schema)
pnpm run up     # Start all services (Docker + API + Web)
pnpm run down   # Stop all services
pnpm run reboot # Restart all services
pnpm run status # Check service status

clear## Troubleshooting

  • API won’t start / “Authentication failed” for database
    The Postgres container may have been created with different credentials. Recreate it:
    docker compose down -v && pnpm run up

  • Port 5433 already in use
    The script will show what is using the port (process and/or Docker container) and will try the next free port (5434, 5435, 5436) so the app can start. To free 5433: docker stop $(docker ps -q -f 'publish=5433').

License

FSL-1.1-MIT

About

A single entry point for AI agents to access internal APIs and tools.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •