mirror of
https://github.com/go-vikunja/vikunja.git
synced 2026-03-22 06:11:08 -05:00
API docs: distinction between GET and PUT (and POST) entity types
#433
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @vikunja-bot on GitHub (Apr 1, 2025).
Original issue by WofWca on 2023-03-15T13:47:40.000Z
Consider the "create task" endpoint:
066c26f83e/pkg/models/tasks.go (L909)Currently the docs say that you can pass
attachments,created_by,index,labels(with all the fields, likecreated_by,description), but it looks like they're actually ignored and overridden.I think there needs to be a separate struct (called something like
TaskInitDict) that lists all the fields that are actually supported by the endpoint.This should also allow to document things like the fact that if you pass
position: 0for a task, the backend will actually set it to a default one, and state which fields are required and stuff.I may not be seeing the bigger picture and possible caveats, but it's my superficial impression.
Original issue on Gitea
@kolaente commented on 2023-03-15T15:23:05.000Z:
That would probably be a reasonable idea. We do need to make sure the "new" structs would be properly maintained and not forgotten when making changes to the other structs.
Do you want to send a PR?
dpschen commented on 2023-03-15T15:52:23.000Z:
I think this could also be good for the zod based types in the frontend.
See https://kolaente.dev/vikunja/frontend/pulls/2225
WofWca commented on 2023-03-15T16:42:52.000Z:
I thought it'd be possible to actually integrate them in the code base in a DRY fashion and not purely for the purpose of generating docs.
Go is not my first language. So probably not soon if at all.
@kolaente commented on 2023-03-16T09:00:52.000Z:
That's not that easy, given how the current architecture is structured. Right now all crud routes use the same structs for one entity.