# Sheets

## Create Spreadsheet Job

`client.Sheets.New(ctx, params) (*SheetsJob, error)`

**post** `/api/v1/sheets/jobs`

Create a spreadsheet parsing job.

Provide at most one of `configuration` (an inline parsing configuration) or
`configuration_id` (a saved configuration preset). If neither is provided, a
default configuration is used. Optionally include `webhook_configurations`
to receive `sheets.*` status notifications.

### Parameters

- `params SheetNewParams`

  - `FileID param.Field[string]`

    Body param: The ID of the file to parse

  - `OrganizationID param.Field[string]`

    Query param

  - `ProjectID param.Field[string]`

    Query param

  - `Config param.Field[SheetsParsingConfig]`

    Body param: Configuration for spreadsheet parsing and region extraction

  - `Configuration param.Field[SheetsParsingConfig]`

    Body param: Configuration for spreadsheet parsing and region extraction

  - `ConfigurationID param.Field[string]`

    Body param: Saved configuration ID

  - `WebhookConfigurations param.Field[[]SheetNewParamsWebhookConfiguration]`

    Body param: Outbound webhook endpoints to notify on job status changes

    - `WebhookEvents []string`

      Events to subscribe to (e.g. 'parse.success', 'extract.error'). If null, all events are delivered.

      - `const SheetNewParamsWebhookConfigurationWebhookEventClassifyCancelled SheetNewParamsWebhookConfigurationWebhookEvent = "classify.cancelled"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventClassifyError SheetNewParamsWebhookConfigurationWebhookEvent = "classify.error"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventClassifyPartialSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "classify.partial_success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventClassifyPending SheetNewParamsWebhookConfigurationWebhookEvent = "classify.pending"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventClassifyRunning SheetNewParamsWebhookConfigurationWebhookEvent = "classify.running"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventClassifySuccess SheetNewParamsWebhookConfigurationWebhookEvent = "classify.success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventExtractCancelled SheetNewParamsWebhookConfigurationWebhookEvent = "extract.cancelled"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventExtractError SheetNewParamsWebhookConfigurationWebhookEvent = "extract.error"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventExtractPartialSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "extract.partial_success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventExtractPending SheetNewParamsWebhookConfigurationWebhookEvent = "extract.pending"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventExtractSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "extract.success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventParseCancelled SheetNewParamsWebhookConfigurationWebhookEvent = "parse.cancelled"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventParseError SheetNewParamsWebhookConfigurationWebhookEvent = "parse.error"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventParsePartialSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "parse.partial_success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventParsePending SheetNewParamsWebhookConfigurationWebhookEvent = "parse.pending"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventParseRunning SheetNewParamsWebhookConfigurationWebhookEvent = "parse.running"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventParseSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "parse.success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSheetsCancelled SheetNewParamsWebhookConfigurationWebhookEvent = "sheets.cancelled"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSheetsError SheetNewParamsWebhookConfigurationWebhookEvent = "sheets.error"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSheetsPartialSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "sheets.partial_success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSheetsPending SheetNewParamsWebhookConfigurationWebhookEvent = "sheets.pending"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSheetsSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "sheets.success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSplitCancelled SheetNewParamsWebhookConfigurationWebhookEvent = "split.cancelled"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSplitError SheetNewParamsWebhookConfigurationWebhookEvent = "split.error"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSplitPending SheetNewParamsWebhookConfigurationWebhookEvent = "split.pending"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSplitProcessing SheetNewParamsWebhookConfigurationWebhookEvent = "split.processing"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventSplitSuccess SheetNewParamsWebhookConfigurationWebhookEvent = "split.success"`

      - `const SheetNewParamsWebhookConfigurationWebhookEventUnmappedEvent SheetNewParamsWebhookConfigurationWebhookEvent = "unmapped_event"`

    - `WebhookHeaders map[string, string]`

      Custom HTTP headers sent with each webhook request (e.g. auth tokens)

    - `WebhookOutputFormat string`

      Response format sent to the webhook: 'string' (default) or 'json'

    - `WebhookSigningSecret string`

      Shared signing secret used to sign webhook deliveries. When set, each request includes an HMAC-SHA256 signature of the request body in the 'LC-Signature' header (value 'sha256=<hex>'). Recompute the HMAC over the raw request body with this secret to verify the delivery is authentic.

    - `WebhookURL string`

      URL to receive webhook POST notifications

### Returns

- `type SheetsJob struct{…}`

  A spreadsheet parsing job.

  - `ID string`

    The ID of the job

  - `Configuration SheetsParsingConfig`

    Configuration applied to the parsing job (inline or resolved from a saved preset).

    - `ExtractionRange string`

      A1 notation of the range to extract a single region from. If None, the entire sheet is used.

    - `FlattenHierarchicalTables bool`

      Return a flattened dataframe when a detected table is recognized as hierarchical.

    - `GenerateAdditionalMetadata bool`

      Deprecated: controlled by `tier`. Whether to generate additional metadata (title, description) for each extracted region. Honored only on `agentic`.

    - `IncludeHiddenCells bool`

      Whether to include hidden cells when extracting regions from the spreadsheet.

    - `SheetNames []string`

      The names of the sheets to extract regions from. If empty, all sheets will be processed.

    - `Specialization string`

      Deprecated: controlled by `tier`. Optional specialization mode for domain-specific extraction. Supported values: 'financial-standard', 'financial-enhanced', 'financial-precise'. Default None uses the general-purpose pipeline. Honored only on `agentic`.

    - `TableMergeSensitivity SheetsParsingConfigTableMergeSensitivity`

      Deprecated: controlled by `tier`. Influences how likely similar-looking regions are merged into a single table. Honored only on `agentic`.

      - `const SheetsParsingConfigTableMergeSensitivityStrong SheetsParsingConfigTableMergeSensitivity = "strong"`

      - `const SheetsParsingConfigTableMergeSensitivityWeak SheetsParsingConfigTableMergeSensitivity = "weak"`

    - `Tier SheetsParsingConfigTier`

      Spreadsheet extraction tier. `cost_effective` uses the rule-based/ML-only pipeline; `agentic` uses the full pipeline.

      - `const SheetsParsingConfigTierAgentic SheetsParsingConfigTier = "agentic"`

      - `const SheetsParsingConfigTierCostEffective SheetsParsingConfigTier = "cost_effective"`

    - `UseExperimentalProcessing bool`

      Deprecated: controlled by `tier`. Enables experimental processing. Honored only on `agentic`.

  - `CreatedAt string`

    When the job was created

  - `FileID string`

    The ID of the input file

  - `ProjectID string`

    The ID of the project

  - `Status SheetsJobStatus`

    The status of the parsing job

    - `const SheetsJobStatusCancelled SheetsJobStatus = "CANCELLED"`

    - `const SheetsJobStatusError SheetsJobStatus = "ERROR"`

    - `const SheetsJobStatusPartialSuccess SheetsJobStatus = "PARTIAL_SUCCESS"`

    - `const SheetsJobStatusPending SheetsJobStatus = "PENDING"`

    - `const SheetsJobStatusSuccess SheetsJobStatus = "SUCCESS"`

  - `UpdatedAt string`

    When the job was last updated

  - `UserID string`

    The ID of the user

  - `Config SheetsParsingConfig`

    Configuration for spreadsheet parsing and region extraction

  - `ConfigurationID string`

    The saved product configuration ID used at create time, if any.

  - `Errors []string`

    Any errors encountered

  - `File File`

    Schema for a file.

    - `ID string`

      Unique identifier

    - `Name string`

    - `ProjectID string`

      The ID of the project that the file belongs to

    - `CreatedAt Time`

      Creation datetime

    - `DataSourceID string`

      The ID of the data source that the file belongs to

    - `ExpiresAt Time`

      The expiration date for the file. Files past this date can be deleted.

    - `ExternalFileID string`

      The ID of the file in the external system

    - `FileSize int64`

      Size of the file in bytes

    - `FileType string`

      File type (e.g. pdf, docx, etc.)

    - `LastModifiedAt Time`

      The last modified time of the file

    - `PermissionInfo map[string, *FilePermissionInfoUnion]`

      Permission information for the file

      - `type FilePermissionInfoMap map[string, any]`

      - `type FilePermissionInfoArray []any`

      - `string`

      - `float64`

      - `bool`

    - `Purpose string`

      The intended purpose of the file (e.g., 'user_data', 'parse', 'extract', 'split', 'classify')

    - `ResourceInfo map[string, *FileResourceInfoUnion]`

      Resource information for the file

      - `type FileResourceInfoMap map[string, any]`

      - `type FileResourceInfoArray []any`

      - `string`

      - `float64`

      - `bool`

    - `UpdatedAt Time`

      Update datetime

  - `MetadataStateTransitions map[string, any]`

    Per-status entry timestamps. Returned only when requested via `?expand=metadata_state_transitions`.

  - `Parameters SheetsJobParameters`

    Job-time parameters such as webhook configurations.

    - `WebhookConfigurations []SheetsJobParametersWebhookConfiguration`

      Webhook configurations for job status notifications.

      - `WebhookEvents []string`

        Events to subscribe to (e.g. 'parse.success', 'extract.error'). If null, all events are delivered.

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyError SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyPending SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyRunning SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.running"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifySuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractError SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractPending SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseError SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParsePartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParsePending SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseRunning SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.running"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsError SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsPending SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "split.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitError SheetsJobParametersWebhookConfigurationWebhookEvent = "split.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitPending SheetsJobParametersWebhookConfigurationWebhookEvent = "split.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitProcessing SheetsJobParametersWebhookConfigurationWebhookEvent = "split.processing"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "split.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventUnmappedEvent SheetsJobParametersWebhookConfigurationWebhookEvent = "unmapped_event"`

      - `WebhookHeaders map[string, string]`

        Custom HTTP headers sent with each webhook request (e.g. auth tokens)

      - `WebhookOutputFormat string`

        Response format sent to the webhook: 'string' (default) or 'json'

      - `WebhookSigningSecret string`

        Shared signing secret used to sign webhook deliveries. When set, each request includes an HMAC-SHA256 signature of the request body in the 'LC-Signature' header (value 'sha256=<hex>'). Recompute the HMAC over the raw request body with this secret to verify the delivery is authentic.

      - `WebhookURL string`

        URL to receive webhook POST notifications

  - `Regions []SheetsJobRegion`

    All extracted regions (populated when job is complete)

    - `Location string`

      Location of the region in the spreadsheet

    - `RegionType string`

      Type of the extracted region

    - `SheetName string`

      Worksheet name where region was found

    - `Description string`

      Generated description for the region

    - `RegionID string`

      Unique identifier for this region within the file

    - `Title string`

      Generated title for the region

  - `Success bool`

    Whether the job completed successfully

  - `WorksheetMetadata []SheetsJobWorksheetMetadata`

    Metadata for each processed worksheet (populated when job is complete)

    - `SheetName string`

      Name of the worksheet

    - `Description string`

      Generated description of the worksheet

    - `Title string`

      Generated title for the worksheet

### 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"),
  )
  sheetsJob, err := client.Sheets.New(context.TODO(), llamacloud.SheetNewParams{
    FileID: "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", sheetsJob.ID)
}
```

#### Response

```json
{
  "id": "id",
  "configuration": {
    "extraction_range": "extraction_range",
    "flatten_hierarchical_tables": true,
    "generate_additional_metadata": true,
    "include_hidden_cells": true,
    "sheet_names": [
      "string"
    ],
    "specialization": "specialization",
    "table_merge_sensitivity": "strong",
    "tier": "agentic",
    "use_experimental_processing": true
  },
  "created_at": "created_at",
  "file_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "status": "CANCELLED",
  "updated_at": "updated_at",
  "user_id": "user_id",
  "config": {
    "extraction_range": "extraction_range",
    "flatten_hierarchical_tables": true,
    "generate_additional_metadata": true,
    "include_hidden_cells": true,
    "sheet_names": [
      "string"
    ],
    "specialization": "specialization",
    "table_merge_sensitivity": "strong",
    "tier": "agentic",
    "use_experimental_processing": true
  },
  "configuration_id": "configuration_id",
  "errors": [
    "string"
  ],
  "file": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "name": "x",
    "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "created_at": "2019-12-27T18:11:19.117Z",
    "data_source_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "expires_at": "2019-12-27T18:11:19.117Z",
    "external_file_id": "external_file_id",
    "file_size": 0,
    "file_type": "x",
    "last_modified_at": "2019-12-27T18:11:19.117Z",
    "permission_info": {
      "foo": {
        "foo": "bar"
      }
    },
    "purpose": "purpose",
    "resource_info": {
      "foo": {
        "foo": "bar"
      }
    },
    "updated_at": "2019-12-27T18:11:19.117Z"
  },
  "metadata_state_transitions": {
    "foo": "bar"
  },
  "parameters": {
    "webhook_configurations": [
      {
        "webhook_events": [
          "parse.success",
          "parse.error"
        ],
        "webhook_headers": {
          "Authorization": "Bearer sk-..."
        },
        "webhook_output_format": "json",
        "webhook_signing_secret": "whsec_...",
        "webhook_url": "https://example.com/webhooks/llamacloud"
      }
    ]
  },
  "regions": [
    {
      "location": "location",
      "region_type": "region_type",
      "sheet_name": "sheet_name",
      "description": "description",
      "region_id": "region_id",
      "title": "title"
    }
  ],
  "success": true,
  "worksheet_metadata": [
    {
      "sheet_name": "sheet_name",
      "description": "description",
      "title": "title"
    }
  ]
}
```

## List Spreadsheet Jobs

`client.Sheets.List(ctx, query) (*PaginatedCursor[SheetsJob], error)`

**get** `/api/v1/sheets/jobs`

List spreadsheet parsing jobs.

### Parameters

- `query SheetListParams`

  - `ConfigurationID param.Field[string]`

    Filter by saved configuration ID

  - `CreatedAtOnOrAfter param.Field[Time]`

    Include items created at or after this timestamp (inclusive)

  - `CreatedAtOnOrBefore param.Field[Time]`

    Include items created at or before this timestamp (inclusive)

  - `IncludeResults param.Field[bool]`

  - `JobIDs param.Field[[]string]`

    Filter by specific job IDs

  - `OrganizationID param.Field[string]`

  - `PageSize param.Field[int64]`

  - `PageToken param.Field[string]`

  - `ProjectID param.Field[string]`

  - `Status param.Field[SheetListParamsStatus]`

    Filter by job status

    - `const SheetListParamsStatusCancelled SheetListParamsStatus = "CANCELLED"`

    - `const SheetListParamsStatusError SheetListParamsStatus = "ERROR"`

    - `const SheetListParamsStatusPartialSuccess SheetListParamsStatus = "PARTIAL_SUCCESS"`

    - `const SheetListParamsStatusPending SheetListParamsStatus = "PENDING"`

    - `const SheetListParamsStatusSuccess SheetListParamsStatus = "SUCCESS"`

### Returns

- `type SheetsJob struct{…}`

  A spreadsheet parsing job.

  - `ID string`

    The ID of the job

  - `Configuration SheetsParsingConfig`

    Configuration applied to the parsing job (inline or resolved from a saved preset).

    - `ExtractionRange string`

      A1 notation of the range to extract a single region from. If None, the entire sheet is used.

    - `FlattenHierarchicalTables bool`

      Return a flattened dataframe when a detected table is recognized as hierarchical.

    - `GenerateAdditionalMetadata bool`

      Deprecated: controlled by `tier`. Whether to generate additional metadata (title, description) for each extracted region. Honored only on `agentic`.

    - `IncludeHiddenCells bool`

      Whether to include hidden cells when extracting regions from the spreadsheet.

    - `SheetNames []string`

      The names of the sheets to extract regions from. If empty, all sheets will be processed.

    - `Specialization string`

      Deprecated: controlled by `tier`. Optional specialization mode for domain-specific extraction. Supported values: 'financial-standard', 'financial-enhanced', 'financial-precise'. Default None uses the general-purpose pipeline. Honored only on `agentic`.

    - `TableMergeSensitivity SheetsParsingConfigTableMergeSensitivity`

      Deprecated: controlled by `tier`. Influences how likely similar-looking regions are merged into a single table. Honored only on `agentic`.

      - `const SheetsParsingConfigTableMergeSensitivityStrong SheetsParsingConfigTableMergeSensitivity = "strong"`

      - `const SheetsParsingConfigTableMergeSensitivityWeak SheetsParsingConfigTableMergeSensitivity = "weak"`

    - `Tier SheetsParsingConfigTier`

      Spreadsheet extraction tier. `cost_effective` uses the rule-based/ML-only pipeline; `agentic` uses the full pipeline.

      - `const SheetsParsingConfigTierAgentic SheetsParsingConfigTier = "agentic"`

      - `const SheetsParsingConfigTierCostEffective SheetsParsingConfigTier = "cost_effective"`

    - `UseExperimentalProcessing bool`

      Deprecated: controlled by `tier`. Enables experimental processing. Honored only on `agentic`.

  - `CreatedAt string`

    When the job was created

  - `FileID string`

    The ID of the input file

  - `ProjectID string`

    The ID of the project

  - `Status SheetsJobStatus`

    The status of the parsing job

    - `const SheetsJobStatusCancelled SheetsJobStatus = "CANCELLED"`

    - `const SheetsJobStatusError SheetsJobStatus = "ERROR"`

    - `const SheetsJobStatusPartialSuccess SheetsJobStatus = "PARTIAL_SUCCESS"`

    - `const SheetsJobStatusPending SheetsJobStatus = "PENDING"`

    - `const SheetsJobStatusSuccess SheetsJobStatus = "SUCCESS"`

  - `UpdatedAt string`

    When the job was last updated

  - `UserID string`

    The ID of the user

  - `Config SheetsParsingConfig`

    Configuration for spreadsheet parsing and region extraction

  - `ConfigurationID string`

    The saved product configuration ID used at create time, if any.

  - `Errors []string`

    Any errors encountered

  - `File File`

    Schema for a file.

    - `ID string`

      Unique identifier

    - `Name string`

    - `ProjectID string`

      The ID of the project that the file belongs to

    - `CreatedAt Time`

      Creation datetime

    - `DataSourceID string`

      The ID of the data source that the file belongs to

    - `ExpiresAt Time`

      The expiration date for the file. Files past this date can be deleted.

    - `ExternalFileID string`

      The ID of the file in the external system

    - `FileSize int64`

      Size of the file in bytes

    - `FileType string`

      File type (e.g. pdf, docx, etc.)

    - `LastModifiedAt Time`

      The last modified time of the file

    - `PermissionInfo map[string, *FilePermissionInfoUnion]`

      Permission information for the file

      - `type FilePermissionInfoMap map[string, any]`

      - `type FilePermissionInfoArray []any`

      - `string`

      - `float64`

      - `bool`

    - `Purpose string`

      The intended purpose of the file (e.g., 'user_data', 'parse', 'extract', 'split', 'classify')

    - `ResourceInfo map[string, *FileResourceInfoUnion]`

      Resource information for the file

      - `type FileResourceInfoMap map[string, any]`

      - `type FileResourceInfoArray []any`

      - `string`

      - `float64`

      - `bool`

    - `UpdatedAt Time`

      Update datetime

  - `MetadataStateTransitions map[string, any]`

    Per-status entry timestamps. Returned only when requested via `?expand=metadata_state_transitions`.

  - `Parameters SheetsJobParameters`

    Job-time parameters such as webhook configurations.

    - `WebhookConfigurations []SheetsJobParametersWebhookConfiguration`

      Webhook configurations for job status notifications.

      - `WebhookEvents []string`

        Events to subscribe to (e.g. 'parse.success', 'extract.error'). If null, all events are delivered.

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyError SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyPending SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyRunning SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.running"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifySuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractError SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractPending SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseError SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParsePartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParsePending SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseRunning SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.running"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsError SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsPending SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "split.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitError SheetsJobParametersWebhookConfigurationWebhookEvent = "split.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitPending SheetsJobParametersWebhookConfigurationWebhookEvent = "split.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitProcessing SheetsJobParametersWebhookConfigurationWebhookEvent = "split.processing"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "split.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventUnmappedEvent SheetsJobParametersWebhookConfigurationWebhookEvent = "unmapped_event"`

      - `WebhookHeaders map[string, string]`

        Custom HTTP headers sent with each webhook request (e.g. auth tokens)

      - `WebhookOutputFormat string`

        Response format sent to the webhook: 'string' (default) or 'json'

      - `WebhookSigningSecret string`

        Shared signing secret used to sign webhook deliveries. When set, each request includes an HMAC-SHA256 signature of the request body in the 'LC-Signature' header (value 'sha256=<hex>'). Recompute the HMAC over the raw request body with this secret to verify the delivery is authentic.

      - `WebhookURL string`

        URL to receive webhook POST notifications

  - `Regions []SheetsJobRegion`

    All extracted regions (populated when job is complete)

    - `Location string`

      Location of the region in the spreadsheet

    - `RegionType string`

      Type of the extracted region

    - `SheetName string`

      Worksheet name where region was found

    - `Description string`

      Generated description for the region

    - `RegionID string`

      Unique identifier for this region within the file

    - `Title string`

      Generated title for the region

  - `Success bool`

    Whether the job completed successfully

  - `WorksheetMetadata []SheetsJobWorksheetMetadata`

    Metadata for each processed worksheet (populated when job is complete)

    - `SheetName string`

      Name of the worksheet

    - `Description string`

      Generated description of the worksheet

    - `Title string`

      Generated title for the worksheet

### 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.Sheets.List(context.TODO(), llamacloud.SheetListParams{

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

#### Response

```json
{
  "items": [
    {
      "id": "id",
      "configuration": {
        "extraction_range": "extraction_range",
        "flatten_hierarchical_tables": true,
        "generate_additional_metadata": true,
        "include_hidden_cells": true,
        "sheet_names": [
          "string"
        ],
        "specialization": "specialization",
        "table_merge_sensitivity": "strong",
        "tier": "agentic",
        "use_experimental_processing": true
      },
      "created_at": "created_at",
      "file_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "status": "CANCELLED",
      "updated_at": "updated_at",
      "user_id": "user_id",
      "config": {
        "extraction_range": "extraction_range",
        "flatten_hierarchical_tables": true,
        "generate_additional_metadata": true,
        "include_hidden_cells": true,
        "sheet_names": [
          "string"
        ],
        "specialization": "specialization",
        "table_merge_sensitivity": "strong",
        "tier": "agentic",
        "use_experimental_processing": true
      },
      "configuration_id": "configuration_id",
      "errors": [
        "string"
      ],
      "file": {
        "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "name": "x",
        "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "created_at": "2019-12-27T18:11:19.117Z",
        "data_source_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "expires_at": "2019-12-27T18:11:19.117Z",
        "external_file_id": "external_file_id",
        "file_size": 0,
        "file_type": "x",
        "last_modified_at": "2019-12-27T18:11:19.117Z",
        "permission_info": {
          "foo": {
            "foo": "bar"
          }
        },
        "purpose": "purpose",
        "resource_info": {
          "foo": {
            "foo": "bar"
          }
        },
        "updated_at": "2019-12-27T18:11:19.117Z"
      },
      "metadata_state_transitions": {
        "foo": "bar"
      },
      "parameters": {
        "webhook_configurations": [
          {
            "webhook_events": [
              "parse.success",
              "parse.error"
            ],
            "webhook_headers": {
              "Authorization": "Bearer sk-..."
            },
            "webhook_output_format": "json",
            "webhook_signing_secret": "whsec_...",
            "webhook_url": "https://example.com/webhooks/llamacloud"
          }
        ]
      },
      "regions": [
        {
          "location": "location",
          "region_type": "region_type",
          "sheet_name": "sheet_name",
          "description": "description",
          "region_id": "region_id",
          "title": "title"
        }
      ],
      "success": true,
      "worksheet_metadata": [
        {
          "sheet_name": "sheet_name",
          "description": "description",
          "title": "title"
        }
      ]
    }
  ],
  "next_page_token": "next_page_token",
  "total_size": 0
}
```

## Get Spreadsheet Job

`client.Sheets.Get(ctx, spreadsheetJobID, query) (*SheetsJob, error)`

**get** `/api/v1/sheets/jobs/{spreadsheet_job_id}`

Get a spreadsheet parsing job. When `include_results=True` (default), embeds extracted regions and results if complete, skipping the separate `/results` call.

### Parameters

- `spreadsheetJobID string`

- `query SheetGetParams`

  - `Expand param.Field[[]string]`

    Optional fields to populate on the response. Valid values: metadata_state_transitions.

  - `IncludeResults param.Field[bool]`

  - `OrganizationID param.Field[string]`

  - `ProjectID param.Field[string]`

### Returns

- `type SheetsJob struct{…}`

  A spreadsheet parsing job.

  - `ID string`

    The ID of the job

  - `Configuration SheetsParsingConfig`

    Configuration applied to the parsing job (inline or resolved from a saved preset).

    - `ExtractionRange string`

      A1 notation of the range to extract a single region from. If None, the entire sheet is used.

    - `FlattenHierarchicalTables bool`

      Return a flattened dataframe when a detected table is recognized as hierarchical.

    - `GenerateAdditionalMetadata bool`

      Deprecated: controlled by `tier`. Whether to generate additional metadata (title, description) for each extracted region. Honored only on `agentic`.

    - `IncludeHiddenCells bool`

      Whether to include hidden cells when extracting regions from the spreadsheet.

    - `SheetNames []string`

      The names of the sheets to extract regions from. If empty, all sheets will be processed.

    - `Specialization string`

      Deprecated: controlled by `tier`. Optional specialization mode for domain-specific extraction. Supported values: 'financial-standard', 'financial-enhanced', 'financial-precise'. Default None uses the general-purpose pipeline. Honored only on `agentic`.

    - `TableMergeSensitivity SheetsParsingConfigTableMergeSensitivity`

      Deprecated: controlled by `tier`. Influences how likely similar-looking regions are merged into a single table. Honored only on `agentic`.

      - `const SheetsParsingConfigTableMergeSensitivityStrong SheetsParsingConfigTableMergeSensitivity = "strong"`

      - `const SheetsParsingConfigTableMergeSensitivityWeak SheetsParsingConfigTableMergeSensitivity = "weak"`

    - `Tier SheetsParsingConfigTier`

      Spreadsheet extraction tier. `cost_effective` uses the rule-based/ML-only pipeline; `agentic` uses the full pipeline.

      - `const SheetsParsingConfigTierAgentic SheetsParsingConfigTier = "agentic"`

      - `const SheetsParsingConfigTierCostEffective SheetsParsingConfigTier = "cost_effective"`

    - `UseExperimentalProcessing bool`

      Deprecated: controlled by `tier`. Enables experimental processing. Honored only on `agentic`.

  - `CreatedAt string`

    When the job was created

  - `FileID string`

    The ID of the input file

  - `ProjectID string`

    The ID of the project

  - `Status SheetsJobStatus`

    The status of the parsing job

    - `const SheetsJobStatusCancelled SheetsJobStatus = "CANCELLED"`

    - `const SheetsJobStatusError SheetsJobStatus = "ERROR"`

    - `const SheetsJobStatusPartialSuccess SheetsJobStatus = "PARTIAL_SUCCESS"`

    - `const SheetsJobStatusPending SheetsJobStatus = "PENDING"`

    - `const SheetsJobStatusSuccess SheetsJobStatus = "SUCCESS"`

  - `UpdatedAt string`

    When the job was last updated

  - `UserID string`

    The ID of the user

  - `Config SheetsParsingConfig`

    Configuration for spreadsheet parsing and region extraction

  - `ConfigurationID string`

    The saved product configuration ID used at create time, if any.

  - `Errors []string`

    Any errors encountered

  - `File File`

    Schema for a file.

    - `ID string`

      Unique identifier

    - `Name string`

    - `ProjectID string`

      The ID of the project that the file belongs to

    - `CreatedAt Time`

      Creation datetime

    - `DataSourceID string`

      The ID of the data source that the file belongs to

    - `ExpiresAt Time`

      The expiration date for the file. Files past this date can be deleted.

    - `ExternalFileID string`

      The ID of the file in the external system

    - `FileSize int64`

      Size of the file in bytes

    - `FileType string`

      File type (e.g. pdf, docx, etc.)

    - `LastModifiedAt Time`

      The last modified time of the file

    - `PermissionInfo map[string, *FilePermissionInfoUnion]`

      Permission information for the file

      - `type FilePermissionInfoMap map[string, any]`

      - `type FilePermissionInfoArray []any`

      - `string`

      - `float64`

      - `bool`

    - `Purpose string`

      The intended purpose of the file (e.g., 'user_data', 'parse', 'extract', 'split', 'classify')

    - `ResourceInfo map[string, *FileResourceInfoUnion]`

      Resource information for the file

      - `type FileResourceInfoMap map[string, any]`

      - `type FileResourceInfoArray []any`

      - `string`

      - `float64`

      - `bool`

    - `UpdatedAt Time`

      Update datetime

  - `MetadataStateTransitions map[string, any]`

    Per-status entry timestamps. Returned only when requested via `?expand=metadata_state_transitions`.

  - `Parameters SheetsJobParameters`

    Job-time parameters such as webhook configurations.

    - `WebhookConfigurations []SheetsJobParametersWebhookConfiguration`

      Webhook configurations for job status notifications.

      - `WebhookEvents []string`

        Events to subscribe to (e.g. 'parse.success', 'extract.error'). If null, all events are delivered.

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyError SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyPending SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifyRunning SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.running"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventClassifySuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "classify.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractError SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractPending SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventExtractSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "extract.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseError SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParsePartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParsePending SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseRunning SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.running"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventParseSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "parse.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsError SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsPartialSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.partial_success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsPending SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSheetsSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "sheets.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitCancelled SheetsJobParametersWebhookConfigurationWebhookEvent = "split.cancelled"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitError SheetsJobParametersWebhookConfigurationWebhookEvent = "split.error"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitPending SheetsJobParametersWebhookConfigurationWebhookEvent = "split.pending"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitProcessing SheetsJobParametersWebhookConfigurationWebhookEvent = "split.processing"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventSplitSuccess SheetsJobParametersWebhookConfigurationWebhookEvent = "split.success"`

        - `const SheetsJobParametersWebhookConfigurationWebhookEventUnmappedEvent SheetsJobParametersWebhookConfigurationWebhookEvent = "unmapped_event"`

      - `WebhookHeaders map[string, string]`

        Custom HTTP headers sent with each webhook request (e.g. auth tokens)

      - `WebhookOutputFormat string`

        Response format sent to the webhook: 'string' (default) or 'json'

      - `WebhookSigningSecret string`

        Shared signing secret used to sign webhook deliveries. When set, each request includes an HMAC-SHA256 signature of the request body in the 'LC-Signature' header (value 'sha256=<hex>'). Recompute the HMAC over the raw request body with this secret to verify the delivery is authentic.

      - `WebhookURL string`

        URL to receive webhook POST notifications

  - `Regions []SheetsJobRegion`

    All extracted regions (populated when job is complete)

    - `Location string`

      Location of the region in the spreadsheet

    - `RegionType string`

      Type of the extracted region

    - `SheetName string`

      Worksheet name where region was found

    - `Description string`

      Generated description for the region

    - `RegionID string`

      Unique identifier for this region within the file

    - `Title string`

      Generated title for the region

  - `Success bool`

    Whether the job completed successfully

  - `WorksheetMetadata []SheetsJobWorksheetMetadata`

    Metadata for each processed worksheet (populated when job is complete)

    - `SheetName string`

      Name of the worksheet

    - `Description string`

      Generated description of the worksheet

    - `Title string`

      Generated title for the worksheet

### 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"),
  )
  sheetsJob, err := client.Sheets.Get(
    context.TODO(),
    "spreadsheet_job_id",
    llamacloud.SheetGetParams{

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

#### Response

```json
{
  "id": "id",
  "configuration": {
    "extraction_range": "extraction_range",
    "flatten_hierarchical_tables": true,
    "generate_additional_metadata": true,
    "include_hidden_cells": true,
    "sheet_names": [
      "string"
    ],
    "specialization": "specialization",
    "table_merge_sensitivity": "strong",
    "tier": "agentic",
    "use_experimental_processing": true
  },
  "created_at": "created_at",
  "file_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "status": "CANCELLED",
  "updated_at": "updated_at",
  "user_id": "user_id",
  "config": {
    "extraction_range": "extraction_range",
    "flatten_hierarchical_tables": true,
    "generate_additional_metadata": true,
    "include_hidden_cells": true,
    "sheet_names": [
      "string"
    ],
    "specialization": "specialization",
    "table_merge_sensitivity": "strong",
    "tier": "agentic",
    "use_experimental_processing": true
  },
  "configuration_id": "configuration_id",
  "errors": [
    "string"
  ],
  "file": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "name": "x",
    "project_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "created_at": "2019-12-27T18:11:19.117Z",
    "data_source_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "expires_at": "2019-12-27T18:11:19.117Z",
    "external_file_id": "external_file_id",
    "file_size": 0,
    "file_type": "x",
    "last_modified_at": "2019-12-27T18:11:19.117Z",
    "permission_info": {
      "foo": {
        "foo": "bar"
      }
    },
    "purpose": "purpose",
    "resource_info": {
      "foo": {
        "foo": "bar"
      }
    },
    "updated_at": "2019-12-27T18:11:19.117Z"
  },
  "metadata_state_transitions": {
    "foo": "bar"
  },
  "parameters": {
    "webhook_configurations": [
      {
        "webhook_events": [
          "parse.success",
          "parse.error"
        ],
        "webhook_headers": {
          "Authorization": "Bearer sk-..."
        },
        "webhook_output_format": "json",
        "webhook_signing_secret": "whsec_...",
        "webhook_url": "https://example.com/webhooks/llamacloud"
      }
    ]
  },
  "regions": [
    {
      "location": "location",
      "region_type": "region_type",
      "sheet_name": "sheet_name",
      "description": "description",
      "region_id": "region_id",
      "title": "title"
    }
  ],
  "success": true,
  "worksheet_metadata": [
    {
      "sheet_name": "sheet_name",
      "description": "description",
      "title": "title"
    }
  ]
}
```

## Get Result Region

`client.Sheets.GetResultTable(ctx, regionType, params) (*PresignedURL, error)`

**get** `/api/v1/sheets/jobs/{spreadsheet_job_id}/regions/{region_id}/result/{region_type}`

Generate a presigned URL to download a specific extracted region.

### Parameters

- `regionType SheetGetResultTableParamsRegionType`

  - `const SheetGetResultTableParamsRegionTypeCellMetadata SheetGetResultTableParamsRegionType = "cell_metadata"`

  - `const SheetGetResultTableParamsRegionTypeExtra SheetGetResultTableParamsRegionType = "extra"`

  - `const SheetGetResultTableParamsRegionTypeTable SheetGetResultTableParamsRegionType = "table"`

- `params SheetGetResultTableParams`

  - `SpreadsheetJobID param.Field[string]`

    Path param

  - `RegionID param.Field[string]`

    Path param

  - `ExpiresAtSeconds param.Field[int64]`

    Query param

  - `OrganizationID param.Field[string]`

    Query param

  - `ProjectID param.Field[string]`

    Query param

### Returns

- `type PresignedURL struct{…}`

  Schema for a presigned URL.

  - `ExpiresAt Time`

    The time at which the presigned URL expires

  - `URL string`

    A presigned URL for IO operations against a private file

  - `FormFields map[string, string]`

    Form fields for a presigned POST request

### 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"),
  )
  presignedURL, err := client.Sheets.GetResultTable(
    context.TODO(),
    llamacloud.SheetGetResultTableParamsRegionTypeCellMetadata,
    llamacloud.SheetGetResultTableParams{
      SpreadsheetJobID: "spreadsheet_job_id",
      RegionID: "region_id",
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", presignedURL.ExpiresAt)
}
```

#### Response

```json
{
  "expires_at": "2019-12-27T18:11:19.117Z",
  "url": "https://example.com",
  "form_fields": {
    "foo": "string"
  }
}
```

## Delete Spreadsheet Job

`client.Sheets.DeleteJob(ctx, spreadsheetJobID, body) (*SheetDeleteJobResponse, error)`

**delete** `/api/v1/sheets/jobs/{spreadsheet_job_id}`

Delete a spreadsheet parsing job and its associated data.

### Parameters

- `spreadsheetJobID string`

- `body SheetDeleteJobParams`

  - `OrganizationID param.Field[string]`

  - `ProjectID param.Field[string]`

### Returns

- `type SheetDeleteJobResponse interface{…}`

### 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"),
  )
  response, err := client.Sheets.DeleteJob(
    context.TODO(),
    "spreadsheet_job_id",
    llamacloud.SheetDeleteJobParams{

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

#### Response

```json
{}
```
