DigitalOcean-public.v2-new_GradientAI Platform

Update Function Route for an Agent

To update the function route, send a PUT request to /v2/gen-ai/agents/{agent_uuid}/functions/{function_uuid}.

put/v2/gen-ai/agents/{agent_uuid}/functions/{function_uuid}

Path parameters

agent_uuidstring required

Agent id

function_uuidstring required

Function id

Request body

agent_uuidstring

Agent id

descriptionstring

Funciton 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

function_uuidstring

Function id

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\"",
  "function_uuid": "\"12345678-1234-1234-1234-123456789012\""
}

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"
    }
  }
}

Changes

Changed in 6 of the 8 revisions of this API.11355

    • api tag DigitalOcean-public.v2-new_GradientAI Platform added

      api-tag-added

    • api tag GradientAI Platform removed

      api-tag-removed

    This revision also has 3 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • added the optional property agent/knowledge_bases/items/last_indexing_job/total_items_failed to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/knowledge_bases/items/last_indexing_job/total_items_indexed to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/knowledge_bases/items/last_indexing_job/total_items_skipped to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/logging_config/insights_enabled to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/logging_config/insights_enabled_at to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/template/knowledge_bases/items/last_indexing_job/total_items_failed to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/template/knowledge_bases/items/last_indexing_job/total_items_indexed to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/template/knowledge_bases/items/last_indexing_job/total_items_skipped to the response with the 200 status

      response-optional-property-added

  • f8e8c290636c117See the full diff
    • added the new METRIC_VALUE_TYPE_PERCENTAGE enum value to the agent/workspace/evaluation_test_cases/items/metrics/items/metric_value_type response property for the response status 200

      response-property-enum-value-added

    • api operation id update_agent_function removed and replaced with genai_update_agent_function

      api-operation-id-removed

    • the endpoint scheme security bearer_auth was added to the API

      api-security-added

    • api tag GradientAI Platform added

      api-tag-added

    • api tag GenAIAPI removed

      api-tag-removed

    • request body became optional

      request-body-became-optional

    • added the non-success response with the status 401

      response-non-success-status-added

    • added the non-success response with the status 404

      response-non-success-status-added

    • added the non-success response with the status 429

      response-non-success-status-added

    • added the non-success response with the status 500

      response-non-success-status-added

    • added the optional property agent/conversation_logs_enabled to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/logging_config to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/version_hash to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/dataset to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/metrics/items/inverted to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/metrics/items/range_max to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/metrics/items/range_min to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/star_metric/success_threshold to the response with the 200 status

      response-optional-property-added

    This revision also has 70 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • 5fc9af728e821119See the full diff
    • request body became required

      request-body-became-required

    • the optional response header ratelimit-limit removed for the status 200

      optional-response-header-removed

    • the optional response header ratelimit-remaining removed for the status 200

      optional-response-header-removed

    • the optional response header ratelimit-reset removed for the status 200

      optional-response-header-removed

    • removed the optional property agent/conversation_logs_enabled from the response with the 200 status

      response-optional-property-removed

    • removed the optional property agent/logging_config from the response with the 200 status

      response-optional-property-removed

    • removed the optional property agent/version_hash from the response with the 200 status

      response-optional-property-removed

    • removed the optional property agent/workspace/evaluation_test_cases/items/dataset from the response with the 200 status

      response-optional-property-removed

    • removed the optional property agent/workspace/evaluation_test_cases/items/metrics/items/inverted from the response with the 200 status

      response-optional-property-removed

    • removed the optional property agent/workspace/evaluation_test_cases/items/metrics/items/range_max from the response with the 200 status

      response-optional-property-removed

    • removed the optional property agent/workspace/evaluation_test_cases/items/metrics/items/range_min from the response with the 200 status

      response-optional-property-removed

    • removed the optional property agent/workspace/evaluation_test_cases/items/star_metric/success_threshold from the response with the 200 status

      response-optional-property-removed

    • api operation id genai_update_agent_function removed and replaced with update_agent_function

      api-operation-id-removed

    • the endpoint scheme security bearer_auth was removed from the API

      api-security-removed

    • api tag GenAIAPI added

      api-tag-added

    • api tag GradientAI Platform removed

      api-tag-removed

    • removed the non-success response with the status 401

      response-non-success-status-removed

    • removed the non-success response with the status 404

      response-non-success-status-removed

    • removed the non-success response with the status 429

      response-non-success-status-removed

    • removed the non-success response with the status 500

      response-non-success-status-removed

    • removed the METRIC_VALUE_TYPE_PERCENTAGE enum value from the agent/workspace/evaluation_test_cases/items/metrics/items/metric_value_type response property for the response status 200

      response-property-enum-value-removed

    This revision also has 436 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • f8e8c290636c117See the full diff
    • added the new METRIC_VALUE_TYPE_PERCENTAGE enum value to the agent/workspace/evaluation_test_cases/items/metrics/items/metric_value_type response property for the response status 200

      response-property-enum-value-added

    • api operation id update_agent_function removed and replaced with genai_update_agent_function

      api-operation-id-removed

    • the endpoint scheme security bearer_auth was added to the API

      api-security-added

    • api tag GradientAI Platform added

      api-tag-added

    • api tag GenAIAPI removed

      api-tag-removed

    • request body became optional

      request-body-became-optional

    • added the non-success response with the status 401

      response-non-success-status-added

    • added the non-success response with the status 404

      response-non-success-status-added

    • added the non-success response with the status 429

      response-non-success-status-added

    • added the non-success response with the status 500

      response-non-success-status-added

    • added the optional property agent/conversation_logs_enabled to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/logging_config to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/version_hash to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/dataset to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/metrics/items/inverted to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/metrics/items/range_max to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/metrics/items/range_min to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/workspace/evaluation_test_cases/items/star_metric/success_threshold to the response with the 200 status

      response-optional-property-added

    This revision also has 70 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • added the optional property agent/knowledge_bases/items/last_indexing_job/status to the response with the 200 status

      response-optional-property-added

    • added the optional property agent/template/knowledge_bases/items/last_indexing_job/status to the response with the 200 status

      response-optional-property-added