# Extraction Agents

## List Extract Agents

`client.ExtractionAgents.List(ctx, query) (*PaginatedCursor[ExtractAgent], error)`

**get** `/api/v1/beta/extraction-agents`

List the extraction agents in a project, newest first.

### Parameters

- `query ExtractionAgentListParams`

  - `IncludeDefault param.Field[bool]`

    Whether to include default agents in the results

  - `OrganizationID param.Field[string]`

  - `PageSize param.Field[int64]`

    Number of items per page

  - `PageToken param.Field[string]`

    Cursor from the previous page's `next_page_token`.

  - `ProjectID param.Field[string]`

### Returns

- `type ExtractAgent struct{…}`

  Schema and configuration for an extraction agent.

  - `ID string`

    The id of the extraction agent.

  - `Config ExtractAgentConfig`

    The configuration parameters for the extraction agent.

    - `ChunkMode string`

      The mode to use for chunking the document.

      - `const ExtractAgentConfigChunkModePage ExtractAgentConfigChunkMode = "PAGE"`

      - `const ExtractAgentConfigChunkModeSection ExtractAgentConfigChunkMode = "SECTION"`

    - `CitationBbox bool`

      Whether to fetch citation bounding boxes for the extraction. Only available in PREMIUM mode. Deprecated: this is now synonymous with cite_sources.

    - `CiteSources bool`

      Whether to cite sources for the extraction.

    - `ConfidenceScores bool`

      Whether to fetch confidence scores for the extraction.

    - `ExtractModel string`

      The extract model to use for data extraction. If not provided, uses the default for the extraction mode.

      - `string`

        - `const ExtractAgentConfigExtractModelGemini2_0Flash ExtractAgentConfigExtractModel = "gemini-2.0-flash"`

        - `const ExtractAgentConfigExtractModelGemini2_5Flash ExtractAgentConfigExtractModel = "gemini-2.5-flash"`

        - `const ExtractAgentConfigExtractModelGemini2_5FlashLite ExtractAgentConfigExtractModel = "gemini-2.5-flash-lite"`

        - `const ExtractAgentConfigExtractModelGemini2_5Pro ExtractAgentConfigExtractModel = "gemini-2.5-pro"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4_1 ExtractAgentConfigExtractModel = "openai-gpt-4-1"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4_1Mini ExtractAgentConfigExtractModel = "openai-gpt-4-1-mini"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4_1Nano ExtractAgentConfigExtractModel = "openai-gpt-4-1-nano"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4o ExtractAgentConfigExtractModel = "openai-gpt-4o"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4oMini ExtractAgentConfigExtractModel = "openai-gpt-4o-mini"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt5 ExtractAgentConfigExtractModel = "openai-gpt-5"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt5Mini ExtractAgentConfigExtractModel = "openai-gpt-5-mini"`

      - `string`

    - `ExtractionMode string`

      The extraction mode specified (FAST, BALANCED, MULTIMODAL, PREMIUM).

      - `const ExtractAgentConfigExtractionModeBalanced ExtractAgentConfigExtractionMode = "BALANCED"`

      - `const ExtractAgentConfigExtractionModeFast ExtractAgentConfigExtractionMode = "FAST"`

      - `const ExtractAgentConfigExtractionModeMultimodal ExtractAgentConfigExtractionMode = "MULTIMODAL"`

      - `const ExtractAgentConfigExtractionModePremium ExtractAgentConfigExtractionMode = "PREMIUM"`

    - `ExtractionTarget string`

      The extraction target specified.

      - `const ExtractAgentConfigExtractionTargetPerDoc ExtractAgentConfigExtractionTarget = "PER_DOC"`

      - `const ExtractAgentConfigExtractionTargetPerPage ExtractAgentConfigExtractionTarget = "PER_PAGE"`

      - `const ExtractAgentConfigExtractionTargetPerTableRow ExtractAgentConfigExtractionTarget = "PER_TABLE_ROW"`

    - `HighResolutionMode bool`

      Whether to use high resolution mode for the extraction.

    - `InvalidateCache bool`

      Whether to invalidate the cache for the extraction.

    - `MultimodalFastMode bool`

      DEPRECATED: Whether to use fast mode for multimodal extraction.

    - `NumPagesContext int64`

      Number of pages to pass as context on long document extraction.

    - `PageRange string`

      Comma-separated list of page numbers or ranges to extract from (1-based, e.g., '1,3,5-7,9' or '1-3,8-10').

    - `ParseModel string`

      Public model names.

      - `const ExtractAgentConfigParseModelAnthropicHaiku3_5 ExtractAgentConfigParseModel = "anthropic-haiku-3.5"`

      - `const ExtractAgentConfigParseModelAnthropicHaiku4_5 ExtractAgentConfigParseModel = "anthropic-haiku-4.5"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet3_5 ExtractAgentConfigParseModel = "anthropic-sonnet-3.5"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet3_5V2 ExtractAgentConfigParseModel = "anthropic-sonnet-3.5-v2"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet3_7 ExtractAgentConfigParseModel = "anthropic-sonnet-3.7"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet4_0 ExtractAgentConfigParseModel = "anthropic-sonnet-4.0"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet4_5 ExtractAgentConfigParseModel = "anthropic-sonnet-4.5"`

      - `const ExtractAgentConfigParseModelGemini2_0Flash ExtractAgentConfigParseModel = "gemini-2.0-flash"`

      - `const ExtractAgentConfigParseModelGemini2_0FlashLite ExtractAgentConfigParseModel = "gemini-2.0-flash-lite"`

      - `const ExtractAgentConfigParseModelGemini2_5Flash ExtractAgentConfigParseModel = "gemini-2.5-flash"`

      - `const ExtractAgentConfigParseModelGemini2_5FlashLite ExtractAgentConfigParseModel = "gemini-2.5-flash-lite"`

      - `const ExtractAgentConfigParseModelGemini2_5Pro ExtractAgentConfigParseModel = "gemini-2.5-pro"`

      - `const ExtractAgentConfigParseModelGemini3_0Pro ExtractAgentConfigParseModel = "gemini-3.0-pro"`

      - `const ExtractAgentConfigParseModelGemini3_1Pro ExtractAgentConfigParseModel = "gemini-3.1-pro"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4_1 ExtractAgentConfigParseModel = "openai-gpt-4-1"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4_1Mini ExtractAgentConfigParseModel = "openai-gpt-4-1-mini"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4_1Nano ExtractAgentConfigParseModel = "openai-gpt-4-1-nano"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4o ExtractAgentConfigParseModel = "openai-gpt-4o"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4oMini ExtractAgentConfigParseModel = "openai-gpt-4o-mini"`

      - `const ExtractAgentConfigParseModelOpenAIGpt5 ExtractAgentConfigParseModel = "openai-gpt-5"`

      - `const ExtractAgentConfigParseModelOpenAIGpt5Mini ExtractAgentConfigParseModel = "openai-gpt-5-mini"`

      - `const ExtractAgentConfigParseModelOpenAIGpt5Nano ExtractAgentConfigParseModel = "openai-gpt-5-nano"`

      - `const ExtractAgentConfigParseModelOpenAITextEmbedding3Large ExtractAgentConfigParseModel = "openai-text-embedding-3-large"`

      - `const ExtractAgentConfigParseModelOpenAITextEmbedding3Small ExtractAgentConfigParseModel = "openai-text-embedding-3-small"`

      - `const ExtractAgentConfigParseModelOpenAIWhisper1 ExtractAgentConfigParseModel = "openai-whisper-1"`

    - `Priority string`

      The priority for the request. This field may be ignored or overwritten depending on the organization tier.

      - `const ExtractAgentConfigPriorityCritical ExtractAgentConfigPriority = "critical"`

      - `const ExtractAgentConfigPriorityHigh ExtractAgentConfigPriority = "high"`

      - `const ExtractAgentConfigPriorityLow ExtractAgentConfigPriority = "low"`

      - `const ExtractAgentConfigPriorityMedium ExtractAgentConfigPriority = "medium"`

    - `SystemPrompt string`

      The system prompt to use for the extraction.

    - `UseReasoning bool`

      Whether to use reasoning for the extraction.

  - `DataSchema map[string, *ExtractAgentDataSchemaUnion]`

    The schema of the data.

    - `type ExtractAgentDataSchemaMap map[string, any]`

    - `type ExtractAgentDataSchemaArray []any`

    - `string`

    - `float64`

    - `bool`

  - `Name string`

    The name of the extraction agent.

  - `ProjectID string`

    The ID of the project that the extraction agent belongs to.

  - `CreatedAt Time`

    The creation time of the extraction agent.

  - `CustomConfiguration ExtractAgentCustomConfiguration`

    Custom configuration type for the extraction agent. Currently supports 'default'.

    - `const ExtractAgentCustomConfigurationDefault ExtractAgentCustomConfiguration = "default"`

  - `UpdatedAt Time`

    The last update time of the extraction agent.

### Example

```go
package main

import (
  "context"
  "fmt"

  "github.com/run-llama/llama-parse-go"
  "github.com/run-llama/llama-parse-go/option"
)

func main() {
  client := llamacloud.NewClient(
    option.WithAPIKey("My API Key"),
  )
  page, err := client.ExtractionAgents.List(context.TODO(), llamacloud.ExtractionAgentListParams{

  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", page)
}
```

#### Response

```json
{
  "items": [
    {
      "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "config": {
        "chunk_mode": "PAGE",
        "citation_bbox": true,
        "cite_sources": true,
        "confidence_scores": true,
        "extract_model": "gemini-2.0-flash",
        "extraction_mode": "BALANCED",
        "extraction_target": "PER_DOC",
        "high_resolution_mode": true,
        "invalidate_cache": true,
        "multimodal_fast_mode": true,
        "num_pages_context": 1,
        "page_range": "page_range",
        "parse_model": "anthropic-haiku-3.5",
        "priority": "critical",
        "system_prompt": "system_prompt",
        "use_reasoning": true
      },
      "data_schema": {
        "foo": {
          "foo": "bar"
        }
      },
      "name": "name",
      "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "created_at": "2019-12-27T18:11:19.117Z",
      "custom_configuration": "default",
      "updated_at": "2019-12-27T18:11:19.117Z"
    }
  ],
  "next_page_token": "next_page_token",
  "total_size": 0
}
```

## Domain Types

### Extract Agent

- `type ExtractAgent struct{…}`

  Schema and configuration for an extraction agent.

  - `ID string`

    The id of the extraction agent.

  - `Config ExtractAgentConfig`

    The configuration parameters for the extraction agent.

    - `ChunkMode string`

      The mode to use for chunking the document.

      - `const ExtractAgentConfigChunkModePage ExtractAgentConfigChunkMode = "PAGE"`

      - `const ExtractAgentConfigChunkModeSection ExtractAgentConfigChunkMode = "SECTION"`

    - `CitationBbox bool`

      Whether to fetch citation bounding boxes for the extraction. Only available in PREMIUM mode. Deprecated: this is now synonymous with cite_sources.

    - `CiteSources bool`

      Whether to cite sources for the extraction.

    - `ConfidenceScores bool`

      Whether to fetch confidence scores for the extraction.

    - `ExtractModel string`

      The extract model to use for data extraction. If not provided, uses the default for the extraction mode.

      - `string`

        - `const ExtractAgentConfigExtractModelGemini2_0Flash ExtractAgentConfigExtractModel = "gemini-2.0-flash"`

        - `const ExtractAgentConfigExtractModelGemini2_5Flash ExtractAgentConfigExtractModel = "gemini-2.5-flash"`

        - `const ExtractAgentConfigExtractModelGemini2_5FlashLite ExtractAgentConfigExtractModel = "gemini-2.5-flash-lite"`

        - `const ExtractAgentConfigExtractModelGemini2_5Pro ExtractAgentConfigExtractModel = "gemini-2.5-pro"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4_1 ExtractAgentConfigExtractModel = "openai-gpt-4-1"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4_1Mini ExtractAgentConfigExtractModel = "openai-gpt-4-1-mini"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4_1Nano ExtractAgentConfigExtractModel = "openai-gpt-4-1-nano"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4o ExtractAgentConfigExtractModel = "openai-gpt-4o"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt4oMini ExtractAgentConfigExtractModel = "openai-gpt-4o-mini"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt5 ExtractAgentConfigExtractModel = "openai-gpt-5"`

        - `const ExtractAgentConfigExtractModelOpenAIGpt5Mini ExtractAgentConfigExtractModel = "openai-gpt-5-mini"`

      - `string`

    - `ExtractionMode string`

      The extraction mode specified (FAST, BALANCED, MULTIMODAL, PREMIUM).

      - `const ExtractAgentConfigExtractionModeBalanced ExtractAgentConfigExtractionMode = "BALANCED"`

      - `const ExtractAgentConfigExtractionModeFast ExtractAgentConfigExtractionMode = "FAST"`

      - `const ExtractAgentConfigExtractionModeMultimodal ExtractAgentConfigExtractionMode = "MULTIMODAL"`

      - `const ExtractAgentConfigExtractionModePremium ExtractAgentConfigExtractionMode = "PREMIUM"`

    - `ExtractionTarget string`

      The extraction target specified.

      - `const ExtractAgentConfigExtractionTargetPerDoc ExtractAgentConfigExtractionTarget = "PER_DOC"`

      - `const ExtractAgentConfigExtractionTargetPerPage ExtractAgentConfigExtractionTarget = "PER_PAGE"`

      - `const ExtractAgentConfigExtractionTargetPerTableRow ExtractAgentConfigExtractionTarget = "PER_TABLE_ROW"`

    - `HighResolutionMode bool`

      Whether to use high resolution mode for the extraction.

    - `InvalidateCache bool`

      Whether to invalidate the cache for the extraction.

    - `MultimodalFastMode bool`

      DEPRECATED: Whether to use fast mode for multimodal extraction.

    - `NumPagesContext int64`

      Number of pages to pass as context on long document extraction.

    - `PageRange string`

      Comma-separated list of page numbers or ranges to extract from (1-based, e.g., '1,3,5-7,9' or '1-3,8-10').

    - `ParseModel string`

      Public model names.

      - `const ExtractAgentConfigParseModelAnthropicHaiku3_5 ExtractAgentConfigParseModel = "anthropic-haiku-3.5"`

      - `const ExtractAgentConfigParseModelAnthropicHaiku4_5 ExtractAgentConfigParseModel = "anthropic-haiku-4.5"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet3_5 ExtractAgentConfigParseModel = "anthropic-sonnet-3.5"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet3_5V2 ExtractAgentConfigParseModel = "anthropic-sonnet-3.5-v2"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet3_7 ExtractAgentConfigParseModel = "anthropic-sonnet-3.7"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet4_0 ExtractAgentConfigParseModel = "anthropic-sonnet-4.0"`

      - `const ExtractAgentConfigParseModelAnthropicSonnet4_5 ExtractAgentConfigParseModel = "anthropic-sonnet-4.5"`

      - `const ExtractAgentConfigParseModelGemini2_0Flash ExtractAgentConfigParseModel = "gemini-2.0-flash"`

      - `const ExtractAgentConfigParseModelGemini2_0FlashLite ExtractAgentConfigParseModel = "gemini-2.0-flash-lite"`

      - `const ExtractAgentConfigParseModelGemini2_5Flash ExtractAgentConfigParseModel = "gemini-2.5-flash"`

      - `const ExtractAgentConfigParseModelGemini2_5FlashLite ExtractAgentConfigParseModel = "gemini-2.5-flash-lite"`

      - `const ExtractAgentConfigParseModelGemini2_5Pro ExtractAgentConfigParseModel = "gemini-2.5-pro"`

      - `const ExtractAgentConfigParseModelGemini3_0Pro ExtractAgentConfigParseModel = "gemini-3.0-pro"`

      - `const ExtractAgentConfigParseModelGemini3_1Pro ExtractAgentConfigParseModel = "gemini-3.1-pro"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4_1 ExtractAgentConfigParseModel = "openai-gpt-4-1"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4_1Mini ExtractAgentConfigParseModel = "openai-gpt-4-1-mini"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4_1Nano ExtractAgentConfigParseModel = "openai-gpt-4-1-nano"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4o ExtractAgentConfigParseModel = "openai-gpt-4o"`

      - `const ExtractAgentConfigParseModelOpenAIGpt4oMini ExtractAgentConfigParseModel = "openai-gpt-4o-mini"`

      - `const ExtractAgentConfigParseModelOpenAIGpt5 ExtractAgentConfigParseModel = "openai-gpt-5"`

      - `const ExtractAgentConfigParseModelOpenAIGpt5Mini ExtractAgentConfigParseModel = "openai-gpt-5-mini"`

      - `const ExtractAgentConfigParseModelOpenAIGpt5Nano ExtractAgentConfigParseModel = "openai-gpt-5-nano"`

      - `const ExtractAgentConfigParseModelOpenAITextEmbedding3Large ExtractAgentConfigParseModel = "openai-text-embedding-3-large"`

      - `const ExtractAgentConfigParseModelOpenAITextEmbedding3Small ExtractAgentConfigParseModel = "openai-text-embedding-3-small"`

      - `const ExtractAgentConfigParseModelOpenAIWhisper1 ExtractAgentConfigParseModel = "openai-whisper-1"`

    - `Priority string`

      The priority for the request. This field may be ignored or overwritten depending on the organization tier.

      - `const ExtractAgentConfigPriorityCritical ExtractAgentConfigPriority = "critical"`

      - `const ExtractAgentConfigPriorityHigh ExtractAgentConfigPriority = "high"`

      - `const ExtractAgentConfigPriorityLow ExtractAgentConfigPriority = "low"`

      - `const ExtractAgentConfigPriorityMedium ExtractAgentConfigPriority = "medium"`

    - `SystemPrompt string`

      The system prompt to use for the extraction.

    - `UseReasoning bool`

      Whether to use reasoning for the extraction.

  - `DataSchema map[string, *ExtractAgentDataSchemaUnion]`

    The schema of the data.

    - `type ExtractAgentDataSchemaMap map[string, any]`

    - `type ExtractAgentDataSchemaArray []any`

    - `string`

    - `float64`

    - `bool`

  - `Name string`

    The name of the extraction agent.

  - `ProjectID string`

    The ID of the project that the extraction agent belongs to.

  - `CreatedAt Time`

    The creation time of the extraction agent.

  - `CustomConfiguration ExtractAgentCustomConfiguration`

    Custom configuration type for the extraction agent. Currently supports 'default'.

    - `const ExtractAgentCustomConfigurationDefault ExtractAgentCustomConfiguration = "default"`

  - `UpdatedAt Time`

    The last update time of the extraction agent.
