## Create Split Job

`SplitCreateResponse Beta.Split.Create(SplitCreateParamsparameters, CancellationTokencancellationToken = default)`

**post** `/api/v1/beta/split/jobs`

Create a document split job.

### Parameters

- `SplitCreateParams parameters`

  - `required SplitDocumentInput documentInput`

    Body param: Document to be split.

  - `string? organizationID`

    Query param

  - `string? projectID`

    Query param

  - `Configuration? configuration`

    Body param: Split configuration with categories and splitting strategy.

    - `required IReadOnlyList<SplitCategory> Categories`

      Categories to split documents into.

      - `required string Name`

        Name of the category.

      - `string? Description`

        Optional description of what content belongs in this category.

    - `SplittingStrategy SplittingStrategy`

      Strategy for splitting documents.

      - `AllowUncategorized AllowUncategorized`

        Controls handling of pages that don't match any category. 'include': pages can be grouped as 'uncategorized' and included in results. 'forbid': all pages must be assigned to a defined category. 'omit': pages can be classified as 'uncategorized' but are excluded from results.

        - `"forbid"Forbid`

        - `"include"Include`

        - `"omit"Omit`

  - `string? configurationID`

    Body param: Saved split configuration ID.

### Returns

- `class SplitCreateResponse:`

  Beta response — uses nested document_input object.

  - `required string ID`

    Unique identifier for the split job.

  - `required IReadOnlyList<SplitCategory> Categories`

    Categories used for splitting.

    - `required string Name`

      Name of the category.

    - `string? Description`

      Optional description of what content belongs in this category.

  - `required SplitDocumentInput DocumentInput`

    Document that was split.

    - `required string Type`

      Type of document input. Valid values are: file_id

    - `required string Value`

      Document identifier.

  - `required string ProjectID`

    Project ID this job belongs to.

  - `required string Status`

    Current status of the job. Valid values are: pending, processing, completed, failed, cancelled.

  - `required string UserID`

    User ID who created this job.

  - `string? ConfigurationID`

    Split configuration ID used for this job.

  - `DateTimeOffset? CreatedAt`

    Creation datetime

  - `string? ErrorMessage`

    Error message if the job failed.

  - `SplitResultResponse? Result`

    Result of a completed split job.

    - `required IReadOnlyList<SplitSegmentResponse> Segments`

      List of document segments.

      - `required string Category`

        Category name this split belongs to.

      - `required string ConfidenceCategory`

        Categorical confidence level. Valid values are: high, medium, low.

      - `required IReadOnlyList<Long> Pages`

        1-indexed page numbers in this split.

  - `DateTimeOffset? UpdatedAt`

    Update datetime

### Example

```csharp
SplitCreateParams parameters = new()
{
    DocumentInput = new()
    {
        Type = "type",
        Value = "value",
    },
};

var split = await client.Beta.Split.Create(parameters);

Console.WriteLine(split);
```

#### Response

```json
{
  "id": "id",
  "categories": [
    {
      "name": "x",
      "description": "x"
    }
  ],
  "document_input": {
    "type": "type",
    "value": "value"
  },
  "project_id": "project_id",
  "status": "status",
  "user_id": "user_id",
  "configuration_id": "configuration_id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "error_message": "error_message",
  "result": {
    "segments": [
      {
        "category": "category",
        "confidence_category": "confidence_category",
        "pages": [
          0
        ]
      }
    ]
  },
  "updated_at": "2019-12-27T18:11:19.117Z"
}
```
