Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the LemonSlice, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Flemonslice.com%2Flemonslice" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Flemonslice.com%2Flemonslice" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with LemonSlice API.
Start a real-time avatar session from an agent_id or an agent_image_url, publishing video to LiveKit, Daily, or WebSocket transports
Create a hosted session for a saved LemonSlice avatar and check its status by session_id
Swap a live avatar's reference image or change its agent_prompt and idle prompt mid-session with control events
Send a LiveKit-based avatar into a Zoom, Google Meet, Microsoft Teams, or Webex meeting, and remove it again by meeting_bot_id
GET STARTED
Start and stop avatar sessions on Agora with video_encoding and agora_settings
Generate standing, bust, sitting, or portrait avatar reference images from a single source photo
Patterns agents use LemonSlice API for, with concrete tasks.
★ Agent-launched avatar sessions through Jentic
A voice agent that should appear on camera can ask LemonSlice for a session, pass its LiveKit room details, and receive a session_id and control_url to steer the avatar. Through Jentic the agent finds the create-session operation by intent, the X-API-Key credential is injected at execution time, and a rule can allow session creation and control while leaving meeting joins out of reach.
Call POST /liveai/sessions with agent_id 'agent_abc123', transport_type 'livekit', and properties containing the livekit_url and livekit_token for the room, then store the returned session_id
Avatars in third-party meetings
Some assistants need to show up where people already meet. LemonSlice can send a LiveKit-based avatar session into Zoom, Google Meet, Microsoft Teams, or Webex given the meeting_url, livekit_url, and broadcast_token, with an optional bot_name, and remove it later with the meeting_bot_id the join call returned.
Call POST /liveai/sessions/{session_id}/join-meeting with meeting_url 'https://meet.google.com/abc-defg-hij', the livekit_url, the broadcast_token, and bot_name 'Support Avatar'
Live avatar control
A running avatar can be adjusted without restarting the session. Control events sent to a session update the reference image from an image_url or image_base64, set an agent prompt that shapes expression while speaking or an idle prompt for pauses, trigger actions on CWM-1 avatars, reset the idle timeout, or terminate the session.
Call POST /liveai/sessions/{session_id}/control with event 'update-image' and image_url 'https://example.com/avatar-winter.jpg'
Avatar image preparation
Avatar quality depends on the reference image's pose and framing. The avatar variants operation takes one source photo by image_url or image_base64 and returns reframed images for the variant_ids you request, such as standing, bust, sitting, or portrait, ready to use when creating a session.
Call POST /liveai/avatar-variants with image_url 'https://example.com/headshot.jpg' and variant_ids ['standing', 'portrait'], then use the standing URL as agent_image_url for the next session
12 endpoints — the lemonslice api runs real-time, interactive avatar sessions: it takes an avatar's audio and publishes synchronized talking video to a livekit, daily, pipecat, or agora transport.
METHOD
PATH
DESCRIPTION
/liveai/sessions
Create an avatar session
/liveai/sessions/{session_id}
Get a session
/liveai/sessions/{session_id}/control
Send a control event
/liveai/sessions/{session_id}/join-meeting
Join a third-party meeting
/liveai/rooms
Create a hosted session
/liveai/agora/session/start
Start an Agora session
/liveai/avatar-variants
Generate avatar variants
/liveai/sessions
Create an avatar session
/liveai/sessions/{session_id}
Get a session
/liveai/sessions/{session_id}/control
Send a control event
/liveai/sessions/{session_id}/join-meeting
Join a third-party meeting
/liveai/rooms
Create a hosted session
/liveai/agora/session/start
Start an Agora session
/liveai/avatar-variants
Generate avatar variants
What agents get from Jentic-routed access to this vendor.
Setup
Wiring LemonSlice by hand means sending the X-API-Key header, assembling the right transport properties for LiveKit, Daily, Pipecat, or Agora, and tracking session ids and control URLs across calls. Through Jentic you install once, import LemonSlice from the API Directory, store the key once, and your agent calls it.
Permission scoping
LemonSlice puts the session id in the URL path (/liveai/sessions/{session_id}/control), so a rule can pin your agent to one session and the operations you pick. You choose the operations it may call, so ones that reach outside your app, like joining a third-party meeting, are not included unless you add them.
Credential isolation
Your LemonSlice API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'start a talking avatar session' or 'send the avatar into a meeting', and Jentic returns the matching LemonSlice operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using LemonSlice API through Jentic.
Is there a LemonSlice MCP server?
You don't need an MCP server to give your agent the LemonSlice API. Jentic connects it directly from the API Directory: import it, store your API key once, and your agent calls it. Operations are discovered on demand, so your agent's context carries no tool definitions it will not use.
What authentication does the LemonSlice API use?
Per its OpenAPI spec, the LemonSlice API authenticates with your API token in the X-API-Key header. The session control operation is declared without a security requirement and is addressed through the control_url a new session returns. Through Jentic, the key is stored encrypted by your own Jentic One instance and injected at execution time.
Which transports can a LemonSlice session publish to?
POST /liveai/sessions accepts LiveKit SDK, Pipecat SDK, WebSocket with LiveKit, and WebSocket with Daily inputs, selected with transport_type and its matching properties such as livekit_url and livekit_token or daily_url and daily_token. Agora has its own start and stop operations under /liveai/agora/session.
What are the rate limits for the LemonSlice API?
The OpenAPI spec does not specify rate limits. Check https://lemonslice.com/docs for current limits.
How do I start an avatar session with LemonSlice through Jentic?
Install Jentic One with `curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh`, import the LemonSlice API from the directory, and store your API key. Your agent then searches for 'start a talking avatar session' and Jentic returns POST /liveai/sessions, which takes an agent_id or agent_image_url plus the transport details. To run it on your own infrastructure, install Jentic One from its GitHub repo.
Can a LemonSlice avatar join a Zoom or Google Meet call?
Yes, for LiveKit-based sessions. POST /liveai/sessions/{session_id}/join-meeting takes a meeting_url for Zoom, Google Meet, Microsoft Teams, or Webex with a livekit_url and broadcast_token, and POST /liveai/sessions/{session_id}/leave-meeting removes the avatar by meeting_bot_id.
Can I limit what my agent is allowed to do with the LemonSlice API?
Yes. Write a rule that allows only POST /liveai/sessions and GET /liveai/sessions/{session_id}: the agent can start an avatar session and check on it, but cannot send the avatar into external meetings or run Agora sessions, and every call it makes is logged.
For Agents
Start real-time talking-avatar video sessions over LiveKit, Daily, Pipecat, or Agora, control a live avatar's image and expression, send it into Zoom or Google Meet calls, and generate avatar reference images.
Use for: I need to start a talking avatar session in my LiveKit room, Create a hosted session for avatar agent_abc123, Send my avatar into this Google Meet call, Change the avatar's image while the session is running
Not supported: Does not handle speech recognition, language model responses, text-to-speech, or recorded video editing. Use for real-time avatar video sessions, meeting joins, and avatar image preparation only.
The LemonSlice API runs real-time, interactive avatar sessions: it takes an avatar's audio and publishes synchronized talking video to a LiveKit, Daily, Pipecat, or Agora transport. A session starts from a saved agent_id or a single agent_image_url, and while it runs, control events can swap the reference image, adjust the expression prompts, trigger actions, or terminate it. The same API creates hosted sessions for an avatar, sends a LiveKit-based avatar into Zoom, Google Meet, Microsoft Teams, or Webex meetings, and generates standing, bust, sitting, or portrait reference images from one source photo.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>