Hi, Benjamin
I would like to make how SeaTable and the SDK work more clear.
In SeaTable v5.0, we have added api-gateway component which will make the API calling more efficiency. If you use the latest version of Python SDK to connect with SeaTable 5.0, the process of Python script should be:
- base.auth(), after authentication, the SDK will know that api-gateway feature is enabled in the server (the returned value from the server contains “use_api_gateway=True”). Subsequent calls of the SDK will always use the api-gateway URL.
- base.list_rows(), the api-gateway URL will be used with convert_keys=true, the server should return data using column_names.
Can you check
- Which server version do you use? Do you use version 5.0?
- If 5.0 is used, can you check whether
https://{server}/api-gateway/api/v2/dtables/{base_uuid}/rows/
is called via the SDK with convert_keys=true?
By design, if you use latest Python SDK to connect SeaTable 5.0, list_rows() should return rows with column names as keys. You don’t need manually add the parameter convert_keys=true
Best regards,
Ranjiwei