ArthurAI Tasks API

Endpoints to manage tasks and their rules

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/arthurai-tasks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

arthurai-tasks-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Arthur GenAI Engine Agent Discovery Tasks API
  version: 2.1.688
  description: Endpoints to manage tasks and their rules
tags:
- name: Tasks
  description: Endpoints to manage tasks and their rules
paths:
  /api/v2/tasks:
    get:
      tags:
      - Tasks
      summary: Get All Tasks
      description: '[Deprecated] Use /tasks/search endpoint. This endpoint will be removed in a future release.'
      operationId: get_all_tasks_api_v2_tasks_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TaskResponse'
                type: array
                title: Response Get All Tasks Api V2 Tasks Get
      deprecated: true
      security:
      - API Key: []
    post:
      tags:
      - Tasks
      summary: Create Task
      description: Register a new task. When a new task is created, all existing default rules will be auto-applied for this new task. Optionally specify if the task is agentic.
      operationId: create_task_api_v2_tasks_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewTaskRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - API Key: []
  /api/v2/tasks/{task_id}:
    delete:
      tags:
      - Tasks
      summary: Archive Task
      description: Archive task. Also archives all task-scoped rules. Associated default rules are unaffected.
      operationId: archive_task_api_v2_tasks__task_id__delete
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    get:
      tags:
      - Tasks
      summary: Get Task
      description: Get tasks.
      operationId: get_task_api_v2_tasks__task_id__get
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v2/tasks/{task_id}/unarchive:
    post:
      tags:
      - Tasks
      summary: Unarchive Task
      description: Unarchive a previously archived task. Also unarchives all task-scoped rules and metrics that were archived with it.
      operationId: unarchive_task_api_v2_tasks__task_id__unarchive_post
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v2/agent-tasks:
    get:
      tags:
      - Tasks
      summary: Get Agent Tasks
      description: Get agentic tasks with enriched agent metadata (tools, sub-agents, models). Returns only agentic tasks.
      operationId: get_agent_tasks_api_v2_agent_tasks_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/EnrichedTaskResponse'
                type: array
                title: Response Get Agent Tasks Api V2 Agent Tasks Get
      security:
      - API Key: []
  /api/v2/task:
    post:
      tags:
      - Tasks
      summary: Redirect To Tasks
      description: Redirect to /tasks endpoint.
      operationId: redirect_to_tasks_api_v2_task_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/v2/tasks/search:
    post:
      tags:
      - Tasks
      summary: Search Tasks
      description: Search tasks. Can filter by task IDs, task name substring, and agentic status.
      operationId: search_tasks_api_v2_tasks_search_post
      security:
      - API Key: []
      parameters:
      - name: sort
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/PaginationSortMethod'
          description: Sort the results (asc/desc)
          default: desc
        description: Sort the results (asc/desc)
      - name: page_size
        in: query
        required: false
        schema:
          type: integer
          description: Page size. Default is 10. Must be greater than 0 and less than 5000.
          default: 10
          title: Page Size
        description: Page size. Default is 10. Must be greater than 0 and less than 5000.
      - name: page
        in: query
        required: false
        schema:
          type: integer
          description: Page number
          default: 0
          title: Page
        description: Page number
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchTasksRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchTasksResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v2/tasks/{task_id}/rules:
    post:
      tags:
      - Tasks
      summary: Create Task Rule
      description: 'Create a rule to be applied only to this task. Available rule types are KeywordRule, ModelHallucinationRuleV2, ModelSensitiveDataRule, PIIDataRule, PromptInjectionRule, RegexRule, ToxicityRule.Note: The rules are cached by the validation endpoints for 60 seconds.'
      operationId: create_task_rule_api_v2_tasks__task_id__rules_post
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewRuleRequest'
            examples:
              example1:
                summary: Sensitive Data Example
                description: Sensitive Data Example with its required configuration
                value:
                  name: Sensitive Data Rule
                  type: ModelSensitiveDataRule
                  apply_to_prompt: true
                  apply_to_response: false
                  config:
                    examples:
                    - example: John has O negative blood group
                      result: true
                    - example: Most of the people have A positive blood group
                      result: false
                    hint: specific individual's blood types
              example2:
                summary: Regex Example
                description: Regex Example with its required configuration. Be sure to properly encode requests using JSON libraries. For example, the regex provided encodes to a different string when encoded to account for escape characters.
                value:
                  name: SSN Regex Rule
                  type: RegexRule
                  apply_to_prompt: true
                  apply_to_response: true
                  config:
                    regex_patterns:
                    - \d{3}-\d{2}-\d{4}
                    - \d{5}-\d{6}-\d{7}
              example3:
                summary: Keywords Rule Example
                description: Keywords Rule Example with its required configuration
                value:
                  name: Blocked Keywords Rule
                  type: KeywordRule
                  apply_to_prompt: true
                  apply_to_response: true
                  config:
                    keywords:
                    - Blocked_Keyword_1
                    - Blocked_Keyword_2
              example4:
                summary: Prompt Injection Rule Example
                description: Prompt Injection Rule Example, no configuration required
                value:
                  name: Prompt Injection Rule
                  type: PromptInjectionRule
                  apply_to_prompt: true
                  apply_to_response: false
              example5:
                summary: Hallucination Rule V1 Example (Deprecated)
                description: Hallucination Rule Example, no configuration required (This rule is deprecated. Use ModelHallucinationRuleV2 instead.)
                value:
                  name: Hallucination Rule
                  type: ModelHallucinationRule
                  apply_to_prompt: false
                  apply_to_response: true
              example6:
                summary: Hallucination Rule V2 Example
                description: Hallucination Rule Example, no configuration required
                value:
                  name: Hallucination Rule
                  type: ModelHallucinationRuleV2
                  apply_to_prompt: false
                  apply_to_response: true
              example7:
                summary: Hallucination Rule V3 Example (Beta)
                description: Hallucination Rule Example, no configuration required. This rule is in beta and must be enabled by the system administrator.
                value:
                  name: Hallucination Rule
                  type: ModelHallucinationRuleV3
                  apply_to_prompt: false
                  apply_to_response: true
              example8:
                summary: PII Rule Example
                description: PII Rule Example, no configuration required. "disabled_pii_entities", "confidence_threshold", and "allow_list" accepted. Valid value for "confidence_threshold" is 0.0-1.0. Valid values for "disabled_pii_entities" are CREDIT_CARD,CRYPTO,DATE_TIME,EMAIL_ADDRESS,IBAN_CODE,IP_ADDRESS,NRP,LOCATION,PERSON,PHONE_NUMBER,MEDICAL_LICENSE,URL,US_BANK_NUMBER,US_DRIVER_LICENSE,US_ITIN,US_PASSPORT,US_SSN
                value:
                  name: PII Rule
                  type: PIIDataRule
                  apply_to_prompt: true
                  apply_to_response: true
                  config:
                    disabled_pii_entities:
                    - EMAIL_ADDRESS
                    - PHONE_NUMBER
                    confidence_threshold: '0.5'
                    allow_list:
                    - arthur.ai
                    - Arthur
              example9:
                summary: Toxicity Rule Example
                description: Toxicity Rule Example, no configuration required. Threshold accepted
                value:
                  name: Toxicity Rule
                  type: ToxicityRule
                  apply_to_prompt: true
                  apply_to_response: true
                  config:
                    threshold: 0.5
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RuleResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v2/tasks/{task_id}/rules/{rule_id}:
    patch:
      tags:
      - Tasks
      summary: Update Task Rules
      description: Enable or disable an existing rule for this task including the default rules.
      operationId: update_task_rules_api_v2_tasks__task_id__rules__rule_id__patch
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      - name: rule_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Rule Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRuleRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Tasks
      summary: Archive Task Rule
      description: Archive an existing rule for this task.
      operationId: archive_task_rule_api_v2_tasks__task_id__rules__rule_id__delete
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      - name: rule_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Rule Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v2/tasks/{task_id}/metrics:
    post:
      tags:
      - Tasks
      summary: Create Task Metric
      description: Create metrics for a task. Only agentic tasks can have metrics.
      operationId: create_task_metric_api_v2_tasks__task_id__metrics_post
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewMetricRequest'
            examples:
              example1:
                type: QueryRelevance
                name: My User Query Relevance
                metric_metadata: This is a test metric metadata
              example2:
                type: QueryRelevance
                name: My User Query Relevance with Config
                metric_metadata: This is a test metric metadata
                config:
                  relevance_threshold: 0.8
                  use_llm_judge: false
              example3:
                type: ResponseRelevance
                name: My Response Relevance
                metric_metadata: This is a test metric metadata
                config:
                  use_llm_judge: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetricResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v2/tasks/{task_id}/metrics/{metric_id}:
    patch:
      tags:
      - Tasks
      summary: Update Task Metric
      description: Update a task metric.
      operationId: update_task_metric_api_v2_tasks__task_id__metrics__metric_id__patch
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      - name: metric_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Metric Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateMetricRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Tasks
      summary: Archive Task Metric
      description: Archive a task metric.
      operationId: archive_task_metric_api_v2_tasks__task_id__metrics__metric_id__delete
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Task Id
      - name: metric_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Metric Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/tasks/{task_id}/demos/chatbot/stream:
    post:
      tags:
      - Tasks
      summary: Stream Demo Chatbot
      description: Stream a demo chatbot response.
      operationId: stream_demo_chatbot_api_v1_tasks__task_id__demos_chatbot_stream_post
      security:
      - API Key: []
      parameters:
      - name: task_id
        in: path
        required: true
        schema:
          type: string
          title: Task Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatbotRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    AgentMetadataResponse:
      properties:
        provider:
          $ref: '#/components/schemas/RegisteredAgentProvider'
          description: Provider of the registered agent.
        gcp_metadata:
          anyOf:
          - $ref: '#/components/schemas/GCPAgentMetadataResponse'
          - type: 'null'
          description: Metadata for the agent.
        service_names:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Service Names
          description: List of service names that send traces to this task
      type: object
      required:
      - provider
      title: AgentMetadataResponse
      description: Agent metadata for responses.
    ToxicityConfig:
      properties:
        threshold:
          type: number
          title: Threshold
          description: 'Optional. Float (0, 1) indicating the level of tolerable toxicity to consider the rule passed or failed. Min: 0 (no toxic language) Max: 1 (very toxic language). Default: 0.5'
          default: 0.5
      additionalProperties: false
      type: object
      title: ToxicityConfig
      example:
        threshold: 0.5
    MetricType:
      type: string
      enum:
      - QueryRelevance
      - ResponseRelevance
      - ToolSelection
      title: MetricType
    NewRuleRequest:
      properties:
        name:
          type: string
          title: Name
          description: Name of the rule
          examples:
          - SSN Regex Rule
        type:
          type: string
          title: Type
          description: Type of the rule. It can only be one of KeywordRule, RegexRule, ModelSensitiveDataRule, ModelHallucinationRule, ModelHallucinationRuleV2, PromptInjectionRule, PIIDataRule
          examples:
          - RegexRule
        apply_to_prompt:
          type: boolean
          title: Apply To Prompt
          description: Boolean value to enable or disable the rule for llm prompt
          examples:
          - true
        apply_to_response:
          type: boolean
          title: Apply To Response
          description: Boolean value to enable or disable the rule for llm response
          examples:
          - false
        config:
          anyOf:
          - $ref: '#/components/schemas/KeywordsConfig'
          - $ref: '#/components/schemas/RegexConfig'
          - $ref: '#/components/schemas/ExamplesConfig'
          - $ref: '#/components/schemas/ToxicityConfig'
          - $ref: '#/components/schemas/PIIConfig'
          - type: 'null'
          title: Config
          description: Config of the rule
      type: object
      required:
      - name
      - type
      - apply_to_prompt
      - apply_to_response
      title: NewRuleRequest
      example1:
        description: Sensitive Data Example with its required configuration
        summary: Sensitive Data Example
        value:
          apply_to_prompt: true
          apply_to_response: false
          config:
            examples:
            - example: John has O negative blood group
              result: true
            - example: Most of the people have A positive blood group
              result: false
            hint: specific individual's blood types
          name: Sensitive Data Rule
          type: ModelSensitiveDataRule
      example2:
        description: Regex Example with its required configuration. Be sure to properly encode requests using JSON libraries. For example, the regex provided encodes to a different string when encoded to account for escape characters.
        summary: Regex Example
        value:
          apply_to_prompt: true
          apply_to_response: true
          config:
            regex_patterns:
            - \d{3}-\d{2}-\d{4}
            - \d{5}-\d{6}-\d{7}
          name: SSN Regex Rule
          type: RegexRule
      example3:
        description: Keywords Rule Example with its required configuration
        summary: Keywords Rule Example
        value:
          apply_to_prompt: true
          apply_to_response: true
          config:
            keywords:
            - Blocked_Keyword_1
            - Blocked_Keyword_2
          name: Blocked Keywords Rule
          type: KeywordRule
      example4:
        description: Prompt Injection Rule Example, no configuration required
        summary: Prompt Injection Rule Example
        value:
          apply_to_prompt: true
          apply_to_response: false
          name: Prompt Injection Rule
          type: PromptInjectionRule
      example5:
        description: Hallucination Rule Example, no configuration required (This rule is deprecated. Use ModelHallucinationRuleV2 instead.)
        summary: Hallucination Rule V1 Example (Deprecated)
        value:
          apply_to_prompt: false
          apply_to_response: true
          name: Hallucination Rule
          type: ModelHallucinationRule
      example6:
        description: Hallucination Rule Example, no configuration required
        summary: Hallucination Rule V2 Example
        value:
          apply_to_prompt: false
          apply_to_response: true
          name: Hallucination Rule
          type: ModelHallucinationRuleV2
      example7:
        description: Hallucination Rule Example, no configuration required. This rule is in beta and must be enabled by the system administrator.
        summary: Hallucination Rule V3 Example (Beta)
        value:
          apply_to_prompt: false
          apply_to_response: true
          name: Hallucination Rule
          type: ModelHallucinationRuleV3
      example8:
        description: PII Rule Example, no configuration required. "disabled_pii_entities", "confidence_threshold", and "allow_list" accepted. Valid value for "confidence_threshold" is 0.0-1.0. Valid values for "disabled_pii_entities" are CREDIT_CARD,CRYPTO,DATE_TIME,EMAIL_ADDRESS,IBAN_CODE,IP_ADDRESS,NRP,LOCATION,PERSON,PHONE_NUMBER,MEDICAL_LICENSE,URL,US_BANK_NUMBER,US_DRIVER_LICENSE,US_ITIN,US_PASSPORT,US_SSN
        summary: PII Rule Example
        value:
          apply_to_prompt: true
          apply_to_response: true
          config:
            allow_list:
            - arthur.ai
            - Arthur
            confidence_threshold: '0.5'
            disabled_pii_entities:
            - EMAIL_ADDRESS
            - PHONE_NUMBER
          name: PII Rule
          type: PIIDataRule
      example9:
        description: Toxicity Rule Example, no configuration required. Threshold accepted
        summary: Toxicity Rule Example
        value:
          apply_to_prompt: true
          apply_to_response: true
          config:
            threshold: 0.5
          name: Toxicity Rule
          type: ToxicityRule
    AgentCreationSource:
      anyOf:
      - $ref: '#/components/schemas/GCPAgentCreationSource'
      - $ref: '#/components/schemas/OTELAgentCreationSource'
      - $ref: '#/components/schemas/ManualAgentCreationSource'
      title: AgentCreationSource
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    RegisteredAgentProvider:
      type: string
      enum:
      - gcp
      - external
      title: RegisteredAgentProvider
    LLMModel:
      properties:
        name:
          type: string
          title: Name
          description: Name of the model.
      type: object
      required:
      - name
      title: LLMModel
      description: Model used by an agent.
    UpdateRuleRequest:
      properties:
        enabled:
          type: boolean
          title: Enabled
          description: 'Boolean value to enable or disable the rule. '
      type: object
      required:
      - enabled
      title: UpdateRuleRequest
    KeywordsConfig:
      properties:
        keywords:
          items:
            type: string
          type: array
          title: Keywords
          description: List of Keywords
      type: object
      required:
      - keywords
      title: KeywordsConfig
      example:
        keywords:
        - Blocked_Keyword_1
        - Blocked_Keyword_2
    MetricResponse:
      properties:
        id:
          type: string
          title: Id
          description: ID of the Metric
        name:
          type: string
          title: Name
          description: Name of the Metric
        type:
          $ref: '#/components/schemas/MetricType'
          description: Type of the Metric
        metric_metadata:
          type: string
          title: Metric Metadata
          description: Metadata of the Metric
        config:
          anyOf:
          - type: string
          - type: 'null'
          title: Config
          description: JSON-serialized configuration for the Metric
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Time the Metric was created in unix milliseconds
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: Time the Metric was updated in unix milliseconds
        enabled:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Enabled
          description: Whether the Metric is enabled
      type: object
      required:
      - id
      - name
      - type
      - metric_metadata
      - created_at
      - updated_at
      title: MetricResponse
    ManualAgentCreationSource:
      properties:
        type:
          type: string
          const: MANUAL
          title: Type
          default: MANUAL
      type: object
      title: ManualAgentCreationSource
      description: Creation source for manually created tasks.
    RuleResponse:
      properties:
        id:
          type: string
          title: Id
          description: ID of the Rule
        name:
          type: string
          title: Name
          description: Name of the Rule
        type:
          $ref: '#/components/schemas/RuleType'
          description: Type of Rule
        apply_to_prompt:
          type: boolean
          title: Apply To Prompt
          description: Rule applies to prompt
        apply_to_response:
          type: boolean
          title: Apply To Response
          description: Rule applies to response
        enabled:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Enabled
          description: Rule is enabled for the task
        scope:
          $ref: '#/components/schemas/RuleScope'
          description: Scope of the rule. The rule can be set at default level or task level.
        created_at:
          type: integer
          title: Created At
          description: Time the rule was created in unix milliseconds
        updated_at:
          type: integer
          title: Updated At
          description: Time the rule was updated in unix milliseconds
        config:
          anyOf:
          - $ref: '#/components/schemas/KeywordsConfig'
          - $ref: '#/components/schemas/RegexConfig'
          - $ref: '#/components/schemas/ExamplesConfig'
          - $ref: '#/components/schemas/ToxicityConfig'
          - $ref: '#/components/schemas/PIIConfig'
          - type: 'null'
          title: Config
          description: Config of the rule
      type: object
      required:
      - id
      - name
      - type
      - apply_to_prompt
      - apply_to_response
      - scope
      - created_at
      - updated_at
      title: RuleResponse
    TaskResponse:
      properties:
        id:
          type: string
          title: Id
          description: ' ID of the task'
        name:
          type: string
          title: Name
          description: Name of the task
        created_at:
          type: integer
          title: Created At
          description: Time the task was created in unix milliseconds
        updated_at:
          type: integer
          title: Updated At
          description: Time the task was created in unix milliseconds
        is_agentic:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Is Agentic
          description: Whether the task is agentic or not
        is_system_task:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Is System Task
          description: Whether this is a system-managed task (e.g., for traces without a task_id or service name, or for Arthur-created traces)
          default: false
        is_autocreated:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Is Autocreated
          description: Whether this task was automatically created by Arthur
          default: false
        is_archived:
          anyOf:
          - type: boolean
          - type: 'null'
     

# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/arthurai/refs/heads/main/openapi/arthurai-tasks-api-openapi.yml