AI Engine Functions API
Most of the endpoints depends on various instances and are considered parameters for the actual endpoint, but these are not meant to be passed directly by the user.
Instead, these instance-dependent elements are integrated and managed directly by the backend system. We refer to them as *name_parameter
, where the asterisk (*) is used to denote a specific instance-dependent parameter that the route relies on.
Mind that: to access these APIs, user must be authenticated and have the correct permissions.
Overview
The AI Engine Functions API allows you to interact with the DeltaV backend, allowing you to interact with your functions and more.
EndpointsPOST /v1beta1/functions/ GET /v1beta1/functions/ GET /v1beta1/functions/agent-functions/:agent_address/ GET /v1beta1/functions/:function_id/ PUT /v1beta1/functions/:function_id/ POST /v1beta1/functions/duplicate/:function_id/ DELETE /v1beta1/functions/:function_id/ PUT /v1beta1/functions/start-testing/:function_id/ PUT /v1beta1/functions/submit-for-review/:function_id/ PUT /v1beta1/functions/unpublish/:function_id/ PUT /v1beta1/functions/add-to-function-group/:function_id/:function_group_id/ DELETE /v1beta1/functions/remove-from-function-group/:function_id/:function_group_id/ GET /v1beta1/functions/:function_id/groups/ DELETE /v1beta1/functions/delete-functions-of-agent/:agent_address/ DELETE /v1beta1/functions/user/delete-all-functions/
Create a function
Endpoint:POST
/v1beta1/functions/Request
Create a new function for a user authenticated through JWT.
- Name
agent
- Type
- string
- Description
- Address of agent.
- Name
name
- Type
- string
- Description
- Name of function.
- Name
description
- Type
- string
- Description
- Description of function.
- Name
protocolDigest
- Type
- string
- Description
- Digest of protocol associated with the agent.
- Name
modelDigest
- Type
- string
- Description
- Digest of model associated with the protocol.
- Name
modelName
- Type
- string
- Description
- Request model name and protocol name separated by a slash character.
- Name
arguments
- Type
- JSON
- Description
- List of all request model arguments, including name, required status (true/false), type, and description.
- Name
type
- Type
- string
- Description
- Type of the function. Can be PRIMARY or SECONDARY.
- Name
isDialogue
- Type
- boolean
- Required
- optional
- Description
- Default is true. Denotes if the registered function is dialogue or not.
- Name
metadata_properties
- Type
- JSON
- Required
- optional
- Description
- Optional JSON object to add metadata, currently supporting geo-location in the format: {"geo_location":{"location":{"lat":${lat},"lon":${lon}},"radius":${radius}}}.
- Name
metadata-geo-location-lat.
- Type
- float
- Description
- Latitude related to the function.
- Name
metadata-geo_location-location-lon
- Type
- float
- Description
- Longitude related to the function.
- Name
metadata-geo_location-radius
- Type
- float
- Required
- optional
- Description
- Optional radius related to the function.
Responses
Returns the newly created function object.
Get all functions for a user
Endpoint:GET
/v1beta1/functions/Request
Retrieves all functions of a user authenticated through JWT.
Responses
Returns a list of function summary objects associated with the user.
Get all user's Agent functions
Endpoint:GET
/v1beta1/functions/agents-functions/{agent_address}/Request
Retrieves all user's functions of an agent.
- Name
agent_address
- Type
- string
- Required
- required
- Description
- The unique address of the agent whose associated functions are being requested.
- Name
limit
- Type
- int
- Required
- optional
- Description
- The number of functions to return.
- Name
offset
- Type
- int
- Required
- optional
- Description
- The number of functions to skip.
Responses
Returns a list of function summary objects associated with the user.
Fetch a function
Endpoint:GET
/v1beta1/functions/{function_id}/Request
Fetches a specific function (identified by the function_id) of a user authenticated through JWT.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function whose details are being requested.
Responses
Returns a function object identified by a specific function_id.
Update a function
Endpoint:PUT
/v1beta1/functions/{function_id}/Request
Update any properties of a function (identified by the function_id) of a user (authenticated through JWT).
- Name
agent
- Type
- Optional[string]
- Description
- Optional - Address of agent.
- Name
name
- Type
- Optional[string]
- Description
- Optional - Name of function.
- Name
description
- Type
- Optional[string]
- Description
- Optional - Description of function.
- Name
protocolDigest
- Type
- Optional[string]
- Description
- Optional - Digest of protocol associated with the agent.
- Name
modelDigest
- Type
- Optional[string]
- Description
- Optional - Digest of model associated with the protocol.
- Name
modelName
- Type
- Optional[string]
- Description
- Optional - Request model name and protocol name separated by a slash character.
- Name
arguments
- Type
- Optional[[]JSON]
- Description
- Optional - List of all request model arguments, including name, required status (true/false), type, and description.
- Name
type
- Type
- Optional[string]
- Description
- Optional - Type of the function. Can be PRIMARY or SECONDARY.
- Name
isDialogue
- Type
- boolean
- Required
- optional
- Description
- Default is false. Denotes if the registered function is dialogue or not.
- Name
metadata_properties
- Type
- JSON
- Required
- optional
- Description
- Optional JSON object to add metadata, currently supporting geo-location data in the structure: {"geo_location":{"location":{"lat":${lat},"lon":${lon}},"radius":${radius}}}.
Responses
Returns the updated function object identified by a specific function_id.
Duplicate a function
Endpoint:POST
/v1beta1/functions/duplicate/{function_id}/Request
Duplicate a specific function (identified by the function_id) of a user authenticated through JWT.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function to be duplicated.
Responses
Returns a function (identified by function_id) which is a duplicate of the function.
Delete a function
Endpoint:DELETE
/v1beta1/functions/{function_id}/Request
Delete a specific function (identified by the function_id) of a user authenticated through JWT.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function to be deleted.
Responses
Returns an empty JSON object.
Start testing of a function
Endpoint:PUT
/v1beta1/functions/start-testing/{function_id}/Request
Start testing a specific function (identified by the function_id) of a user authenticated through JWT.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function to start the testing process for. This parameter specifies which function is being tested.
Responses
Returns the function object (identified by function_id) that we have just started to test.
Submit a function for review
Endpoint:PUT
/v1beta1/functions/submit-for-review/{function_id}/Request
Submit a specific function (identified by the function_id) of a user (authenticated through JWT) for review.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function to be submitted for review.
Responses
Returns the function object (identified by function_id) that has just been submitted for review.
Unpublish a function
Endpoint:PUT
/v1beta1/functions/unpublish/{function_id}/Request
Unpublish a specific function (identified by the function_id) of a user authenticated through JWT.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function to be unpublished.
Responses
Returns the function object (identified by function_id) that we have just unpublished.
Add function to function group
Endpoint:PUT
/v1beta1/functions/add-to-function-group/{function_id}/{function_group_id}/Request
Add a function to a function group.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function to be added to the group. This parameter specifies which function will be associated with the group.
- Name
function_group_id
- Type
- string
- Required
- required
- Description
- he unique identifier of the function group to which the function will be added. This parameter specifies the target group for association.
Responses
Returns a JSON object containing the function and function group id.
Remove function from function group
Endpoint:DELETE
/v1beta1/functions/remove-from-function-group/{function_id}/{function_group_id}/Request
Remove a function from a function group.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function to be removed from the group. This value specifies the function to target.
- Name
function_group_id
- Type
- string
- Required
- required
- Description
- The unique identifier of the function group from which the function is to be removed. This value identifies the target group.
Responses
Returns an empty JSON object.__
Fetch all function groups that the function belongs to
Endpoint:GET
/v1beta1/functions/{function_id}/groups/Request
Fetches all functions groups that the function is assigned to.
- Name
function_id
- Type
- string
- Required
- required
- Description
- The unique identifier for the function whose associated groups are being fetched. This value is required to specify the function in the system and retrieve all groups it belongs to.
Responses
Returns all function groups that the function (identified by a specific function_id) belongs to.
Delete all user's agent functions
Endpoint:DELETE
/v1beta1/functions/delete-functions-of-agent/{agent_address}/Request
Delete all functions of an agent.
- Name
agent_address
- Type
- string
- Required
- required
- Description
- The unique address of the agent whose functions are to be deleted.
Responses
Returns an empty JSON object.
Delete all user's functions
Endpoint:DELETE
/v1beta1/functions/user/delete-all-functions/Request
Delete all functions of a user.
Responses
Returns an empty JSON object.