Letta Internal Templates API

Internal Templates operations.

Operations 6

POST /v1/_internal_templates/groups Create Group #
POST /v1/_internal_templates/agents Create Agent #
POST /v1/_internal_templates/blocks Create Block #
POST /v1/_internal_templates/blocks/batch Create Blocks Batch #
GET /v1/_internal_templates/deployment/{deployment_id} List Deployment Entities #
DELETE /v1/_internal_templates/deployment/{deployment_id} Delete Deployment #

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-agent-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-block-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-tool-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-source-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-run-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-group-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-identity-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-message-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-passage-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-archive-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-job-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-llm-config-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-embedding-config-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/json-schema/letta-provider-schema.json

Other Resources

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/letta-internal-templates-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

letta-internal-templates-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Letta Admin Internal Templates API
  version: 1.0.0
  description: REST API for Letta, the stateful agents platform. Manage agents, memory blocks, archival passages, sources, custom tools, MCP servers, multi-agent groups, runs, and streaming responses. Available as Letta Cloud (managed) at https://api.letta.com/v1 and as the self-hosted open-source server (Apache-2.0) typically run at http://localhost:8283.
  contact:
    name: Letta
    url: https://www.letta.com/
    email: support@letta.com
  license:
    name: Apache-2.0
    url: https://github.com/letta-ai/letta/blob/main/LICENSE
  x-logo:
    url: https://www.letta.com/favicon.ico
servers:
- url: https://api.letta.com
  description: Letta Cloud (managed)
- url: https://app.letta.com
  description: Letta Cloud (app)
- url: http://localhost:8283
  description: Self-hosted Letta server
security:
- bearerAuth: []
tags:
- name: Internal Templates
  description: Internal Templates operations.
paths:
  /v1/_internal_templates/groups:
    post:
      tags:
      - Internal Templates
      summary: Create Group
      description: Create a new multi-agent group with the specified configuration.
      operationId: create_internal_template_group
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InternalTemplateGroupCreate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/_internal_templates/agents:
    post:
      tags:
      - Internal Templates
      summary: Create Agent
      description: Create a new agent with template-related fields.
      operationId: create_internal_template_agent
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InternalTemplateAgentCreate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentState'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/_internal_templates/blocks:
    post:
      tags:
      - Internal Templates
      summary: Create Block
      description: Create a new block with template-related fields.
      operationId: create_internal_template_block
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InternalTemplateBlockCreate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Block'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/_internal_templates/blocks/batch:
    post:
      tags:
      - Internal Templates
      summary: Create Blocks Batch
      description: Create multiple blocks with template-related fields.
      operationId: create_internal_template_blocks_batch
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/InternalTemplateBlockCreate'
              title: Blocks
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Block'
                title: Response Create Internal Template Blocks Batch
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/_internal_templates/deployment/{deployment_id}:
    get:
      tags:
      - Internal Templates
      summary: List Deployment Entities
      description: 'List all entities (blocks, agents, groups) with the specified deployment_id.

        Optionally filter by entity types.'
      operationId: list_deployment_entities
      parameters:
      - name: deployment_id
        in: path
        required: true
        schema:
          type: string
          title: Deployment Id
      - name: entity_types
        in: query
        required: false
        schema:
          anyOf:
          - type: array
            items:
              type: string
          - type: 'null'
          description: Filter by entity types (block, agent, group)
          title: Entity Types
        description: Filter by entity types (block, agent, group)
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListDeploymentEntitiesResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Internal Templates
      summary: Delete Deployment
      description: 'Delete all entities (blocks, agents, groups) with the specified deployment_id.

        Deletion order: blocks -> agents -> groups to maintain referential integrity.'
      operationId: delete_deployment
      parameters:
      - name: deployment_id
        in: path
        required: true
        schema:
          type: string
          title: Deployment Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteDeploymentResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    FileBlock:
      properties:
        value:
          type: string
          title: Value
          description: Value of the block.
        limit:
          type: integer
          title: Limit
          description: Character limit of the block.
          default: 100000
        project_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Project Id
          description: The associated project id.
        template_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Template Name
          description: Name of the block if it is a template.
        is_template:
          type: boolean
          title: Is Template
          description: Whether the block is a template (e.g. saved human/persona options).
          default: false
        template_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Template Id
          description: The id of the template.
        base_template_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Base Template Id
          description: The base template id of the block.
        deployment_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Deployment Id
          description: The id of the deployment.
        entity_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Entity Id
          description: The id of the entity within the template.
        preserve_on_migration:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Preserve On Migration
          description: Preserve the block on template migration.
          default: false
        label:
          anyOf:
          - type: string
          - type: 'null'
          title: Label
          description: Label of the block (e.g. 'human', 'persona') in the context window.
        read_only:
          type: boolean
          title: Read Only
          description: Whether the agent has read-only access to the block.
          default: false
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
          description: Description of the block.
        metadata:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Metadata
          description: Metadata of the block.
          default: {}
        hidden:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Hidden
          description: If set to True, the block will be hidden.
        id:
          type: string
          pattern: ^block-[a-fA-F0-9]{8}
          title: Id
          description: The human-friendly ID of the Block
          examples:
          - block-123e4567-e89b-12d3-a456-426614174000
        created_by_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Created By Id
          description: The id of the user that made this Block.
        last_updated_by_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Updated By Id
          description: The id of the user that last updated this Block.
        tags:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Tags
          description: The tags associated with the block.
          default: []
        file_id:
          type: string
          title: File Id
          description: Unique identifier of the file.
        source_id:
          type: string
          title: Source Id
          description: 'Deprecated: Use `folder_id` field instead. Unique identifier of the source.'
          deprecated: true
        is_open:
          type: boolean
          title: Is Open
          description: True if the agent currently has the file open.
        last_accessed_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Last Accessed At
          description: UTC timestamp of the agent’s most recent access to this file. Any operations from the open, close, or search tools will update this field.
      type: object
      required:
      - value
      - file_id
      - source_id
      - is_open
      title: FileBlock
    SGLangModelSettings:
      properties:
        max_output_tokens:
          type: integer
          title: Max Output Tokens
          description: The maximum number of tokens the model can generate.
          default: 4096
        parallel_tool_calls:
          type: boolean
          title: Parallel Tool Calls
          description: Whether to enable parallel tool calling.
          default: true
        provider_type:
          type: string
          const: sglang
          title: Provider Type
          description: The type of the provider.
          default: sglang
        temperature:
          type: number
          title: Temperature
          description: The temperature of the model.
          default: 0.7
        reasoning:
          $ref: '#/components/schemas/OpenAIReasoning'
          description: The reasoning configuration for the model.
          default:
            reasoning_effort: high
        response_format:
          anyOf:
          - oneOf:
            - $ref: '#/components/schemas/TextResponseFormat'
            - $ref: '#/components/schemas/JsonSchemaResponseFormat'
            - $ref: '#/components/schemas/JsonObjectResponseFormat'
            discriminator:
              propertyName: type
              mapping:
                json_object: '#/components/schemas/JsonObjectResponseFormat'
                json_schema: '#/components/schemas/JsonSchemaResponseFormat'
                text: '#/components/schemas/TextResponseFormat'
          - type: 'null'
          title: Response Format
          description: The response format for the model.
        strict:
          type: boolean
          title: Strict
          description: Enable strict mode for tool calling. When true, tool outputs are guaranteed to match JSON schemas.
          default: true
        tool_call_parser:
          anyOf:
          - type: string
          - type: 'null'
          title: Tool Call Parser
          description: SGLang tool call parser name (for example 'glm47', 'qwen25', or 'hermes').
      type: object
      title: SGLangModelSettings
      description: SGLang model configuration (OpenAI-compatible runtime with SGLang-specific parsing).
    Source:
      properties:
        name:
          type: string
          title: Name
          description: The name of the source.
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
          description: The description of the source.
        instructions:
          anyOf:
          - type: string
          - type: 'null'
          title: Instructions
          description: Instructions for how to use the source.
        metadata:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Metadata
          description: Metadata associated with the source.
        id:
          type: string
          pattern: ^source-[a-fA-F0-9]{8}
          title: Id
          description: The human-friendly ID of the Source
          examples:
          - source-123e4567-e89b-12d3-a456-426614174000
        embedding_config:
          $ref: '#/components/schemas/EmbeddingConfig'
          description: The embedding configuration used by the source.
        vector_db_provider:
          $ref: '#/components/schemas/VectorDBProvider'
          description: The vector database provider used for this source's passages
          default: native
        created_by_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Created By Id
          description: The id of the user that made this Tool.
        last_updated_by_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Updated By Id
          description: The id of the user that made this Tool.
        created_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Created At
          description: The timestamp when the source was created.
        updated_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Updated At
          description: The timestamp when the source was last updated.
      additionalProperties: false
      type: object
      required:
      - name
      - embedding_config
      title: Source
      description: '(Deprecated: Use Folder) Representation of a source, which is a collection of files and passages.'
    RedactedReasoningContent:
      properties:
        type:
          type: string
          const: redacted_reasoning
          title: Type
          description: Indicates this is a redacted thinking step.
          default: redacted_reasoning
        data:
          type: string
          title: Data
          description: The redacted or filtered intermediate reasoning content.
      type: object
      required:
      - data
      title: RedactedReasoningContent
      description: Sent via the Anthropic Messages API
    InternalTemplateBlockCreate:
      properties:
        value:
          type: string
          title: Value
          description: Value of the block.
        limit:
          type: integer
          title: Limit
          description: Character limit of the block.
          default: 100000
        project_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Project Id
          description: The associated project id.
        template_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Template Name
          description: Name of the block if it is a template.
        is_template:
          type: boolean
          title: Is Template
          default: false
        template_id:
          type: string
          title: Template Id
          description: The id of the template.
        base_template_id:
          type: string
          title: Base Template Id
          description: The id of the base template.
        deployment_id:
          type: string
          title: Deployment Id
          description: The id of the deployment.
        entity_id:
          type: string
          title: Entity Id
          description: The id of the entity within the template.
        preserve_on_migration:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Preserve On Migration
          description: Preserve the block on template migration.
          default: false
        label:
          type: string
          title: Label
          description: Label of the block.
        read_only:
          type: boolean
          title: Read Only
          description: Whether the agent has read-only access to the block.
          default: false
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
          description: Description of the block.
        metadata:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Metadata
          description: Metadata of the block.
          default: {}
        hidden:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Hidden
          description: If set to True, the block will be hidden.
        tags:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Tags
          description: The tags to associate with the block.
      type: object
      required:
      - value
      - template_id
      - base_template_id
      - deployment_id
      - entity_id
      - label
      title: InternalTemplateBlockCreate
      description: Used for Letta Cloud
    VectorDBProvider:
      type: string
      enum:
      - native
      - tpuf
      - pinecone
      title: VectorDBProvider
      description: Supported vector database providers for archival memory
    SleeptimeManager:
      properties:
        manager_type:
          type: string
          const: sleeptime
          title: Manager Type
          description: ''
          default: sleeptime
        manager_agent_id:
          type: string
          maxLength: 42
          minLength: 42
          pattern: ^agent-[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
          title: Manager Agent Id
          description: ''
          examples:
          - agent-123e4567-e89b-42d3-8456-426614174000
        sleeptime_agent_frequency:
          anyOf:
          - type: integer
          - type: 'null'
          title: Sleeptime Agent Frequency
          description: ''
      type: object
      required:
      - manager_agent_id
      title: SleeptimeManager
    GoogleAIModelSettings:
      properties:
        max_output_tokens:
          type: integer
          title: Max Output Tokens
          description: The maximum number of tokens the model can generate.
          default: 65536
        parallel_tool_calls:
          type: boolean
          title: Parallel Tool Calls
          description: Whether to enable parallel tool calling.
          default: true
        provider_type:
          type: string
          const: google_ai
          title: Provider Type
          description: The type of the provider.
          default: google_ai
        temperature:
          type: number
          title: Temperature
          description: The temperature of the model.
          default: 0.7
        thinking_config:
          $ref: '#/components/schemas/GeminiThinkingConfig'
          description: The thinking configuration for the model.
          default:
            include_thoughts: true
            thinking_budget: 1024
        response_schema:
          anyOf:
          - oneOf:
            - $ref: '#/components/schemas/TextResponseFormat'
            - $ref: '#/components/schemas/JsonSchemaResponseFormat'
            - $ref: '#/components/schemas/JsonObjectResponseFormat'
            discriminator:
              propertyName: type
              mapping:
                json_object: '#/components/schemas/JsonObjectResponseFormat'
                json_schema: '#/components/schemas/JsonSchemaResponseFormat'
                text: '#/components/schemas/TextResponseFormat'
          - type: 'null'
          title: Response Schema
          description: The response schema for the model.
      type: object
      title: GoogleAIModelSettings
    JsonSchemaResponseFormat:
      properties:
        type:
          type: string
          const: json_schema
          title: Type
          description: The type of the response format.
          default: json_schema
        json_schema:
          additionalProperties: true
          type: object
          title: Json Schema
          description: The JSON schema of the response.
      type: object
      required:
      - json_schema
      title: JsonSchemaResponseFormat
      description: Response format for JSON schema-based responses.
    Group:
      properties:
        id:
          type: string
          title: Id
          description: The id of the group. Assigned by the database.
        manager_type:
          $ref: '#/components/schemas/ManagerType'
          description: ''
        agent_ids:
          items:
            type: string
          type: array
          title: Agent Ids
          description: ''
        description:
          type: string
          title: Description
          description: ''
        project_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Project Id
          description: The associated project id.
        template_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Template Id
          description: The id of the template.
        base_template_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Base Template Id
          description: The base template id.
        deployment_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Deployment Id
          description: The id of the deployment.
        shared_block_ids:
          items:
            type: string
          type: array
          title: Shared Block Ids
          description: ''
          default: []
          deprecated: true
        manager_agent_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Manager Agent Id
          description: ''
        termination_token:
          anyOf:
          - type: string
          - type: 'null'
          title: Termination Token
          description: ''
        max_turns:
          anyOf:
          - type: integer
          - type: 'null'
          title: Max Turns
          description: ''
        sleeptime_agent_frequency:
          anyOf:
          - type: integer
          - type: 'null'
          title: Sleeptime Agent Frequency
          description: ''
        turns_counter:
          anyOf:
          - type: integer
          - type: 'null'
          title: Turns Counter
          description: ''
        last_processed_message_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Processed Message Id
          description: ''
        max_message_buffer_length:
          anyOf:
          - type: integer
          - type: 'null'
          title: Max Message Buffer Length
          description: The desired maximum length of messages in the context window of the convo agent. This is a best effort, and may be off slightly due to user/assistant interleaving.
        min_message_buffer_length:
          anyOf:
          - type: integer
          - type: 'null'
          title: Min Message Buffer Length
          description: The desired minimum length of messages in the context window of the convo agent. This is a best effort, and may be off-by-one due to user/assistant interleaving.
        hidden:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Hidden
          description: If set to True, the group will be hidden.
      additionalProperties: false
      type: object
      required:
      - id
      - manager_type
      - agent_ids
      - description
      title: Group
    XAIModelSettings:
      properties:
        max_output_tokens:
          type: integer
          title: Max Output Tokens
          description: The maximum number of tokens the model can generate.
          default: 4096
        parallel_tool_calls:
          type: boolean
          title: Parallel Tool Calls
          description: Whether to enable parallel tool calling.
          default: true
        provider_type:
          type: string
          const: xai
          title: Provider Type
          description: The type of the provider.
          default: xai
        temperature:
          type: number
          title: Temperature
          description: The temperature of the model.
          default: 0.7
        response_format:
          anyOf:
          - oneOf:
            - $ref: '#/components/schemas/TextResponseFormat'
            - $ref: '#/components/schemas/JsonSchemaResponseFormat'
            - $ref: '#/components/schemas/JsonObjectResponseFormat'
            discriminator:
              propertyName: type
              mapping:
                json_object: '#/components/schemas/JsonObjectResponseFormat'
                json_schema: '#/components/schemas/JsonSchemaResponseFormat'
                text: '#/components/schemas/TextResponseFormat'
          - type: 'null'
          title: Response Format
          description: The response format for the model.
      type: object
      title: XAIModelSettings
      description: xAI model configuration (OpenAI-compatible).
    Tool:
      properties:
        id:
          type: string
          pattern: ^tool-[a-fA-F0-9]{8}
          title: Id
          description: The human-friendly ID of the Tool
          examples:
          - tool-123e4567-e89b-12d3-a456-426614174000
        tool_type:
          $ref: '#/components/schemas/ToolType'
          description: The type of the tool.
          default: custom
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
          description: The description of the tool.
        source_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Type
          description: The type of the source code.
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
          description: The name of the function.
        tags:
          items:
            type: string
          type: array
          title: Tags
          description: Metadata tags.
          default: []
        source_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Code
          description: The source code of the function.
        json_schema:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Json Schema
          description: The JSON schema of the function.
        args_json_schema:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Args Json Schema
          description: The args JSON schema of the function.
        return_char_limit:
          type: integer
          maximum: 1000000
          minimum: 1
          title: Return Char Limit
          description: The maximum number of characters in the response.
          default: 50000
        pip_requirements:
          anyOf:
          - items:
              $ref: '#/components/schemas/PipRequirement'
            type: array
          - type: 'null'
          title: Pip Requirements
          description: Optional list of pip packages required by this tool.
        npm_requirements:
          anyOf:
          - items:
              $ref: '#/components/schemas/NpmRequirement'
            type: array
          - type: 'null'
          title: Npm Requirements
          description: Optional list of npm packages required by this tool.
        default_requires_approval:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Default Requires Approval
          description: Default value for whether or not executing this tool requires approval.
        enable_parallel_execution:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Enable Parallel Execution
          description: If set to True, then this tool will potentially be executed concurrently with other tools. Default False.
          default: false
        created_by_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Created By Id
          description: The id of the user that made this Tool.
        last_updated_by_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Updated By Id
          description: The id of the user that made this Tool.
        metadata_:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Metadata
          description: A dictionary of additional metadata for the tool.
        project_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Project Id
          description: The project id of the tool.
      additionalProperties: false
      type: object
      title: Tool
      description: Representation of a tool, which is a function that can be called by the agent.
    IdentityPropertyType:
      type: string
      enum:
      - string
      - number
      - boolean
      - json
      title: IdentityPropertyType
      description: Enum to represent the type of the identity property.
    TogetherModelSettings:
      properties:
        max_output_tokens:
          type: integer
          title: Max Output Tokens
          description: The maximum number of tokens the model can generate.
          default: 4096
        parallel_tool_calls:
          type: boolean
          title: Parallel Tool Calls
          description: Whether to enable parallel tool calling.
          default: true
        provider_type:
          type: string
          const: together
          title: Provider Type
          description: The type of the provider.
          default: together
        temperature:
          type: number
          title: Temperature
          description: The temperature of the model.
          default: 0.7
        response_format:
          anyOf:
          - oneOf:
            - $ref: '#/components/schemas/TextResponseFormat'
            - $ref: '#/components/schemas/JsonSchemaResponseFormat'
            - $ref: '#/components/schemas/JsonObjectResponseFormat'
            discriminator:
              propertyName: type
              mapping:
                json_object: '#/components/schemas/JsonObjectResponseFormat'
                json_schema: '#/components/schemas/JsonSchemaResponseFormat'
                text: '#/components/schemas/TextResponseFormat'
          - type: 'null'
          title: Response Format
          description: The response format for the model.
      type: object
      title: TogetherModelSettings
      description: Together AI model configuration (OpenAI-compatible).
    GroqModelSettings:
      properties:
        max_output_tokens:
          type: integer
          title: Max Output Tokens
          description: The maximum numb

# --- truncated at 32 KB (146 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/letta/refs/heads/main/openapi/letta-internal-templates-api-openapi.yml