Skip to main content
POST
/
v0
/
tasks
Create a new task
curl --request POST \
  --url https://api.avidoai.com/v0/tasks \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --header 'x-application-id: <api-key>' \
  --data '{
  "title": "Credit Card Block",
  "description": "The user wants to block their credit card",
  "type": "ADVERSARY",
  "topicId": "789e4567-e89b-12d3-a456-426614174000",
  "metadata": {
    "customerId": "1",
    "priority": "high"
  },
  "simulatedPromptSchema": {
    "type": "object",
    "properties": {
      "intent": {
        "type": "string"
      },
      "urgency": {
        "type": "string",
        "enum": [
          "low",
          "medium",
          "high"
        ]
      }
    },
    "required": [
      "intent"
    ]
  }
}'
{
  "task": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "createdAt": "2024-01-05T12:34:56.789Z",
    "modifiedAt": "2024-01-05T12:34:56.789Z",
    "title": "Credit Card Block",
    "description": "Wants to block their credit card",
    "type": "ADVERSARY",
    "passRate": 66,
    "lastTest": "2024-01-01T00:00:00.000Z",
    "inputExamples": [
      "I want to block my credit card"
    ],
    "evalDefinitions": [
      {
        "evalDefinition": {
          "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "createdAt": "2024-01-05T12:34:56.789Z",
          "modifiedAt": "2024-01-05T12:34:56.789Z",
          "type": "NATURALNESS",
          "name": "<string>",
          "globalConfig": {
            "criterion": "<string>"
          },
          "styleGuideId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
          "application": {
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "orgId": "org_123456",
            "title": "Customer Support Bot",
            "slug": "customer-support-bot",
            "description": "AI assistant for customer support inquiries",
            "context": "You are a helpful customer support assistant...",
            "language": "en",
            "type": "CHATBOT",
            "environment": "DEV",
            "createdAt": "2024-01-05T12:34:56.789Z",
            "modifiedAt": "2024-01-05T12:34:56.789Z"
          }
        },
        "config": {
          "expected": "<string>"
        }
      }
    ],
    "metadata": {
      "customerId": "1",
      "priority": "high"
    },
    "simulatedPromptSchema": {
      "type": "object",
      "properties": {
        "intent": {
          "type": "string"
        },
        "urgency": {
          "type": "string",
          "enum": [
            "low",
            "medium",
            "high"
          ]
        }
      },
      "required": [
        "intent"
      ]
    },
    "taskSchedule": {
      "taskId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "criticality": "LOW",
      "cron": "<string>",
      "nextRunAt": "2023-11-07T05:31:56Z",
      "lastRunAt": "2023-11-07T05:31:56Z"
    },
    "topicId": "789e4567-e89b-12d3-a456-426614174000"
  }
}

Authorizations

x-api-key
string
header
required

Your unique Avido API key

x-application-id
string
header
required

Your unique Avido Application ID

Body

application/json

Request body for creating a new task

title
string
required

The title of the task

Minimum length: 1
Example:

"Credit Card Block"

description
string
required

A short description of the task

Minimum length: 1
Example:

"The user wants to block their credit card"

type
enum<string>
default:NORMAL

The type of task

Available options:
ADVERSARY,
NORMAL
Example:

"ADVERSARY"

topicId
string<uuid>

ID of the topic this task belongs to

Example:

"789e4567-e89b-12d3-a456-426614174000"

metadata
object

Optional metadata to associate with the task when creating it (e.g., external identifiers).

Example:
{ "customerId": "1", "priority": "high" }
simulatedPromptSchema
object

JSON schema that defines the structure for user prompts that should be generated for tests

Example:
{
"type": "object",
"properties": {
"intent": { "type": "string" },
"urgency": {
"type": "string",
"enum": ["low", "medium", "high"]
}
},
"required": ["intent"]
}

Response

Successfully created task

Successful response containing the task data

task
object
required

A task that represents a specific job-to-be-done by the LLM in the user application.