issue_comments
22 rows where issue = 1421544654 sorted by updated_at descending
This data as json, CSV (advanced)
Suggested facets: created_at (date), updated_at (date)
issue 1
- API to insert a single record into an existing table · 22 ✖
id | html_url | issue_url | node_id | user | created_at | updated_at ▲ | author_association | body | reactions | issue | performed_via_github_app |
---|---|---|---|---|---|---|---|---|---|---|---|
1294224185 | https://github.com/simonw/datasette/issues/1851#issuecomment-1294224185 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NJEs5 | simonw 9599 | 2022-10-27T23:18:24Z | 2022-11-03T23:26:05Z | OWNER | So new API design is:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1294281451 | https://github.com/simonw/datasette/issues/1851#issuecomment-1294281451 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NJSrr | simonw 9599 | 2022-10-28T00:59:25Z | 2022-10-28T00:59:25Z | OWNER | I'm going to use this endpoint for bulk inserts too, so I'm closing this issue and continuing the work here: - #1866 |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1289712350 | https://github.com/simonw/datasette/issues/1851#issuecomment-1289712350 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5M33Le | simonw 9599 | 2022-10-24T22:28:39Z | 2022-10-27T23:18:48Z | OWNER | API design: (**UPDATE: this was later changed to POST /db/table/-/insert)
I decided to use |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1294012583 | https://github.com/simonw/datasette/issues/1851#issuecomment-1294012583 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NIRCn | simonw 9599 | 2022-10-27T20:11:22Z | 2022-10-27T20:11:22Z | OWNER | And the response to |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1294012084 | https://github.com/simonw/datasette/issues/1851#issuecomment-1294012084 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NIQ60 | simonw 9599 | 2022-10-27T20:10:47Z | 2022-10-27T20:10:47Z | OWNER | I'm going to change the incoming JSON back to |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1294009354 | https://github.com/simonw/datasette/issues/1851#issuecomment-1294009354 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NIQQK | simonw 9599 | 2022-10-27T20:07:42Z | 2022-10-27T20:07:42Z | OWNER | Need to implement the new URL design from: - #1868 This is now going to be |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1293996735 | https://github.com/simonw/datasette/issues/1851#issuecomment-1293996735 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NINK_ | simonw 9599 | 2022-10-27T19:54:53Z | 2022-10-27T19:54:53Z | OWNER | { "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | ||
1292997608 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292997608 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NEZPo | simonw 9599 | 2022-10-27T04:54:53Z | 2022-10-27T19:05:50Z | OWNER | I'm going to change the design of this to:
This will be consistent with adding The API response will look like this:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292999579 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292999579 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NEZub | simonw 9599 | 2022-10-27T04:59:06Z | 2022-10-27T04:59:12Z | OWNER | I should probably refactor this to use Might make it easier to solve the rowid issues too. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292996181 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292996181 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NEY5V | simonw 9599 | 2022-10-27T04:51:47Z | 2022-10-27T04:51:47Z | OWNER | Also need a test for invalid JSON (currently triggers a 500 HTML error). |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292952121 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292952121 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NEOI5 | simonw 9599 | 2022-10-27T04:24:09Z | 2022-10-27T04:24:20Z | OWNER | And come up with a whole bunch of tests for weird table shapes, surprising column names, different types etc. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292951833 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292951833 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NEOEZ | simonw 9599 | 2022-10-27T04:23:40Z | 2022-10-27T04:23:40Z | OWNER | Also need to think about transactions - it should use them! |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292939146 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292939146 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NEK-K | simonw 9599 | 2022-10-27T04:00:17Z | 2022-10-27T04:23:15Z | OWNER | Documentation for this first draft of the API: https://docs.datasette.io/en/1.0-dev/json_api.html#inserting-a-single-row It currently returns errors as HTML - it needs to return errors as JSON. Also the errors need comprehensive test coverage. I'm also worried about what happens if you use it on a table that doesn't use an integer primary key - need to check that. I think this code may break: Plus will |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292592210 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292592210 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NC2RS | eyeseast 25778 | 2022-10-26T20:03:46Z | 2022-10-26T20:03:46Z | CONTRIBUTOR | Yeah, every time I see something cool done with triggers, I remember that I need to start using triggers. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292544296 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292544296 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NCqko | simonw 9599 | 2022-10-26T19:33:34Z | 2022-10-26T19:33:34Z | OWNER | That trigger solution is pretty neat! |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1292519956 | https://github.com/simonw/datasette/issues/1851#issuecomment-1292519956 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5NCkoU | asg017 15178711 | 2022-10-26T19:20:33Z | 2022-10-26T19:20:33Z | CONTRIBUTOR |
@eyeseast Maybe you could do this with triggers? Like you can insert JSON-friendly data into a "raw" table, and create a trigger that transforms that inserted data into the proper table Here's an example: ```sql -- meant to be updated from a Datasette insert create table points_raw(longitude int, latitude int); -- the target table with proper spatliate geometries create table points(point geometry); CREATE TRIGGER insert_points_raw INSERT ON points_raw BEGIN insert into points(point) values (makepoint(new.longitude, new.latitude)) END; ``` You could then POST a new row to Then SQLite with run the trigger and insert a new row in |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1291228502 | https://github.com/simonw/datasette/issues/1851#issuecomment-1291228502 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5M9pVW | eyeseast 25778 | 2022-10-25T23:02:10Z | 2022-10-25T23:02:10Z | CONTRIBUTOR | That's reasonable. Canned queries and custom endpoints are certainly going to give more room for specific needs. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1291226367 | https://github.com/simonw/datasette/issues/1851#issuecomment-1291226367 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5M9oz_ | simonw 9599 | 2022-10-25T22:58:30Z | 2022-10-25T22:58:30Z | OWNER | The I think this API mechanism is going to be a bit less exciting than that - it will be low-level for inserting rows, and if you want to do something fancier you can use a canned query that feeds incoming GeoJSON to a SpatiaLite function instead. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1290615599 | https://github.com/simonw/datasette/issues/1851#issuecomment-1290615599 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5M7Tsv | eyeseast 25778 | 2022-10-25T14:05:12Z | 2022-10-25T14:05:12Z | CONTRIBUTOR | This could use a new plugin hook, too. I don't want to complicate your life too much, but for things like GIS, I'd want a way to turn regular JSON into SpatiaLite geometries or combine X/Y coordinates into point geometries and such. Happy to help however I can. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1289865317 | https://github.com/simonw/datasette/issues/1851#issuecomment-1289865317 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5M4chl | simonw 9599 | 2022-10-25T01:42:47Z | 2022-10-25T01:42:47Z | OWNER | This is going to tie into Datasette's existing permissions mechanism, so plugins will be able to define their own custom mechanisms for tokens to be attached to a specific identity: https://docs.datasette.io/en/stable/authentication.html There's only one plugin for API tokens at the moment, which is this one: https://datasette.io/plugins/datasette-auth-tokens I'm actually planning on adding another, default token mechanism to Datasette itself as part of this work:
It may well be that |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1289752130 | https://github.com/simonw/datasette/issues/1851#issuecomment-1289752130 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5M4A5C | ocdtrekkie 4399499 | 2022-10-24T23:07:30Z | 2022-10-24T23:07:30Z | NONE | How are you tying the bearer token to identity? I'm excited to see this feature, and since Sandstorm controls API access using the same header, it also will transparently support the API documentation here, but we strip the bearer before the request reaches the app (replacing it with our existing auth headers, of course). |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 | |
1289713513 | https://github.com/simonw/datasette/issues/1851#issuecomment-1289713513 | https://api.github.com/repos/simonw/datasette/issues/1851 | IC_kwDOBm6k_c5M33dp | simonw 9599 | 2022-10-24T22:29:58Z | 2022-10-24T22:30:15Z | OWNER | Interesting open question: how should validation errors (if any) be returned? The two forms of validation I can think of at first are:
|
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
API to insert a single record into an existing table 1421544654 |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [issue_comments] ( [html_url] TEXT, [issue_url] TEXT, [id] INTEGER PRIMARY KEY, [node_id] TEXT, [user] INTEGER REFERENCES [users]([id]), [created_at] TEXT, [updated_at] TEXT, [author_association] TEXT, [body] TEXT, [reactions] TEXT, [issue] INTEGER REFERENCES [issues]([id]) , [performed_via_github_app] TEXT); CREATE INDEX [idx_issue_comments_issue] ON [issue_comments] ([issue]); CREATE INDEX [idx_issue_comments_user] ON [issue_comments] ([user]);
user 4