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

# claude-fable-5-1

> Send text, images, prior assistant turns, and tool results. Claude Fable 5.1 can return text, thinking, and tool-use content blocks.

Adaptive thinking is always on. Omit `thinking` or set its type to `adaptive`, and use `output_config.effort` to control depth. Forced tool use and non-default sampling values return `400` errors.




## OpenAPI

````yaml api-reference/model-api/anthropic/openapi/claude-fable-5-1/openapi.yaml POST /v1/messages
openapi: 3.1.0
info:
  title: Claude Fable 5.1
  description: >-
    Use Anthropic Claude Fable 5.1 through AnyFast. The model has a 1M-token
    context window, supports up to 128K output tokens, and always uses adaptive
    thinking.
  version: 1.0.0
servers:
  - url: https://www.anyfast.ai
security:
  - bearerAuth: []
paths:
  /v1/messages:
    post:
      summary: Create a Message
      description: >
        Send text, images, prior assistant turns, and tool results. Claude Fable
        5.1 can return text, thinking, and tool-use content blocks.


        Adaptive thinking is always on. Omit `thinking` or set its type to
        `adaptive`, and use `output_config.effort` to control depth. Forced tool
        use and non-default sampling values return `400` errors.
      operationId: createMessageClaudeFable51
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - max_tokens
                - messages
              properties:
                model:
                  type: string
                  enum:
                    - claude-fable-5-1
                  description: Model ID.
                  example: claude-fable-5-1
                messages:
                  type: array
                  minItems: 1
                  description: >-
                    Conversation turns. Pass assistant content blocks, including
                    thinking blocks, back unchanged in multi-turn conversations.
                    Do not prefill the final assistant response.
                  items:
                    type: object
                    required:
                      - role
                      - content
                    properties:
                      role:
                        type: string
                        enum:
                          - user
                          - assistant
                        description: Message author.
                      content:
                        oneOf:
                          - type: string
                          - type: array
                            items:
                              type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - text
                                    - image
                                    - tool_result
                                    - thinking
                                    - tool_use
                                text:
                                  type: string
                                source:
                                  type: object
                                  properties:
                                    type:
                                      type: string
                                      enum:
                                        - base64
                                        - url
                                    media_type:
                                      type: string
                                    data:
                                      type: string
                                    url:
                                      type: string
                                      format: uri
                                tool_use_id:
                                  type: string
                                content:
                                  oneOf:
                                    - type: string
                                    - type: array
                                      items:
                                        type: object
                                is_error:
                                  type: boolean
                                thinking:
                                  type: string
                                signature:
                                  type: string
                                id:
                                  type: string
                                name:
                                  type: string
                                input:
                                  type: object
                                  additionalProperties: true
                        description: Text or an array of content blocks.
                  example:
                    - role: user
                      content: >-
                        Identify the highest-risk assumptions in this migration
                        plan.
                max_tokens:
                  type: integer
                  minimum: 1
                  maximum: 128000
                  description: >-
                    Maximum output tokens across thinking and visible response
                    text.
                  example: 4096
                system:
                  oneOf:
                    - type: string
                    - type: array
                      items:
                        type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - text
                          text:
                            type: string
                  description: >-
                    System prompt. Keep it byte-for-byte stable when replaying
                    Fable 5.1 thinking blocks.
                metadata:
                  type: object
                  properties:
                    user_id:
                      type: string
                      description: >-
                        External identifier for the user associated with the
                        request.
                  description: Request metadata.
                stop_sequences:
                  type: array
                  items:
                    type: string
                  description: Custom text sequences that stop generation.
                stream:
                  type: boolean
                  default: false
                  description: Stream message events over SSE.
                tools:
                  type: array
                  description: >-
                    Tool definitions available to the model. Keep this array
                    unchanged when replaying Fable 5.1 thinking blocks.
                  items:
                    type: object
                    required:
                      - name
                      - input_schema
                    properties:
                      name:
                        type: string
                        description: Tool name.
                      description:
                        type: string
                        description: What the tool does and when to use it.
                      input_schema:
                        type: object
                        description: JSON Schema for the tool input.
                        additionalProperties: true
                tool_choice:
                  type: object
                  required:
                    - type
                  properties:
                    type:
                      type: string
                      enum:
                        - auto
                        - none
                      default: auto
                      description: >-
                        `auto` lets Claude decide whether to call a tool; `none`
                        prevents tool calls. Forced `any` and named `tool`
                        choices return 400.
                  description: Controls whether the model may use tools.
                output_config:
                  type: object
                  properties:
                    effort:
                      type: string
                      enum:
                        - low
                        - medium
                        - high
                        - xhigh
                        - max
                      default: high
                      description: >-
                        Controls adaptive-thinking depth, latency, and token
                        use.
                  description: Output controls. Claude Fable 5.1 defaults to high effort.
                thinking:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - adaptive
                      default: adaptive
                      description: Adaptive is the only supported thinking mode.
                  description: >-
                    Omit this field or use adaptive thinking. Manual `enabled`
                    with `budget_tokens` and `disabled` return 400.
                temperature:
                  type: number
                  minimum: 1
                  maximum: 1
                  default: 1
                  deprecated: true
                  description: >-
                    Custom temperature is unsupported. Only 1 is accepted for
                    backward compatibility; omit this field normally.
                top_p:
                  type: number
                  minimum: 0.99
                  maximum: 1
                  default: 1
                  deprecated: true
                  description: >-
                    Custom nucleus sampling is unsupported. Values from 0.99 to
                    1 are accepted only for backward compatibility; omit this
                    field normally.
                top_k:
                  type: integer
                  deprecated: true
                  description: Unsupported. Any supplied value returns 400.
      responses:
        '200':
          description: >-
            Message created successfully. A safety-classifier refusal is also
            returned with HTTP 200 and `stop_reason` set to `refusal`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Message'
        '400':
          description: >-
            Invalid request, including unsupported thinking modes, forced tool
            use, assistant prefilling, non-default sampling, or invalidated
            thinking blocks.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      x-codeSamples:
        - lang: bash
          label: cURL
          source: |
            curl https://www.anyfast.ai/v1/messages \
              -H "Authorization: Bearer YOUR_API_KEY" \
              -H "Content-Type: application/json" \
              -d '{
                "model": "claude-fable-5-1",
                "max_tokens": 4096,
                "output_config": { "effort": "high" },
                "messages": [
                  { "role": "user", "content": "Identify the highest-risk assumptions in this migration plan." }
                ]
              }'
components:
  schemas:
    Message:
      type: object
      required:
        - id
        - type
        - role
        - content
        - model
        - stop_reason
        - usage
      properties:
        id:
          type: string
          example: msg_01XFDUDYJgAACzvnptvVoYEL
        type:
          type: string
          enum:
            - message
        role:
          type: string
          enum:
            - assistant
        content:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - text
                  - thinking
                  - tool_use
              text:
                type: string
              thinking:
                type: string
              signature:
                type: string
              id:
                type: string
              name:
                type: string
              input:
                type: object
                additionalProperties: true
          example:
            - type: text
              text: >-
                The highest-risk assumption is that every client can tolerate
                the planned cutover window.
        model:
          type: string
          example: claude-fable-5-1
        stop_reason:
          type: string
          enum:
            - end_turn
            - max_tokens
            - stop_sequence
            - tool_use
            - refusal
            - null
        stop_sequence:
          type: string
          nullable: true
        stop_details:
          type: object
          nullable: true
          additionalProperties: true
          description: Additional details for a refusal or other stop condition.
        usage:
          type: object
          properties:
            input_tokens:
              type: integer
            output_tokens:
              type: integer
            cache_creation_input_tokens:
              type: integer
            cache_read_input_tokens:
              type: integer
            cache_creation:
              type: object
              properties:
                ephemeral_1h_input_tokens:
                  type: integer
                ephemeral_5m_input_tokens:
                  type: integer
            output_tokens_details:
              type: object
              properties:
                thinking_tokens:
                  type: integer
    Error:
      type: object
      properties:
        type:
          type: string
          example: error
        error:
          type: object
          properties:
            type:
              type: string
              example: invalid_request_error
            message:
              type: string
              example: Invalid request parameters
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````