fix: use correct Grist API endpoint for modify_column
The Grist API uses PATCH /tables/{table}/columns with a columns array
in the body, not PATCH /tables/{table}/columns/{column_id}. Updated
the endpoint to match the API spec.
This commit is contained in:
@@ -160,7 +160,8 @@ class GristClient:
|
|||||||
if formula is not None:
|
if formula is not None:
|
||||||
fields["formula"] = formula
|
fields["formula"] = formula
|
||||||
|
|
||||||
await self._request("PATCH", f"/tables/{table}/columns/{column_id}", json={"fields": fields})
|
payload = {"columns": [{"id": column_id, "fields": fields}]}
|
||||||
|
await self._request("PATCH", f"/tables/{table}/columns", json=payload)
|
||||||
|
|
||||||
async def delete_column(self, table: str, column_id: str) -> None:
|
async def delete_column(self, table: str, column_id: str) -> None:
|
||||||
"""Delete a column from a table."""
|
"""Delete a column from a table."""
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ async def test_add_column(client, httpx_mock: HTTPXMock):
|
|||||||
@pytest.mark.asyncio
|
@pytest.mark.asyncio
|
||||||
async def test_modify_column(client, httpx_mock: HTTPXMock):
|
async def test_modify_column(client, httpx_mock: HTTPXMock):
|
||||||
httpx_mock.add_response(
|
httpx_mock.add_response(
|
||||||
url="https://grist.example.com/api/docs/abc123/tables/Table1/columns/Amount",
|
url="https://grist.example.com/api/docs/abc123/tables/Table1/columns",
|
||||||
method="PATCH",
|
method="PATCH",
|
||||||
json={},
|
json={},
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user