## Put Checkpoint

`checkpoints.put(CheckpointPutParams**kwargs)  -> CheckpointPutResponse`

**post** `/checkpoints/put`

Put Checkpoint

### Parameters

- `checkpoint: Dict[str, object]`

- `checkpoint_id: str`

- `thread_id: str`

- `blobs: Optional[Iterable[Blob]]`

  - `channel: str`

  - `type: str`

  - `version: str`

  - `blob: Optional[str]`

- `checkpoint_ns: Optional[str]`

- `metadata: Optional[Dict[str, object]]`

- `parent_checkpoint_id: Optional[str]`

### Returns

- `class CheckpointPutResponse: …`

  - `checkpoint_id: str`

  - `checkpoint_ns: str`

  - `thread_id: str`

### Example

```python
import os
from agentex import Agentex

client = Agentex(
    api_key=os.environ.get("AGENTEX_SDK_API_KEY"),  # This is the default and can be omitted
)
response = client.checkpoints.put(
    checkpoint={
        "foo": "bar"
    },
    checkpoint_id="checkpoint_id",
    thread_id="thread_id",
)
print(response.checkpoint_id)
```

#### Response

```json
{
  "checkpoint_id": "checkpoint_id",
  "checkpoint_ns": "checkpoint_ns",
  "thread_id": "thread_id"
}
```
