Julep Agents API

The Agents API from Julep — 13 operation(s) for agents.

Operations 28

GET /agents #
POST /agents #
GET /agents/models #
POST /agents/{id} #
PUT /agents/{id} #
PATCH /agents/{id} #
DELETE /agents/{id} #
GET /agents/{id} #
POST /agents/{id}/docs #
GET /agents/{id}/docs #
DELETE /agents/{id}/docs #
DELETE /agents/{id}/docs/{child_id} #
GET /agents/{id}/secrets #
POST /agents/{id}/secrets #
PUT /agents/{id}/secrets/{child_id} #
DELETE /agents/{id}/secrets/{child_id} #
GET /agents/{id}/tasks #
POST /agents/{id}/tasks #
PUT /agents/{id}/tasks/{child_id} #
PATCH /agents/{id}/tasks/{child_id} #
DELETE /agents/{id}/tasks/{child_id} #
GET /agents/{id}/tools #
POST /agents/{id}/tools #
PUT /agents/{id}/tools/{child_id} #
PATCH /agents/{id}/tools/{child_id} #
DELETE /agents/{id}/tools/{child_id} #
POST /agents/{parent_id}/tasks/{id} #

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/julep-agents-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

julep-agents-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Julep Agents API
  termsOfService: https://julep.ai/terms
  contact:
    name: Julep AI
    url: https://julep.ai
    email: developers@julep.ai
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  description: Julep is a backend for creating stateful AI apps with background tasks and long-term memory easily.
  version: 1.0.0
servers:
- url: https://{serverEnv}.julep.ai/api
  description: The julep cloud service endpoint
  variables:
    serverEnv:
      default: api
      description: The environment to use
      enum:
      - api
      - dev
security:
- ApiKeyAuth: []
- ApiKeyAuth_: []
tags:
- name: Agents
paths:
  /agents:
    get:
      operationId: AgentsRoute_list
      description: List Agents (paginated)
      parameters:
      - $ref: '#/components/parameters/Common.PaginationOptions.limit'
      - $ref: '#/components/parameters/Common.PaginationOptions.offset'
      - $ref: '#/components/parameters/Common.PaginationOptions.sort_by'
      - $ref: '#/components/parameters/Common.PaginationOptions.direction'
      - $ref: '#/components/parameters/Common.PaginationOptions.metadata_filter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Agents.Agent'
                required:
                - items
      tags:
      - Agents
    post:
      operationId: AgentsRoute_create
      description: Create a new Agent
      parameters: []
      responses:
        '201':
          description: The request has succeeded and a new resource has been created as a result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents.Agent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Agents.CreateAgentRequest'
      tags:
      - Agents
  /agents/models:
    get:
      operationId: AgentsRoute_listModels
      description: List all available models
      parameters: []
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents.ListModelsResponse'
      tags:
      - Agents
  /agents/{id}:
    post:
      operationId: AgentsRoute_createOrUpdate
      description: Create or update an Agent
      parameters:
      - $ref: '#/components/parameters/Agents.CreateOrUpdateAgentRequest.id'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents.Agent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Agents.UpdateAgentRequest'
      tags:
      - Agents
    put:
      operationId: AgentsRoute_update
      description: Update an existing Agent by id (overwrites existing values; use PATCH for merging instead)
      parameters:
      - name: id
        in: path
        required: true
        description: ID of the resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents.Agent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Agents.UpdateAgentRequest'
      tags:
      - Agents
    patch:
      operationId: AgentsRoute_patch
      description: Update an existing Agent by id (merges with existing values)
      parameters:
      - name: id
        in: path
        required: true
        description: ID of the resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents.Agent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Agents.PatchAgentRequest'
      tags:
      - Agents
    delete:
      operationId: AgentsRoute_delete
      description: Delete Agent by id
      parameters:
      - name: id
        in: path
        required: true
        description: ID of the resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '202':
          description: The request has been accepted for processing, but processing has not yet completed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Common.ResourceDeletedResponse'
      tags:
      - Agents
    get:
      operationId: AgentsRoute_get
      description: Get an Agent by id
      parameters:
      - name: id
        in: path
        required: true
        description: ID of the resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agents.Agent'
      tags:
      - Agents
  /agents/{id}/docs:
    post:
      operationId: AgentDocsRoute_create
      description: Create a Doc for this Agent
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '201':
          description: The request has succeeded and a new resource has been created as a result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Docs.Doc'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Docs.CreateDocRequest'
      tags:
      - Agents
    get:
      operationId: AgentDocsRoute_list
      description: List Docs owned by an Agent
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - $ref: '#/components/parameters/Common.PaginationOptions.limit'
      - $ref: '#/components/parameters/Common.PaginationOptions.offset'
      - $ref: '#/components/parameters/Common.PaginationOptions.sort_by'
      - $ref: '#/components/parameters/Common.PaginationOptions.direction'
      - $ref: '#/components/parameters/Common.PaginationOptions.metadata_filter'
      - name: include_embeddings
        in: query
        required: false
        description: Whether to include embeddings in the response
        schema:
          type: boolean
          default: true
        explode: false
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Docs.Doc'
                required:
                - items
      tags:
      - Agents
    delete:
      operationId: AgentDocsRoute_deleteBulk
      description: Bulk delete Docs owned by an Agent
      parameters:
      - name: id
        in: path
        required: true
        description: ID of the parent
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '202':
          description: The request has been accepted for processing, but processing has not yet completed.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Common.ResourceDeletedResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Docs.BulkDeleteDocsRequest'
      tags:
      - Agents
  /agents/{id}/docs/{child_id}:
    delete:
      operationId: AgentDocsRoute_delete
      description: Delete a Doc for this Agent
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be deleted
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '202':
          description: The request has been accepted for processing, but processing has not yet completed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Common.ResourceDeletedResponse'
      tags:
      - Agents
  /agents/{id}/search:
    post:
      operationId: AgentsDocsSearchRoute_search
      description: Search Docs owned by an Agent
      parameters:
      - name: id
        in: path
        required: true
        description: ID of the parent
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Docs.DocSearchResponse'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                body:
                  anyOf:
                  - $ref: '#/components/schemas/Docs.VectorDocSearchRequest'
                  - $ref: '#/components/schemas/Docs.TextOnlyDocSearchRequest'
                  - $ref: '#/components/schemas/Docs.HybridDocSearchRequest'
              required:
              - body
      tags:
      - Agents
  /agents/{id}/secrets:
    get:
      operationId: AgentSecretsRoute_list
      description: List secrets (paginated)
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - $ref: '#/components/parameters/Common.PaginationOptions.limit'
      - $ref: '#/components/parameters/Common.PaginationOptions.offset'
      - $ref: '#/components/parameters/Common.PaginationOptions.sort_by'
      - $ref: '#/components/parameters/Common.PaginationOptions.direction'
      - $ref: '#/components/parameters/Common.PaginationOptions.metadata_filter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Secrets.Secret'
                required:
                - items
      tags:
      - Agents
    post:
      operationId: AgentSecretsRoute_create
      description: Create a new secret
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '201':
          description: The request has succeeded and a new resource has been created as a result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Secrets.Secret'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Secrets.CreateSecretRequest'
      tags:
      - Agents
  /agents/{id}/secrets/{child_id}:
    put:
      operationId: AgentSecretsRoute_update
      description: Update an existing secret by id (overwrites existing values)
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be updated
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Secrets.Secret'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Secrets.UpdateSecretRequest'
      tags:
      - Agents
    delete:
      operationId: AgentSecretsRoute_delete
      description: Delete a secret by id
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be deleted
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '202':
          description: The request has been accepted for processing, but processing has not yet completed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Common.ResourceDeletedResponse'
      tags:
      - Agents
  /agents/{id}/tasks:
    get:
      operationId: TasksRoute_list
      description: List tasks (paginated)
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - $ref: '#/components/parameters/Common.PaginationOptions.limit'
      - $ref: '#/components/parameters/Common.PaginationOptions.offset'
      - $ref: '#/components/parameters/Common.PaginationOptions.sort_by'
      - $ref: '#/components/parameters/Common.PaginationOptions.direction'
      - $ref: '#/components/parameters/Common.PaginationOptions.metadata_filter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Tasks.Task'
                required:
                - items
      tags:
      - Agents
    post:
      operationId: TasksRoute_create
      description: Create a new task
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '201':
          description: The request has succeeded and a new resource has been created as a result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tasks.Task'
      requestBody:
        required: true
        content:
          application/yaml:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
          text/x-yaml:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
          application/json:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
      tags:
      - Agents
  /agents/{id}/tasks/{child_id}:
    put:
      operationId: TasksRoute_update
      description: Update an existing task (overwrite existing values)
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be updated
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tasks.Task'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Tasks.UpdateTaskRequest'
      tags:
      - Agents
    patch:
      operationId: TasksRoute_patch
      description: Update an existing task (merges with existing values)
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be patched
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tasks.Task'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Tasks.PatchTaskRequest'
      tags:
      - Agents
    delete:
      operationId: TasksRoute_delete
      description: Delete a task by its id
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be deleted
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '202':
          description: The request has been accepted for processing, but processing has not yet completed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Common.ResourceDeletedResponse'
      tags:
      - Agents
  /agents/{id}/tools:
    get:
      operationId: AgentToolsRoute_list
      description: List tools of the given agent
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - $ref: '#/components/parameters/Common.PaginationOptions.limit'
      - $ref: '#/components/parameters/Common.PaginationOptions.offset'
      - $ref: '#/components/parameters/Common.PaginationOptions.sort_by'
      - $ref: '#/components/parameters/Common.PaginationOptions.direction'
      - $ref: '#/components/parameters/Common.PaginationOptions.metadata_filter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Tools.Tool'
                required:
                - items
      tags:
      - Agents
    post:
      operationId: AgentToolsRoute_create
      description: Create a new resource owned by the given parent
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '201':
          description: The request has succeeded and a new resource has been created as a result.
          content:
            application/json:
              schema:
                type: string
                enum:
                - Create a new tool for this agent
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Agents.CreateAgentRequest'
      tags:
      - Agents
  /agents/{id}/tools/{child_id}:
    put:
      operationId: AgentToolsRoute_update
      description: Update a resource owned by the given parent using its id
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be updated
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                type: string
                enum:
                - Update an existing tool (overwrite existing values)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Tools.UpdateToolRequest'
      tags:
      - Agents
    patch:
      operationId: AgentToolsRoute_patch
      description: Patch a resource owned by the given parent using its id
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be patched
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                type: string
                enum:
                - Update an existing tool (merges with existing values)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Tools.PatchToolRequest'
      tags:
      - Agents
    delete:
      operationId: AgentToolsRoute_delete
      description: Delete an existing tool by id
      parameters:
      - name: id
        in: path
        required: true
        description: ID of parent resource
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - name: child_id
        in: path
        required: true
        description: ID of the resource to be deleted
        schema:
          $ref: '#/components/schemas/Common.uuid'
      responses:
        '202':
          description: The request has been accepted for processing, but processing has not yet completed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Common.ResourceDeletedResponse'
      tags:
      - Agents
  /agents/{parent_id}/tasks/{id}:
    post:
      operationId: TasksCreateOrUpdateRoute_createOrUpdate
      description: Create or update a task
      parameters:
      - name: parent_id
        in: path
        required: true
        description: ID of the agent
        schema:
          $ref: '#/components/schemas/Common.uuid'
      - $ref: '#/components/parameters/Tasks.CreateOrUpdateTaskRequest.id'
      responses:
        '201':
          description: The request has succeeded and a new resource has been created as a result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tasks.Task'
      requestBody:
        required: true
        content:
          application/yaml:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
          text/x-yaml:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
          text/yaml:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
          application/json:
            schema:
              $ref: '#/components/schemas/Tasks.CreateTaskRequest'
      tags:
      - Agents
components:
  schemas:
    Tools.BrowserbaseCompleteSessionIntegrationDefUpdate:
      type: object
      properties:
        method:
          type: string
          enum:
          - complete_session
          default: complete_session
        arguments:
          $ref: '#/components/schemas/Tools.BrowserbaseCompleteSessionArgumentsUpdate'
      allOf:
      - $ref: '#/components/schemas/Tools.BaseBrowserbaseIntegrationDefUpdate'
      description: browserbase complete session integration definition
    Tools.Computer20241022DefUpdate:
      type: object
      properties:
        type:
          type: string
          enum:
          - computer_20241022
          default: computer_20241022
        name:
          type: string
          default: computer
        display_width_px:
          type: integer
          format: uint16
          minimum: 600
          description: The display width in pixels
          default: 1024
        display_height_px:
          type: integer
          format: uint16
          minimum: 400
          description: The display height in pixels
          default: 768
        display_number:
          type: integer
          format: uint16
          minimum: 1
          maximum: 10
          description: The display number to use
          default: 1
      description: Anthropic new tools
    Docs.TextOnlyDocSearchRequest:
      type: object
      required:
      - limit
      - metadata_filter
      - include_embeddings
      - text
      - lang
      - trigram_similarity_threshold
      properties:
        limit:
          type: integer
          format: uint16
          minimum: 1
          maximum: 50
          description: The limit of documents to return
          default: 10
        metadata_filter:
          type: object
          additionalProperties: {}
          description: Metadata filter to apply to the search
          default: {}
        include_embeddings:
          type: boolean
          description: Whether to include embeddings in the response
          default: true
        text:
          type: string
          description: Text to use in the search
        lang:
          type: string
          description: The language to be used for text search. Support for other languages coming soon.
          default: en-US
        trigram_similarity_threshold:
          type:
          - number
          - 'null'
          minimum: 0
          maximum: 1
          description: Trigram similarity threshold for fuzzy matching. Set to null to disable trigram search.
          default: null
    Tools.UnstructuredSetup:
      type: object
      required:
      - unstructured_api_key
      properties:
        unstructured_api_key:
          type: string
          description: The API key for Unstructured.io
        server_url:
          type: string
          description: Optional server endpoint URL
        server:
          type: string
          description: The server by name to use for all methods
        url_params:
          type: object
          additionalProperties: {}
          description: Parameters to optionally template the server URL with
        retry_config:
          type: object
          additionalProperties: {}
          description: The retry configuration to use for all supported methods
        timeout_ms:
          type: integer
          format: int16
          description: Optional request timeout applied to each operation in milliseconds
      description: Setup parameters for Unstructured integration
    Tools.SpiderSetupUpdate:
      type: object
      properties:
        spider_api_key:
          type: string
          description: The API key for Spider
      description: Setup parameters for Spider integration
    Tasks.LogStep:
      type: object
      required:
      - kind_
      - log
      properties:
        kind_:
          type: string
          enum:
          - log
          default: log
          readOnly: true
        log:
          allOf:
          - $ref: '#/components/schemas/Common.JinjaTemplate'
          description: The value to log
      allOf:
      - type: object
        required:
        - kind_
        properties:
          kind_:
            type: string
            enum:
            - log
            description: The kind of step
            readOnly: true
          label:
            allOf:
            - $ref: '#/components/schemas/Common.stepLabel'
            description: The label of this step for referencing it from other steps
        discriminator:
          propertyName: kind_
          mapping: {}
    Tools.BraveIntegrationDef:
      type: object
      required:
      - provider
      properties:
        provider:
          type: string
          enum:
          - brave
          description: The provider must be "brave"
          default: brave
        method:
          type: string
          description: The specific method of the integration to call
        setup:
          allOf:
          - $ref: '#/components/schemas/Tools.BraveSearchSetup'
          description: The setup parameters for Brave
        arguments:
          allOf:
          - $ref: '#/components/schemas/Tools.BraveSearchArguments'
          description: The arguments for Brave Search
      allOf:
      - $ref: '#/components/schemas/Tools.BaseIntegrationDef'
      description: Brave integration definition
    Tasks.CreateTaskRequest:
      type: object
      required:
      - name
      - description
      - main
      - input_schema
      - tools
      - inherit_tools
      properties:
        name:
          allOf:
          - $ref: '#/components/schemas/Common.displayName'
          description: The name of the task.
        canonical_name:
          allOf:
          - $ref: '#/components/schemas/Common.canonicalName'
          description: The canonical name of the task.
        description:
          type: string
          description: The description of the task.
          default: ''
        main:
          type: array
          items:
            anyOf:
            - $ref: '#/components/schemas/Tasks.EvaluateStep'
            - $ref: '#/components/schemas/Tasks.ToolCallStep'
            - $ref: '#/components/schemas/Tasks.PromptStep'
            - $ref: '#/components/schemas/Tasks.GetStep'
            - $ref: '#/components/schemas/Tasks.SetStep'
            - $ref: '#/components/schemas/Tasks.LogStep'
            - $ref: '#/components/schemas/Tasks.YieldStep'
            - $ref: '#/components/schemas/Tasks.ReturnStep'
            - $ref: '#/components/schemas/Tasks.SleepStep'
            - $ref: '#/components/schemas/Tasks.ErrorWorkflowStep'
            - $ref: '#/components/schemas/Tasks.WaitForInputStep'
            - $ref: '#/components/schemas/Tasks.IfElseWorkflowStep'
            - $ref: '#/components/schemas/Tasks.SwitchStep'
            - $ref: '#/components/schemas/Tasks.ForeachStep'
            - $ref: '#/components/schemas/Tasks.ParallelStep'
            - type: object
              required:
              - kind_
              - over
              - map
              properties:
                kind_:
                  type: string
                  enum:
                  - map_reduce
                  default: map_reduce
                  readOnly: true
                over:
                  allOf:
                  - $ref: '#/components/schemas/Common.PyExpression'
                  description: The variable to iterate over
                map:
                  anyOf:
                  - $ref: '#/components/schemas/Tasks.EvaluateStep'
                  - $ref: '#/components/schemas/Tasks.ToolCallStep'
                  - $ref: '#/components/schemas/Tasks.PromptStep'
                  - $ref: '#/components/schemas/Tasks.GetStep'
                  - $ref: '#/components/schemas/Tasks.SetStep'
                  - $ref: '#/components/schemas/Tasks.LogStep'
                  - $ref: '#/components/schemas/Tasks.YieldStep'
                  description: The steps to run for each iteration
                reduce:
   

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