> ## Documentation Index
> Fetch the complete documentation index at: https://docs.deepmako.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Chat Completions

> Send messages to Mako and receive a response with autonomous tool orchestration.



## OpenAPI

````yaml POST /v1/chat/completions
openapi: 3.0.3
info:
  title: Mako API
  description: >-
    OpenAI-compatible API with autonomous tool orchestration for on-chain data,
    web search, and more.
  version: 1.0.0
  contact:
    name: DeepMako
    url: https://deepmako.com
servers:
  - url: https://gateway.deepmako.com
    description: Production
security:
  - walletAddress: []
    bearerAuth: []
paths:
  /v1/chat/completions:
    post:
      tags:
        - Endpoints
      summary: Chat Completions
      description: >-
        Send messages to Mako and receive a response. Tool calling is handled
        server-side — the response you receive is the final answer after all
        tools have been executed.
      operationId: chatCompletions
      parameters:
        - name: x-wallet-address
          in: header
          required: true
          description: Your EVM wallet address for authentication and credit tracking.
          schema:
            type: string
            example: '0x0000000000000000000000000000000000000001'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - messages
              properties:
                model:
                  type: string
                  default: conductor
                  description: >-
                    Model alias or canonical ID. Aliases: `conductor`
                    (Mako-32B), `operator` (Mako-8B). Canonical IDs
                    (`mako-32b-conductor`, `mako-8b-operator`) are also
                    accepted.
                  example: conductor
                messages:
                  type: array
                  description: Array of message objects with `role` and `content`.
                  items:
                    type: object
                    required:
                      - role
                      - content
                    properties:
                      role:
                        type: string
                        enum:
                          - system
                          - user
                          - assistant
                        description: The role of the message author.
                      content:
                        type: string
                        description: The content of the message.
                  example:
                    - role: user
                      content: what is happening with Virtuals launches on Base?
                stream:
                  type: boolean
                  default: false
                  description: Enable Server-Sent Events streaming.
                temperature:
                  type: number
                  default: 0.7
                  description: Sampling temperature (0.0 to 2.0).
      responses:
        '200':
          description: Chat completion response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    example: chatcmpl-1718464968543
                  object:
                    type: string
                    example: chat.completion
                  model:
                    type: string
                    example: mako-32b-conductor
                  choices:
                    type: array
                    items:
                      type: object
                      properties:
                        index:
                          type: integer
                        message:
                          type: object
                          properties:
                            role:
                              type: string
                              example: assistant
                            content:
                              type: string
                              example: >-
                                Virtuals Protocol has been one of the most
                                active launch platforms on Base recently...
                        finish_reason:
                          type: string
                          example: stop
                  usage:
                    type: object
                    properties:
                      prompt_tokens:
                        type: integer
                        example: 1931
                      completion_tokens:
                        type: integer
                        example: 63
                      total_tokens:
                        type: integer
                        example: 1994
        '401':
          description: Missing wallet address or invalid API key.
        '402':
          description: Insufficient credits.
        '502':
          description: Model backend error or cold start.
components:
  securitySchemes:
    walletAddress:
      type: apiKey
      in: header
      name: x-wallet-address
      description: Your EVM wallet address for authentication and credit tracking.
    bearerAuth:
      type: http
      scheme: bearer
      description: API key obtained from the gateway. Not required in free mode.

````