Ejento APIs
Stable
  • Stable
  • V2
  • V2 Legacy
    Ejento APIs
    Stable
    • Stable
    • V2
    • V2 Legacy
    • Overview
    • Changelog
    • Versioning
    • Build an App with Ejento APIs
    • Guides
      • Response API Migration
      • Indexing API Migration
    • Authentication
      • Getting Started with Authentication
      • Authenticate User
      • Request Passwordless Exchange Token
      • Exchange Passwordless Token for Access Tokens
      • Register User
      • Update Own Password
      • Refresh Access Token
    • Agents
      • Agent Access
        • Get Agent Access
        • Update Agent Access
      • Agent Alias
        • Get Agent Alias
        • Create an Agent Alias
        • Update an Agent Alias
        • Delete an Agent Alias
        • Get all Agent Aliases
      • Agent Tags
        • Add or Remove Tags from an Agent
        • Get all Tags for a given Project, Team, or Organization
        • Get all Tags grouped by Agent for a given Project, Team, or Organization
      • Agent Chat Threads
        • Get Chat Threads of an Agent
        • Create Chat Thread for an Agent
      • Agent Comment
        • Get all Comments for an Agent
        • Create a Comment
        • Update a Comment
        • Delete a Comment
      • Agent Rating
        • Get Ratings of an Agent
        • Update Agent Rating
        • Get all Agent Ratings
      • Agent Review
        • Get all Reviews for specific Agent
        • Create a new Review
        • Get all Reviews of the Authenticated User
        • Update a Review
        • Delete a Review
      • Agent Tools
        • List all Tools with their enabled status for the given Agent
        • Unlink an Agent from a Tool
        • Link an Agent to a Tool
        • List all tools that are connected to the Agent
      • Agent User
        • Get Users of an Agent
        • Add user to Agent
        • Delete User from Agent
        • Get all Agents Users
      • Agent User Permission
        • Get User Agent Permission
      • Agent Vote
        • Get Vote Information for an Agent
        • Vote on an Agent
      • Agent Type
        • Get all Agent Types
        • Get a specific Agent Type
        • Update a specific Agent Type
      • Get all Agents
      • Create a new Agent
      • Get an Agent
      • Update an Agent
      • Delete an Agent
      • Activate an Agent
      • Get Agent-Corpus Connections
      • Delete Agent-Corpus Connections
      • Get Agent-Corpus Connection Details
      • Create Agent-Corpus Connection
      • Update Agent-Corpus Connection
      • Delete Agent-Corpus Connection
      • Get agent history with pagination
      • Restore an agent to a previous checkpoint
      • Create Custom Instructions for an Agent
      • Get Agent Prompt History
      • Create a Recent Agent
      • Delete a Recent Agent
      • Get Agent Details with Starred Status
      • Create Starred Agent
      • Delete Starred Agent
      • Get the Status of an Agent
      • Get User's Team Role for an Agent
      • Get Agent Filter
      • Generate an image for an agent based on the provided description
      • Get all Agents by Project
      • Get list of Recent Agents
      • Get all Starred Agents of the Authenticated User
      • Get Agents accessible to the Current User across their Teams
      • Get Agents by Project team, User team
    • Agent Response
      • Get an Agent Response
      • Generate Agent Response (Non-Streaming)
      • Update an Agent Response
      • Stream Agent Response (SSE)
      • Delete an Agent Response
      • Get Comments for Agent Response
      • Create a Comment for Agent Response
      • Create a Feedback for an Agent Response
      • Pin an Agent Response
      • Unpin an Agent Response
      • Get Supporting Content of an Agent Response
      • Get Thoughts of an Agent Response
      • Get Agent Responses based on filters
      • Get Agent Responses of an Agent
      • Create Agent Response Log
      • Get Pinned Agent Responses
    • Chat Thread
      • Agent Response
        • Get Agent Responses for a Chat Thread
        • Delete Agent Responses for a Chat Thread
      • Chat Logs
        • Get Chat Logs for a Chat Thread
      • Corpus Connection
        • Get Corpus Connection by ChatThread ID
        • Delete Corpus Connection by ChatThread ID
        • Get a ChatThread-Corpus connection
        • Create a ChatThread-Corpus connection
        • Delete a ChatThread-Corpus connection
      • Documents
        • Get Documents in Chat Thread
      • Get Chat Thread
      • Update Chat Thread
      • Delete Chat Thread
      • Get Chat Threads based on various filters
    • Chat Logs
      • Get Chat Log Details
      • Get Chat Log Search Results
    • Conversation Starters
      • Get Conversation Starters for an Agent
      • Create a new Conversation Starter.
    • Teams
      • Get all Teams
      • Create a Team
      • Get a Team
      • Update a Team
      • Delete a Team
      • Get all Projects of a Team
      • Create a Recent Team
      • Get all Users in a Team
      • Add Users to a Team
      • Remove User from Team
      • Update User Role in Team
      • Get Recent Teams
      • Get all Teams of the Authenticated User
      • Get all Agents of User's Team
    • Projects
      • Retrieve all Projects
      • Create a Project
      • Get a Project
      • Update a Project
      • Delete a Project
      • Get Agent Responses using Project ID
      • Add a Recent Project for a User
      • Add Users to a Project
      • Remove a User from a Project
      • Get all Workflows for a Project
      • Get multiple Projects by their IDs
      • Get Projects based on filters
      • Get Recent Projects for a User
      • Get Projects with Team Details
    • Corpora
      • Get all Corpus
      • Upload a Document to a Corpus
      • Create a Corpus
      • Get a Corpus
      • Update a Corpus
      • Delete a Corpus
      • Get Corpus Agent Connections
      • Get Default Corpus Agent Connection
      • Annotate/Tag a Corpus
      • Get Conversation Starters for a Corpus
      • Get all Documents for a Corpus
      • Delete Document(s) from a Corpus
      • Check Duplicate Documents in a Corpus
      • Get all Permissions for a Corpus
      • Create a new Permission for a Corpus
      • Delete a user permission for a corpus
      • Get all user permissions for a corpus
      • Trigger a Refresh (Reindex) of a Corpus
      • Get Corpora with Refresh (Reindex) Enabled
    • Documents
      • Get a Document
      • Update a Document
      • Delete a Document
      • Annotate a Document
      • Get Conversation Starters for a Document
      • Trigger a Refresh (Reindex) of a Document
      • Retrieve multiple Documents by IDs
    • Organizations
      • Get all Configurations
      • Get active configuration for an Organization
      • Get the Model Deployment for an Organization
      • Get all Tools in an Organization
      • Disable a Tool for all Agents in an Organization
      • Enable a Tool for all Agents in an Organization
      • Get all API Tool Templates
      • Create a new API Tool Template
      • Create a new API tool
      • Create an attachment tool
      • Create a new RAG tool in an Organization
      • Create a Web Search Tool in an Organization
      • Get all Users in an Organization
      • Create a User in an Organization
      • Get all Configurations of user's Organization
      • Get all LLM configurations of the user's Organization
      • Get a specific LLM configuration by ID
    • Users
      • Get a User
      • Update a User
      • Delete a User
      • Get Agent Responses of a User
      • Get all User Permissions
      • Create a new User Organization Permission
      • Update the Organization Permission of a User
      • Delete a User Organization Permission
      • Get Projects of a User
      • Get all Workflow Tables for a User
      • Get all Workflows for a User
      • Delete multiple Users
      • Get a specific User by user_email
      • Get all Users
      • Get authenticated User
      • Get User Projects
    • Analytics
      • Get Agent Cost Data
      • Get Agent Document Count Data
      • Get Agent Indexing Mode Data
      • Get Agent Most Active Data
      • Get Agent Query Count Data
      • Get Recent Agent Data
      • Get Agent Summary Statistics
      • Get Agent Token Data
      • Get Agent Vote Data
      • Get Corpus Document Count Data
      • Get Corpus Indexing Mode Data
      • Get Cost Data
      • Get Document Count Data
      • Get Indexing Mode Data
      • Get Project Cost Data
      • Get Project Document Count Data
      • Get Project Indexing Mode Data
      • Get Project Most Active Data
      • Get Project Query Count Data
      • Get Recent Project Data
      • Get Project Summary Statistics
      • Get Project Token Data
      • Get Project Vote Data
      • Get Overall Summary Statistics
      • Get Team Cost Data
      • Get Team Document Count Data
      • Get Team Indexing Mode Data
      • Get Team Most Active Data
      • Get Team Query Count Data
      • Get Recent Team Data
      • Get Team Summary Statistics
      • Get Team Token Data
      • Get Team Vote Data
      • Get Total Entity Counts
      • Get User Cost Data
      • Get User Document Count Data
      • Get User Indexing Mode Data
      • Get User Most Active Data
      • Get User Query Count Data
      • Get Recent User Data
      • Get User Summary Statistics
      • Get User Token Data
      • Get User Vote Data
      • Get Vote Count Data
      • Get Query Count Data
      • Get Token Data
    • Configurations
      • Update the LLM configuration for an Agent
      • Get OAuth-related Feature Flags
    • Evaluations
      • Retrieve all evaluations or filter by dataset
      • Create a new evaluation
      • Delete a set of evaluations or a specific evaluation
      • Retrieve all evaluation datasets for a specific agent
      • Create a new evaluation dataset for the given agent
      • Delete multiple datasets or all datasets for an agent
      • Retrieve a specific evaluation
      • Update an evaluation run
      • Delete a specific evaluation
      • List query results for an evaluation run
      • Create a query result and save metrics
      • Retrieve a specific dataset
      • Update an evaluation dataset
      • Delete a specific dataset
      • Retrieve queries for an evaluation dataset
      • Create a new query for evaluation
      • Retrieve all unique tags from all datasets in the organization
      • Get a specific metric result by ID
      • Retrieve all metrics or filter by category name
      • Create a new metric
      • Retrieve a specific metric
      • Update a metric
      • Delete a metric
      • Get all metric results for a specific metric
      • Create a new metric result entry for the given metric
      • Retrieve a specific evaluation query
      • Update an evaluation query
      • Delete an evaluation query
      • Get a specific query result with metrics
      • Update a query result
    • Guardrails
      • Get available guardrail types for agent
      • Apply Guardrails on Input Text
      • Enable/disable a guardrail type for agent
      • Get Guardrails
      • Update Guardrails
      • Delete Guardrails
      • Get Guardrails in Organization
      • Create Guardrail in Organization
      • Enable or Disable Guardrail for Organization
    • Feature Flags
      • Get All Feature Flags
      • Get Agent Alias Feature Flag
      • Get Api Tools Feature Flag
      • Get Caching Feature Flag
      • Get Chat Agent Creation Feature Flag
      • Get dall_e Image Generation Feature Flag
      • Get Developer Portal Feature Flag
      • Get Guardrail Feature Flag
      • Get PII Redaction Feature Flag
      • Get Share Agent Feature Flag
      • Get Sharepoint Connector Feature Flag
      • Get Sharepoint Index Feature Flag
      • Get Youtube Index Feature Flag
    • Notifications
      • Get all Notifications
      • Create a new Notification
      • Update Notifications by User ID
      • Get a Notification
      • Update a Notification
      • Delete a Notification
    • Tools
      • Get Tool by ID
      • Update Tool by ID
      • Delete Tool by ID
    • Workflows
      • Get all Workflows
      • Create a Workflow
      • Get a Workflow
      • Update a Workflow
      • Delete a Workflow
      • Get all Workflow Chat Threads
      • Create a Workflow Chat Thread
      • Create a Workflow Chat Response
      • Get a Workflow Chat Thread
      • Update a Workflow Chat Thread
      • Delete a Workflow Chat Thread
      • Get all Workflow Chat Responses
      • Delete a Workflow Response
      • Create a Workflow Feedback
      • Retrieve a list of reviews for a given workflow response
      • Create a Workflow Review

    Build an App with Ejento APIs

    Welcome to Ejento!
    This guide provides a comprehensive roadmap for working with Ejento APIs, covering everything from setup to advanced features.
    Each API listed here comes with a direct link to its detailed documentation, where you can explore full request/response formats and advanced options.
    Please note that this guide highlights only the key APIs for getting started. In the sidebar, you’ll find all categories with their complete set of APIs, organized for deeper exploration.
    By following this guide, you can efficiently build and scale AI-powered applications with confidence and clarity.

    Before You Start
    To use Ejento APIs, you’ll need:
    The server base URL
    Your API key passed in the request headers
    Your Authorization Bearer token passed in the request headers
    For details, please refer to the API Overview. Or you can directly go to the API key guide to get your keys, auth token, and server URL.
    Once set up, you can return here and start using any API right away.

    1. Authentication & User Setup#

    Before anything else, secure your app with user authentication. Ejento provides flexible APIs for registration, login, tokens, and profiles.
    Register User – Create a new user in your app.
    Login (Exchange Credentials) – Validate credentials and issue access tokens.
    Refresh Access Token – Refresh tokens to maintain sessions securely.
    Passwordless Authentication – Allow login without passwords (e.g., via magic links).
    Get Authenticated User – Retrieve the profile of the logged-in user.
    Get All Users – Retrieve a list of all registered users in your organization.
    Useful for admin dashboards, role management, or analytics, where you need visibility into the complete user base.
    Result: Your users can now register, log in, and securely access your app.

    2. Organizing Teams & Projects#

    Ejento lets you structure workspaces for your apps using Teams and Projects.
    Ejento uses a hierarchical model:
    Team → Project → Assistant
    Team: A group of users (e.g., your company or department).
    Project: A workspace inside a team for a specific app or use case.
    Assistant (Agent): An AI chatbot that lives inside a project.

    Step 1: Create a Team#

    Create Team – Start by creating a new team.
    Add Users to Team – Invite collaborators into the team.

    Step 2: Create a Project within the Team#

    Create Project – Set up a new project inside your team.
    Add Users to Project – Assign project-specific members.

    Step 3: Prepare for Assistants#

    Once your project is ready, you can move on to creating your Assistants (Agents) inside that project.
    Result: You now have a properly organized environment where assistants can be created and managed within projects, and projects are grouped under teams.

    3. Creating Your Assistant (Agent)#

    The heart of your app is an Assistant (Agent) – an AI entity that chats with users.
    Create Agent – Spin up a brand-new assistant.
    Get Agent – Fetch full details of your agent.
    Add User to Agent – Assign users to a specific agent so they can start interacting with it.
    Custom Instructions – Personalize your assistant with instructions and behavior rules.
    Link Agent to Tool – Connect your assistant with a specific tool (e.g., web search, RAG, external APIs, or other custom tools you create). Once linked, the agent can use that tool while generating responses, enabling richer and more powerful conversations tailored to your use case.
    Result: Your assistant is created and ready to be trained.

    4. Knowledge Base (Corpus & Documents)#

    To make your assistant smart, you need to feed it knowledge.
    Create Corpus – Set up a knowledge base for your app.
    Upload Document – Add knowledge to your assistant by uploading files such as PDFs, text files, Word docs, or other supported formats.
    This API takes your document, processes its content, and stores it inside the selected Corpus. Once uploaded, the assistant can reference the document in conversations, giving users precise, context-aware answers.
    Get All Documents for Corpus – Retrieve a list of all documents added to a corpus, making it easier to manage and verify uploaded knowledge sources.
    Agent–Corpus Connection – Link your agent with a corpus so it can answer using your data.
    Result: Your assistant now has access to your organization’s knowledge base.
    It can read from your uploaded documents and use that content to provide accurate, contextual, and domain-specific answers. This means your assistant goes beyond generic responses and becomes a true expert on your company’s data.

    5. Conversations & Chat Threads#

    Now, let’s enable real user conversations.
    Create Chat Thread – Start a new conversation thread with your agent.
    Agent Response (Send Message) – Post a message and receive the agent’s reply.
    Get Agent Response – Retrieve specific agent replies by ID.
    Get Chat Logs – Access full history of a chat session.
    Result: Your users can chat with the assistant, and you can store complete conversations.

    6. Feedback & Ratings#

    Collect insights to improve your assistant’s performance.
    Update Agent Rating – Let users upvote or downvote your agent based on their experience. This helps track satisfaction and gather quick feedback on performance.
    Feedback on Response – Attach comments or thumbs-up/down to responses.
    Result: You can track user satisfaction and refine your assistant.

    7. Notifications & Engagement#

    Keep users informed and engaged with push-style notifications.
    Create Notification – Generate a new notification for users.
    Get Notifications – Retrieve the list of user notifications.
    Result: Your app can actively engage with its users.

    8. Analytics & Monitoring#

    Measure, monitor, and optimize your app with Ejento’s analytics.
    Agent Summary Statistics – Overview of usage and performance.
    Query Count Data – Track how many queries your agent is handling.
    Cost & Token Usage – Monitor consumption and associated costs.
    Result: You understand performance and costs at a glance.

    9. Advanced Features (Optional)#

    Enhance your assistant with advanced capabilities.
    Guardrails – Apply safety filters to control agent behavior.
    Image Generation – Generate AI-powered images based on prompts.
    Workflows – Automate multi-step tasks and connect multiple APIs together.
    Result: Your assistant becomes smarter, safer, and more versatile.

    Complete Flow Summary#

    Here’s the big picture flow for building a chatbot assistant app:
    1.
    User Auth → Register and log in users securely with authentication APIs.
    2.
    Teams → Create teams to manage groups of users and collaborate within shared spaces.
    3.
    Projects → Organize work inside teams by creating projects for different apps or use cases.
    4.
    Assistants → Spin up your chatbot assistant inside a project and customize its behavior.
    5.
    Knowledge Base → Add documents and data sources (PDFs, text, Word files, etc.) so your assistant can answer with real knowledge.
    6.
    Conversations → Enable chat threads and responses, allowing real-time interactions with users.
    7.
    Feedback → Collect upvotes, downvotes, reviews, and comments to improve assistant quality.
    8.
    Notifications → Keep users engaged with in-app alerts and updates.
    9.
    Analytics → Monitor usage, costs, activity, and performance metrics to optimize your app.
    10.
    Advanced Features → Add guardrails for safety, enable image generation, or automate tasks with workflows.

    Conclusion#

    By following this roadmap, you can build a fully functional app in just a few steps.
    Ejento APIs are designed to be modular, flexible, and developer-friendly so you can pick what you need and scale as your app grows.
    Previous
    Versioning
    Next
    Response API Migration
    Built with