Skip to main content

Rippletide API (0.0.1)

Download OpenAPI specification:Download

Rippletide is a platform for building hallucination-free conversational AI agents. This API allows you to manage your agents, knowledge base, and more.

Agent

Manage your conversational AI agents. Create, retrieve, update, and delete agents that will handle user interactions.

List all agents in the workspace

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new agent

Request Body schema: application/json
required
name
required
string (Name)
prompt
required
string (Prompt)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "prompt": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "prompt": "string",
  • "short_description": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Get a specific agent by ID

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "prompt": "string",
  • "short_description": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Update an existing agent

path Parameters
agent_id
required
string <uuid> (Agent Id)
Request Body schema: application/json
required
Name (string) or Name (null) (Name)
Prompt (string) or Prompt (null) (Prompt)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "prompt": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "prompt": "string",
  • "short_description": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Delete an agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Get user input collection for an agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
null

Create user input collection for an agent

path Parameters
agent_id
required
string <uuid> (Agent Id)
Request Body schema: application/json
required
Array
property name*
additional property
any

Responses

Request samples

Content type
application/json
[
  • { }
]

Response samples

Content type
application/json
null

Get summary of an agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
{
  • "agent": {
    },
  • "q_and_a": {
    },
  • "agent_conversation": {
    }
}

QAndA

Questions And Answers (QAndAs) are used by your agent to answers user's questions. QAndAs are used as the only source of truth by the agent in order to avoid hallucination. QAndAs can be organized with tags for better categorization and retrieval.

List all QAndAs in the workspace

Responses

Response samples

Content type
application/json
{
  • "q_and_as": [
    ]
}

Create a new QAndA

Request Body schema: application/json
required
question
required
string (Question)
answer
required
string (Answer)
agent_id
required
string <uuid> (Agent Id)

Responses

Request samples

Content type
application/json
{
  • "question": "string",
  • "answer": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978"
}

Response samples

Content type
application/json
{
  • "question": "string",
  • "answer": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Get a specific QAndA by ID

path Parameters
q_and_a_id
required
string <uuid> (Q And A Id)

Responses

Response samples

Content type
application/json
{
  • "question": "string",
  • "answer": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Update an existing QAndA

path Parameters
q_and_a_id
required
string <uuid> (Q And A Id)
Request Body schema: application/json
required
Question (string) or Question (null) (Question)
Answer (string) or Answer (null) (Answer)

Responses

Request samples

Content type
application/json
{
  • "question": "string",
  • "answer": "string"
}

Response samples

Content type
application/json
{
  • "question": "string",
  • "answer": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Delete a QAndA

path Parameters
q_and_a_id
required
string <uuid> (Q And A Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

List all QAndAs used by a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
{
  • "q_and_as": [
    ]
}

Tag

Organize your knowledge base content with tags. Tags can be applied to QAndAs to enable more sophisticated content organization and retrieval.

Get All Tags

Responses

Response samples

Content type
application/json
null

Create Tag

Request Body schema: application/json
required
name
required
string (Name)
Description (string) or Description (null) (Description)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Get Tag

path Parameters
tag_id
required
string <uuid> (Tag Id)

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Update Tag

path Parameters
tag_id
required
string <uuid> (Tag Id)
Request Body schema: application/json
required
Name (string) or Name (null) (Name)
Description (string) or Description (null) (Description)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Delete Tag

Delete a tag within the current workspace

path Parameters
tag_id
required
string <uuid> (Tag Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Guardrails

Define guardrails to ensure your agents operate within predefined boundaries. Guardrails help maintain consistency and safety in agent responses

List all existing guardrails

Responses

Response samples

Content type
application/json
{
  • "guardrails": [
    ]
}

Create a new guardrail

Request Body schema: application/json
required
type
required
string (Type)
Value: "action"
instruction
required
string (Instruction)
agent_id
required
string <uuid> (Agent Id)

Responses

Request samples

Content type
application/json
{
  • "type": "action",
  • "instruction": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978"
}

Response samples

Content type
application/json
{
  • "type": "string",
  • "instruction": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Get a specific guardrail by ID

path Parameters
guardrail_id
required
string <uuid> (Guardrail Id)

Responses

Response samples

Content type
application/json
{
  • "guardrails": [
    ]
}

Update an existing guardrail

path Parameters
guardrail_id
required
string <uuid> (Guardrail Id)
Request Body schema: application/json
required
"action" (string) or Type (null) (Type)
Instruction (string) or Instruction (null) (Instruction)

Responses

Request samples

Content type
application/json
{
  • "type": "action",
  • "instruction": "string"
}

Response samples

Content type
application/json
{
  • "type": "string",
  • "instruction": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Delete a guardrail

path Parameters
guardrail_id
required
string <uuid> (Guardrail Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

List all guardrails for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
{
  • "guardrails": [
    ]
}

State Predicate

Configure and manage what your agent can do given the information it has so far. State predicates also indicate the agent which information to ask the user

Get State Predicate

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
{
  • "state_predicate": {
    }
}

Update State Predicate

path Parameters
agent_id
required
string <uuid> (Agent Id)
Request Body schema: application/json
required
required
EndStateNode (object) or GoToNextStateNode (object) or BranchingStateNode (object) or State Predicate (null) (State Predicate)
Any of
question_to_evaluate
required
string (Question To Evaluate)
re_evaluate
boolean (Re Evaluate)
Default: false
transition_kind
string (Transition Kind)
Default: "end"
Enum: "branch" "go_to_next" "end"
Evaluated Value (string) or Evaluated Value (null) (Evaluated Value)
AIInstructions (object) or null

Responses

Request samples

Content type
application/json
{
  • "state_predicate": {
    }
}

Response samples

Content type
application/json
{
  • "state_predicate": {
    }
}

QAndA Tag

Create and manage relationships between QAndAs and tags.

List all QAndA-tag relationships in the workspace

Retrieve all QAndA-tag relationships in the current workspace.

Args: pg_session: Database session dependency request: FastAPI request object for workspace context

Returns: dict: Dictionary containing a list of all QAndA-tag relationships

Responses

Response samples

Content type
application/json
null

Create a new QAndA-tag relationship

Request Body schema: application/json
required
q_and_a_id
required
string <uuid> (Q And A Id)
tag_id
required
string <uuid> (Tag Id)

Responses

Request samples

Content type
application/json
{
  • "q_and_a_id": "7b12c5f7-63cf-4067-b620-d45366617b58",
  • "tag_id": "39c8a0b3-fbe8-4801-95bf-e8a0792edf1d"
}

Response samples

Content type
application/json
{
  • "q_and_a_id": "7b12c5f7-63cf-4067-b620-d45366617b58",
  • "tag_id": "39c8a0b3-fbe8-4801-95bf-e8a0792edf1d",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

List all tags for a specific QAndA

Retrieve all tags associated with a specific QAndA.

Args: q_and_a_id: UUID of the QAndA pg_session: Database session dependency request: FastAPI request object for workspace context

Returns: dict: Dictionary containing a list of tags for the specified QAndA

Raises: HTTPException: 404 if the QAndA is not found or not accessible

path Parameters
q_and_a_id
required
string <uuid> (Q And A Id)

Responses

Response samples

Content type
application/json
null

List all QAndAs for a specific tag

Retrieve all QAndAs associated with a specific tag.

Args: tag_id: UUID of the tag pg_session: Database session dependency request: FastAPI request object for workspace context

Returns: dict: Dictionary containing a list of QAndAs for the specified tag

Raises: HTTPException: 404 if the tag is not found or not accessible

path Parameters
tag_id
required
string <uuid> (Tag Id)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete an QAndA-tag relationship by ID

path Parameters
q_and_a_tag_id
required
string <uuid> (Q And A Tag Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Delete an QAndA-tag relationship by QAndA and tag IDs

path Parameters
q_and_a_id
required
string <uuid> (Q And A Id)
tag_id
required
string <uuid> (Tag Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Chat

The route your users user to interact with your agents. Send messages to an agent and receive a response based on their configuration and knowledge base

Send a message to an agent and gets the response

path Parameters
agent_uuid
required
string <uuid> (Agent Uuid)
Request Body schema: application/json
required
conversation_uuid
required
string <uuid> (Conversation Uuid)
user_message
required
string (User Message)

Responses

Request samples

Content type
application/json
{
  • "conversation_uuid": "f81f7689-2025-4406-9d8e-9f897908652d",
  • "user_message": "string"
}

Response samples

Content type
application/json
{
  • "answer": "string"
}

Get list of chat runs/conversations

Get a list of all chat runs/conversations.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get chat runs for a specific agent

Get a list of chat runs/conversations for a specific agent.

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get detailed chat run data

Get detailed information about a specific chat run including messages and steps.

path Parameters
run_id
required
string (Run Id)

Responses

Response samples

Content type
application/json
null

Get chat messages for a run

Get all chat messages for a specific run.

path Parameters
run_id
required
string (Run Id)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Langchain

Endpoints that can be used to replace LLM calls in Langchain

[experimental] Integration of Langchain and LangGraph. Enable seamless use of Rippletide instead of a LLM

header Parameters
x-rippletide-agent-id
required
string <uuid> (X-Rippletide-Agent-Id)
x-rippletide-conversation-id
required
string <uuid> (X-Rippletide-Conversation-Id)
Request Body schema: application/json
required
required
Array of objects (Messages)
Array
content
required
string (Content)
role
required
string (Role)

Responses

Request samples

Content type
application/json
{
  • "messages": [
    ]
}

Response samples

Content type
application/json
null

Action

Create and manage actions that your agents can perform.

Get a specific action by ID

path Parameters
action_id
required
string <uuid> (Action Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "description": "string",
  • "what_to_do": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Update an existing action

path Parameters
action_id
required
string <uuid> (Action Id)
Request Body schema: application/json
required
Name (string) or Name (null) (Name)
Description (string) or Description (null) (Description)
What To Do (string) or What To Do (null) (What To Do)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "what_to_do": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "description": "string",
  • "what_to_do": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Delete a action

path Parameters
action_id
required
string <uuid> (Action Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

List all actions for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
{
  • "actions": [
    ]
}

Create a new action

Request Body schema: application/json
required
name
required
string (Name)
description
required
string (Description)
what_to_do
required
string (What To Do)
agent_id
required
string <uuid> (Agent Id)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "what_to_do": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "description": "string",
  • "what_to_do": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z"
}

Evaluation

Create new evaluation of the agent

List Evaluations

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Evaluation

Request Body schema: application/json
required
agent_id
required
string <uuid> (Agent Id)
description
string (Description)
Default: ""

Responses

Request samples

Content type
application/json
{
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "description": ""
}

Response samples

Content type
application/json
{
  • "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
  • "description": "",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "postgoux_workspace_id": "string"
}

Evaluation Questions

Manage question to evaluate an agent

Create Question

Request Body schema: application/json
required
question
required
string (Question)
expected_answer
required
string (Expected Answer)
evaluation_id
required
string <uuid> (Evaluation Id)

Responses

Request samples

Content type
application/json
{
  • "question": "string",
  • "expected_answer": "string",
  • "evaluation_id": "4108ec8e-6efd-4b9b-bace-0bb4c296c324"
}

Response samples

Content type
application/json
{
  • "question": "string",
  • "expected_answer": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "evaluation_id": "4108ec8e-6efd-4b9b-bace-0bb4c296c324"
}

List Questions

query Parameters
evaluation_id
string <uuid> (Evaluation Id)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Question

path Parameters
question_id
required
string <uuid> (Question Id)
Request Body schema: application/json
required
question
required
string (Question)
expected_answer
required
string (Expected Answer)

Responses

Request samples

Content type
application/json
{
  • "question": "string",
  • "expected_answer": "string"
}

Response samples

Content type
application/json
{
  • "question": "string",
  • "expected_answer": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "evaluation_id": "4108ec8e-6efd-4b9b-bace-0bb4c296c324"
}

Auto Generate Questions

Request Body schema: application/json
required
evaluation_id
required
string <uuid> (Evaluation Id)

Responses

Request samples

Content type
application/json
{
  • "evaluation_id": "4108ec8e-6efd-4b9b-bace-0bb4c296c324"
}

Response samples

Content type
application/json
{
  • "questions": [
    ]
}

Evaluation Executions

Run one agent evaluation and look at results

List Executions

query Parameters
evaluation_id
string <uuid> (Evaluation Id)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Execution

query Parameters
Limit (integer) or Limit (null) (Limit)
Retry (integer) or Retry (null) (Retry)
Request Body schema: application/json
required
evaluation_id
required
string <uuid> (Evaluation Id)
agent_kind
string (Agent Kind)
Default: "rippletide"
Enum: "rippletide" "http"
ExecutionHttpAgentArgument (object) or null

Responses

Request samples

Content type
application/json
{
  • "evaluation_id": "4108ec8e-6efd-4b9b-bace-0bb4c296c324",
  • "agent_kind": "rippletide",
  • "agent_arguments": {
    }
}

Response samples

Content type
application/json
{
  • "evaluation_execution": {
    },
  • "evaluation_results": [
    ]
}

Get Execution Results

path Parameters
execution_id
required
string <uuid> (Execution Id)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Execution Metrics

path Parameters
execution_id
required
string <uuid> (Execution Id)

Responses

Response samples

Content type
application/json
null

Eval Hallucination

Send a message to an agent and gets the response

path Parameters
agent_uuid
required
string <uuid> (Agent Uuid)
Request Body schema: application/json
required
conversation_uuid
required
string <uuid> (Conversation Uuid)
user_message
required
string (User Message)

Responses

Request samples

Content type
application/json
{
  • "conversation_uuid": "f81f7689-2025-4406-9d8e-9f897908652d",
  • "user_message": "string"
}

Response samples

Content type
application/json
{
  • "answer": "string"
}

tool-call-bindings

Add Guardrail Variable

Add guardrail variable for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
null

Get Guardrail Variable

Get guardrail variable for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
null

Add Format Answer

Add format answer for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
null

Get Format Answer

Get format answer for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
null

Get Tool Calls For Agent

Get all tool calls for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
null

Delete all tool calls for an agent

Delete all tool calls for a specific agent

path Parameters
agent_id
required
string <uuid> (Agent Id)

Responses

Response samples

Content type
application/json
null

Add Tool Call

header Parameters
x-rippletide-agent-id
required
string <uuid> (X-Rippletide-Agent-Id)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
null

Test Tool

Proxy endpoint to test tool API calls server-side to avoid CORS issues.

Expected request body: { "url": "https://api.example.com/endpoint", "method": "GET", "headers": {"x-api-key": "..."}, "body": {"param": "value"} # Will be converted to query params for GET }

Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
null