latestOpenAPI 3.0.0Apache 2.0raw.githubusercontent.com2025-10-165266542.4 MB

cb3bf9b21459

DigitalOcean-public.v2-new_GradientAI Platform

Add Function Route to an Agent

To create a function route for an agent, send a POST request to /v2/gen-ai/agents/{agent_uuid}/functions.

post/v2/gen-ai/agents/{agent_uuid}/functions

Path parameters

agent_uuidstring required

Agent id

Request body

agent_uuidstring

Agent id

descriptionstring

Function description

faas_namestring

The name of the function in the DigitalOcean functions platform

faas_namespacestring

The namespace of the function in the DigitalOcean functions platform

function_namestring

Function name

input_schemaobject

Describe the input schema for the function so the agent may call it

output_schemaobject

Describe the output schema for the function so the agent handle its response

Example request

{
  "agent_uuid": "\"12345678-1234-1234-1234-123456789012\"",
  "description": "\"My Function Description\"",
  "faas_name": "\"my-function\"",
  "faas_namespace": "\"default\"",
  "function_name": "\"My Function\""
}

Response

A successful response.

Example response

{
  "agent": {
    "anthropic_api_key": {
      "created_at": "2023-01-01T00:00:00Z",
      "created_by": "12345",
      "deleted_at": "2023-01-01T00:00:00Z",
      "name": "example name",
      "updated_at": "2023-01-01T00:00:00Z",
      "uuid": "123e4567-e89b-12d3-a456-426614174000"
    },
    "api_key_infos": [
      {
        "created_at": "2023-01-01T00:00:00Z",
        "created_by": "12345",
        "deleted_at": "2023-01-01T00:00:00Z",
        "name": "example name",
        "secret_key": "example string",
        "uuid": "123e4567-e89b-12d3-a456-426614174000"
      }
    ],
    "api_keys": [
      {
        "api_key": "example string"
      }
    ],
    "chatbot": {
      "button_background_color": "example string",
      "logo": "example string",
      "name": "example name",
      "primary_color": "example string",
      "secondary_color": "example string",
      "starting_message": "example string"
    },
    "chatbot_identifiers": [
      {
        "agent_chatbot_identifier": "123e4567-e89b-12d3-a456-426614174000"
      }
    ],
    "conversation_logs_enabled": true,
    "created_at": "2023-01-01T00:00:00Z",
    "deployment": {
      "created_at": "2023-01-01T00:00:00Z",
      "name": "example name",
      "status": "STATUS_UNKNOWN",
      "updated_at": "2023-01-01T00:00:00Z",
      "url": "example string",
      "uuid": "123e4567-e89b-12d3-a456-426614174000",
      "visibility": "VISIBILITY_UNKNOWN"
    },
    "description": "example string",
    "functions": [
      {
        "api_key": "example string",
        "created_at": "2023-01-01T00:00:00Z",
        "created_by": "12345",
        "description": "example string",
        "faas_name": "example name",
        "faas_namespace": "example name",
        "name": "example name",
        "updated_at": "2023-01-01T00:00:00Z",
        "url": "example string",
        "uuid": "123e4567-e89b-12d3-a456-426614174000"
      }
    ],
    "guardrails": [
      {
        "agent_uuid": "123e4567-e89b-12d3-a456-426614174000",
        "created_at": "2023-01-01T00:00:00Z",
        "default_response": "example string",
        "description": "example string",
        "guardrail_uuid": "123e4567-e89b-12d3-a456-426614174000",
        "is_attached": true,
        "is_default": true,
        "name": "example name",
        "priority": 123,
        "type": "GUARDRAIL_TYPE_UNKNOWN",
        "updated_at": "2023-01-01T00:00:00Z",
        "uuid": "123e4567-e89b-12d3-a456-426614174000"
      }
    ],
    "if_case": "example string",
    "instruction": "example string",
    "k": 123,
    "knowledge_bases": [
      {
        "added_to_agent_at": "2023-01-01T00:00:00Z",
        "created_at": "2023-01-01T00:00:00Z",
        "database_id": "123e4567-e89b-12d3-a456-426614174000",
        "embedding_model_uuid": "123e4567-e89b-12d3-a456-426614174000",
        "is_public": true,
        "last_indexing_job": {
          "completed_datasources": 123,
          "created_at": "2023-01-01T00:00:00Z",
          "data_source_uuids": [
            "example string"
          ],
          "finished_at": "2023-01-01T00:00:00Z",
          "knowledge_base_uuid": "123e4567-e89b-12d3-a456-426614174000",
          "phase": "BATCH_JOB_PHASE_UNKNOWN",
          "started_at": "2023-01-01T00:00:00Z",
          "status": "INDEX_JOB_STATUS_UNKNOWN",
          "tokens": 123,
          "total_datasources": 123,
          "total_items_failed": "12345",
          "total_items_indexed": "12345",
          "total_items_skipped": "12345",
          "updated_at": "2023-01-01T00:00:00Z",
          "uuid": "123e4567-e89b-12d3-a456-426614174000"
        },
        "name": "example name",
        "project_id": "123e4567-e89b-12d3-a456-426614174000",
        "region": "example string",
        "tags": [
          "example string"
        ],
        "updated_at": "2023-01-01T00:00:00Z",
        "user_id": "12345",
        "uuid": "123e4567-e89b-12d3-a456-426614174000"
      }
    ],
    "logging_config": {
      "galileo_project_id": "123e4567-e89b-12d3-a456-426614174000",
      "galileo_project_name": "example name",
      "insights_enabled": true,
      "insights_enabled_at": "2023-01-01T00:00:00Z",
      "log_stream_id": "123e4567-e89b-12d3-a456-426614174000",
      "log_stream_name": "example name"
    },
    "max_tokens": 123,
    "model": {
      "agreement": {
        "description": "example string",
        "name": "example name",
        "url": "example string",
        "uuid": "123e4567-e89b-12d3-a456-426614174000"
      },
      "created_at": "2023-01-01T00:00:00Z",
      "inference_name": "example name",
      "inference_version": "example string",
      "is_foundational": true,
      "name": "example name",
      "parent_uuid": "123e4567-e89b-12d3-a456-426614174000",
      "provider": "MODEL_PROVIDER_DIGITALOCEAN",
      "updated_at": "2023-01-01T00:00:00Z",
      "upload_complete": true,
      "url": "example string",
      "usecases": [
        "MODEL_USECASE_AGENT",
        "MODEL_USECASE_GUARDRAIL"
      ],
      "uuid": "123e4567-e89b-12d3-a456-426614174000",
      "version": {
        "major": 123,
        "minor": 123,
        "patch": 123
      }
    },
    "name": "example name",
    "openai_api_key": {
      "created_at": "2023-01-01T00:00:00Z",
      "created_by": "12345",
      "deleted_at": "2023-01-01T00:00:00Z",
      "models": [
        {
          "agreement": {
            "description": "example string",
            "name": "example name",
            "url": "example string",
            "uuid": "123e4567-e89b-12d3-a456-426614174000"
          },
          "created_at": "2023-01-01T00:00:00Z",
          "inference_name": "example name",
          "inference_version": "example string",
          "is_foundational": true,
          "name": "example name",
          "parent_uuid": "123e4567-e89b-12d3-a456-426614174000",
          "provider": "MODEL_PROVIDER_DIGITALOCEAN",
          "updated_at": "2023-01-01T00:00:00Z",
          "upload_complete": true,
          "url": "example string",
          "usecases": [
            "MODEL_USECASE_AGENT",
            "MODEL_USECASE_GUARDRAIL"
          ],
          "uuid": "123e4567-e89b-12d3-a456-426614174000",
          "version": {
            "major": 123,
            "minor": 123,
            "patch": 123
          }
        }
      ],
      "name": "example name",
      "updated_at": "2023-01-01T00:00:00Z",
      "uuid": "123e4567-e89b-12d3-a456-426614174000"
    },
    "project_id": "123e4567-e89b-12d3-a456-426614174000",
    "provide_citations": true,
    "region": "example string",
    "retrieval_method": "RETRIEVAL_METHOD_UNKNOWN",
    "route_created_at": "2023-01-01T00:00:00Z",
    "route_created_by": "12345",
    "route_name": "example name",
    "route_uuid": "123e4567-e89b-12d3-a456-426614174000",
    "tags": [
      "example string"
    ],
    "temperature": 123,
    "template": {
      "created_at": "2023-01-01T00:00:00Z",
      "description": "example string",
      "guardrails": [
        {
          "priority": 123,
          "uuid": "123e4567-e89b-12d3-a456-426614174000"
        }
      ],
      "instruction": "example string",
      "k": 123,
      "knowledge_bases": [
        {
          "added_to_agent_at": "2023-01-01T00:00:00Z",
          "created_at": "2023-01-01T00:00:00Z",
          "database_id": "123e4567-e89b-12d3-a456-426614174000",
          "embedding_model_uuid": "123e4567-e89b-12d3-a456-426614174000",
          "is_public": true,
          "last_indexing_job": {
            "completed_datasources": 123,
            "created_at": "2023-01-01T00:00:00Z",
            "data_source_uuids": [
              "example string"
            ],
            "finished_at": "2023-01-01T00:00:00Z",
            "knowledge_base_uuid": "123e4567-e89b-12d3-a456-426614174000",
            "phase": "BATCH_JOB_PHASE_UNKNOWN",
            "started_at": "2023-01-01T00:00:00Z",
            "status": "INDEX_JOB_STATUS_UNKNOWN",
            "tokens": 123,
            "total_datasources": 123,
            "total_items_failed": "12345",
            "total_items_indexed": "12345",
            "total_items_skipped": "12345",
            "updated_at": "2023-01-01T00:00:00Z",
            "uuid": "123e4567-e89b-12d3-a456-426614174000"
          },
          "name": "example name",
          "project_id": "123e4567-e89b-12d3-a456-426614174000",
          "region": "example string",
          "tags": [
            "example string"
          ],
          "updated_at": "2023-01-01T00:00:00Z",
          "user_id": "12345",
          "uuid": "123e4567-e89b-12d3-a456-426614174000"
        }
      ],
      "long_description": "\"Enhance your customer service with an AI agent designed to provide consistent, helpful, and accurate support across multiple channels. This template creates an agent that can answer product questions, troubleshoot common issues, process simple requests, and maintain a friendly, on-brand voice throughout customer interactions. Reduce response times, handle routine inquiries efficiently, and ensure your customers feel heard and helped.\"",
      "max_tokens": 123,
      "model": {
        "agreement": {
          "description": "example string",
          "name": "example name",
          "url": "example string",
          "uuid": "123e4567-e89b-12d3-a456-426614174000"
        },
        "created_at": "2023-01-01T00:00:00Z",
        "inference_name": "example name",
        "inference_version": "example string",
        "is_foundational": true,
        "name": "example name",
        "parent_uuid": "123e4567-e89b-12d3-a456-426614174000",
        "provider": "MODEL_PROVIDER_DIGITALOCEAN",
        "updated_at": "2023-01-01T00:00:00Z",
        "upload_complete": true,
        "url": "example string",
        "usecases": [
          "MODEL_USECASE_AGENT",
          "MODEL_USECASE_GUARDRAIL"
        ],
        "uuid": "123e4567-e89b-12d3-a456-426614174000",
        "version": {
          "major": 123,
          "minor": 123,
          "patch": 123
        }
      },
      "name": "example name",
      "short_description": "\"This template has been designed with question-answer and conversational use cases in mind. It comes with validated agent instructions, fine-tuned model settings, and preconfigured guardrails defined for customer support-related use cases.\"",
      "summary": "example string",
      "tags": [
        "example string"
      ],
      "temperature": 123,
      "template_type": "AGENT_TEMPLATE_TYPE_STANDARD",
      "top_p": 123,
      "updated_at": "2023-01-01T00:00:00Z",
      "uuid": "123e4567-e89b-12d3-a456-426614174000"
    },
    "top_p": 123,
    "updated_at": "2023-01-01T00:00:00Z",
    "url": "example string",
    "user_id": "12345",
    "uuid": "123e4567-e89b-12d3-a456-426614174000",
    "version_hash": "example string",
    "workspace": {
      "created_at": "2023-01-01T00:00:00Z",
      "created_by": "12345",
      "created_by_email": "example@example.com",
      "deleted_at": "2023-01-01T00:00:00Z",
      "description": "example string",
      "evaluation_test_cases": [
        {
          "archived_at": "2023-01-01T00:00:00Z",
          "created_at": "2023-01-01T00:00:00Z",
          "created_by_user_email": "example@example.com",
          "created_by_user_id": "12345",
          "dataset": {
            "created_at": "2023-01-01T00:00:00Z",
            "dataset_name": "example name",
            "dataset_uuid": "123e4567-e89b-12d3-a456-426614174000",
            "file_size": "12345",
            "has_ground_truth": true,
            "row_count": 123
          },
          "dataset_name": "example name",
          "dataset_uuid": "123e4567-e89b-12d3-a456-426614174000",
          "description": "example string",
          "latest_version_number_of_runs": 123,
          "metrics": [
            {
              "description": "example string",
              "inverted": true,
              "metric_name": "example name",
              "metric_type": "METRIC_TYPE_UNSPECIFIED",
              "metric_uuid": "123e4567-e89b-12d3-a456-426614174000",
              "metric_value_type": "METRIC_VALUE_TYPE_UNSPECIFIED",
              "range_max": 123,
              "range_min": 123
            }
          ],
          "name": "example name",
          "star_metric": {
            "metric_uuid": "123e4567-e89b-12d3-a456-426614174000",
            "name": "example name",
            "success_threshold": 123,
            "success_threshold_pct": 123
          },
          "test_case_uuid": "123e4567-e89b-12d3-a456-426614174000",
          "total_runs": 123,
          "updated_at": "2023-01-01T00:00:00Z",
          "updated_by_user_email": "example@example.com",
          "updated_by_user_id": "12345",
          "version": 123
        }
      ],
      "name": "example name",
      "updated_at": "2023-01-01T00:00:00Z",
      "uuid": "123e4567-e89b-12d3-a456-426614174000"
    }
  }
}