## Cancel Parse Job

`client.Parsing.Cancel(ctx, jobID, body) (*ParsingCancelResponse, error)`

**post** `/api/v2/parse/{job_id}/cancel`

Cancel a running parse job.

Stops processing and marks the job as CANCELLED. Returns the updated job. Jobs already in a terminal state (COMPLETED, FAILED, CANCELLED) cannot be cancelled.

### Parameters

- `jobID string`

- `body ParsingCancelParams`

  - `OrganizationID param.Field[string]`

  - `ProjectID param.Field[string]`

### Returns

- `type ParsingCancelResponse struct{…}`

  A parse job.

  - `ID string`

    Unique parse job identifier

  - `ProjectID string`

    Project this job belongs to

  - `Status ParsingCancelResponseStatus`

    Current job status: PENDING, RUNNING, COMPLETED, FAILED, or CANCELLED

    - `const ParsingCancelResponseStatusCancelled ParsingCancelResponseStatus = "CANCELLED"`

    - `const ParsingCancelResponseStatusCompleted ParsingCancelResponseStatus = "COMPLETED"`

    - `const ParsingCancelResponseStatusFailed ParsingCancelResponseStatus = "FAILED"`

    - `const ParsingCancelResponseStatusPending ParsingCancelResponseStatus = "PENDING"`

    - `const ParsingCancelResponseStatusRunning ParsingCancelResponseStatus = "RUNNING"`

  - `CreatedAt Time`

    Creation datetime

  - `ErrorMessage string`

    Error details when status is FAILED

  - `Name string`

    Optional display name for this parse job

  - `Tier string`

    Parsing tier used for this job

  - `UpdatedAt Time`

    Update datetime

  - `Usage ParsingCancelResponseUsage`

    Usage recorded against a job.

    - `Credits float64`

      Total credits billed against this job. Null until billing has recorded it.

  - `UserMetadata map[string, string]`

    Key/value tags associated with this job.

### 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.Parsing.Cancel(
    context.TODO(),
    "job_id",
    llamacloud.ParsingCancelParams{

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

#### Response

```json
{
  "id": "pjb-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
  "project_id": "prj-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
  "status": "CANCELLED",
  "created_at": "2019-12-27T18:11:19.117Z",
  "error_message": "error_message",
  "name": "Q4 Financial Report",
  "tier": "fast",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "usage": {
    "credits": 30
  },
  "user_metadata": {
    "owner": "jerry",
    "team": "research"
  }
}
```
