# Important Changes related to Python client in SeaTable 6.2

**URL:** <https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435>\
**Category:** News and Announcements\
**Created:** [July 17, 2026, 2:32pm UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435 "2026-07-17T14:32:39Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![rdb](https://forum.seatable.com/user_avatar/forum.seatable.com/rdb/32/1869_2.png) [@rdb](https://forum.seatable.com/u/rdb)\
**Post date:** [July 17, 2026, 2:32pm UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/1 "2026-07-17T14:32:40Z")

</div>

The release of **SeaTable 6.2** is just around the corner.

This release includes changes to [SeaTable’s Python client](https://developer.seatable.com/python/) that may require updates to your existing Python scripts. If your scripts use the Python client, please review them before upgrading to ensure they continue to work as expected.

This post explains why these changes were made, what exactly is changing, and what you need to do.

## Who is affected?

This post is relevant if you use the **SeaTable Python client** in your Python scripts that you run manually or as part of an automation rule.

If you do not use Python scripts or you use Python scripts, but not SeaTable’s Python client, **no action is required**.

## Background

SeaTable’s Python client makes it easy to write concise scripts that interact with your bases. However, one long-standing inconsistency has caused confusion: the format of returned data depended on

- the method or object being used, and
- whether the script was executed manually or through an automation.

Starting with **SeaTable 6.2** , these inconsistencies are removed. The Python client will return data in a consistent format regardless of where, how, or when a script is executed.

While this change improves the API and makes script behavior more predictable going forward, it is **not fully backward compatible**. Existing scripts that rely on the previous return formats may need to be updated.

If you host your own **SeaTable Server** instance, we strongly recommend reviewing your Python scripts before upgrading your SeaTable Server instance.

For **SeaTable Cloud** and **SeaTable Dedicated** customers, we will proactively contact the administrators of all teams that currently use Python scripts.

## What has changed?

The changes affect the return formats of:

- the [**current\_row attribute of the context object**](https://developer.seatable.com/python/objects/context/#current_row), and
- the [**query method**](https://developer.seatable.com/python/objects/rows/#get-rows).

The tables below compare the current return formats with the new formats introduced in SeaTable 6.2.

**Context object: current\_row**

| Column type | Column format | Return format v6.1 | Return format v6.2 |
| --- | --- | --- | --- |
| Date | International | String: YYYY-MM-DD  
 (e. g. `'2026-12-24'` //  
 `'2026-12-24 00:00'`) | String: ISO date-time incl. TZ  
 (e.g. `'2026-12-24T00:00:00+01:00'`) |
| American |
| European |
| Germany, Russia |
| Formula | Date - International | String: YYYY-MM-DD  
 (e.g. `'2026-12-24'` //  
 `'2026-12-24 00:00'`) |
| Date - American | String: MM/DD/YYYY  
 (e.g. `'12/24/2026'` // `'12/24/2026 00:00'`) |
| Date - European | String: DD/MM/YYYY  
 (e.g. `'24/12/2026'` // `'24/12/2026 00:00'`) |
| Date - Germany, Russia | String: DD.MM.YYYY  
 (e.g. `'24.12.2026'` // `'24.12.2026 00:00'`) |
| Number - Number | Custom string | Float  
 (e.g. `1234.00`) |
| Number - Currency |
| Number - Percent | Float  
 (e.g. `0.1234`) |
| Link formula | Date - International | String: YYYY-MM-DD  
 (e.g. `'2026-12-24'` //  
 `'2026-12-24 00:00'`) | List: ISO date-time TZ strings  
 (e.g. `['2026-12-24T00:00:00+01:00']`) |
| Date - American | String: MM/DD/YYYY  
 (e.g. `'12/24/2026'` // `'12/24/2026 00:00'`) |
| Date - European | String: DD/MM/YYYY  
 (e.g. `'24/12/2026'` // `'24/12/2026 00:00'`) |
| Date - Germany, Russia | String: DD.MM.YYYY  
 (e.g. `'24.12.2026'` // `'24.12.2026 00:00'`) |
| Number - Number | Custom string | List: Floats  
 (e.g. `[1234.00]`) |
| Number - Currency |
| Number - Percent | List: Floats  
 (e.g. `[0.1234]`) |

**Query method**

| Column type | Column format | Return format v6.1 | Return format v6.2 |
| --- | --- | --- | --- |
| Date | International | String: YYYY-MM-DD  
 (e.g. `'2026-12-24'`) | String: ISO date-time incl. TZ  
 (e.g. `'2026-12-24T00:00:00+01:00'`) |
| American | String: YYYY-MM-DD HH:MM:SS  
 (e.g. `'2026-12-24 00:00:00'`) |
| European |
| Germany, Russia |

# Conclusion

We realize that these changes may require you to update existing scripts, and we apologize for the inconvenience.

We believe the long-term benefits outweigh this one-time effort. By harmonizing the Python client’s return formats, writing and maintaining scripts becomes simpler and more predictable. It also improves compatibility with AI-assisted code generation, as scripts no longer need to account for different return formats.

Finally, Python scripts become truly portable: the same script behaves consistently regardless of whether it is run manually or triggered by an automation.

---

<div class="post-metadata">

**Author:** ![cdb](https://forum.seatable.com/user_avatar/forum.seatable.com/cdb/32/7_2.png) [@cdb](https://forum.seatable.com/u/cdb)\
**Post date:** [July 20, 2026, 11:47am UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/4 "2026-07-20T11:47:46Z")

</div>



---

<div class="post-metadata">

**Author:** ![cdb](https://forum.seatable.com/user_avatar/forum.seatable.com/cdb/32/7_2.png) [@cdb](https://forum.seatable.com/u/cdb)\
**Post date:** [July 20, 2026, 11:48am UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/5 "2026-07-20T11:48:15Z")

</div>



---

<div class="post-metadata">

**Author:** ![cdb](https://forum.seatable.com/user_avatar/forum.seatable.com/cdb/32/7_2.png) [@cdb](https://forum.seatable.com/u/cdb)\
**Post date:** [July 20, 2026, 11:49am UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/6 "2026-07-20T11:49:02Z")

</div>



---

<div class="post-metadata">

**Author:** ![cdb](https://forum.seatable.com/user_avatar/forum.seatable.com/cdb/32/7_2.png) [@cdb](https://forum.seatable.com/u/cdb)\
**Post date:** [July 20, 2026, 11:49am UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/7 "2026-07-20T11:49:15Z")

</div>



---

<div class="post-metadata">

**Author:** ![Joey42](https://forum.seatable.com/letter_avatar_proxy/v4/letter/j/b487fb/32.png) [@Joey42](https://forum.seatable.com/u/Joey42)\
**Post date:** [July 21, 2026, 8:44am UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/8 "2026-07-21T08:44:57Z")

</div>

Thanks, Ralf, for the detailed information.

In our self-hosted SeaTable environment we are using a custom Python-Runner based directly on the Docker library/python:3.13 image.

Just to verify: We are affected by these changes when we build a new image using the latest version of the “seatable-api” (version 4.0.0 and higher) python package?

---

<div class="post-metadata">

**Author:** ![sha](https://forum.seatable.com/letter_avatar_proxy/v4/letter/s/e8c25b/32.png) [@sha](https://forum.seatable.com/u/sha)\
**Post date:** [July 21, 2026, 9:47am UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/9 "2026-07-21T09:47:31Z")

</div>

> Just to verify: We are affected by these changes when we build a new image using the latest version of the “seatable-api” (version 4.0.0 and higher) python package?

This is partially correct.

The change in the format of the `current_row` attribute of the `context` object will start affecting you as soon as you upgrade SeaTable to version 6.2.12, i.e. upgrade the `seatable-server` container to version 6.2.12.

This is due to the fact that the information about the current row is fetched within the `seatable-server` container and passed onto the Python-Pipeline. The `python-runner` just exposes these values through the context object.

* * *

The change in the return format of the `query()` method will start affecting you as soon as you use an image for the Python runner that includes version 4.0.0 and higher of the `seatable-api` Python package.

You can find additional information about these changes in a forum post on the Chinese SeaTable forum: [6.2 版本Python API 和 Python 脚本运行器 不兼容性说明 - 建议反馈 - SeaTable 论坛](https://bbs.seatable.cn/t/topic/4702)  
This post goes even more in-depth.

* * *

Since we only tested SeaTable v6.2.12 in combination with the newest `python-runner` image (image tag 6.2.2) that includes `seatable-api` v4.0.0, I’d **strongly recommend** updating both (your SeaTable server **and** the `python-runner` image) at the same time to ensure compatibility.

---

<div class="post-metadata">

**Author:** ![system](https://forum.seatable.com/uploads/default/original/1X/04603423fe81a46c321283663086c475429e8ccb.png) [@system](https://forum.seatable.com/u/system)\
**Post date:** [October 19, 2026, 9:48am UTC](https://forum.seatable.com/t/important-changes-related-to-python-client-in-seatable-6-2/7435/10 "2026-10-19T09:48:16Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
