{ "openapi": "3.0.1", "info": { "title": "wanderer", "description": "", "version": "1.0.0" }, "tags": [ { "name": "auth" }, { "name": "category" }, { "name": "comment" }, { "name": "follow" }, { "name": "trail-share" }, { "name": "user" }, { "name": "waypoint" }, { "name": "list" }, { "name": "list-share" }, { "name": "notification" }, { "name": "summit-log" }, { "name": "trail" } ], "paths": { "/activitypub/activity/{id}": { "get": { "summary": "show", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "id", "in": "path", "description": "", "required": true, "example": "", "schema": { "type": "string", "minLength": 15, "maxLength": 15 } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string" }, "actor": { "type": "string" }, "type": { "type": "string" }, "to": { "type": "array", "items": { "type": "string" } }, "cc": { "type": "string" }, "published": { "type": "string" }, "object": { "type": "object", "properties": {}, "description": "ActivityPub object" } }, "required": [ "id", "actor", "to", "cc", "published", "object", "type" ] } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/activitypub/comment/{id}": { "get": { "summary": "show", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "id", "in": "path", "description": "", "required": true, "example": "", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "@context": { "type": "array", "items": { "type": "string" } }, "id": { "type": "string" }, "type": { "type": "string" }, "content": { "type": "string" }, "attributedTo": { "type": "string" }, "inReplyTo": { "type": "string" }, "published": { "type": "string" } }, "required": [ "@context", "id", "type", "content", "attributedTo", "inReplyTo", "published" ] }, "example": { "@context": [ "https://www.w3.org/ns/activitystreams" ], "id": "https://demo.wanderer.to/api/v1/comment/32wf88038cb800i", "type": "Note", "content": "
Ja, echt toll!
", "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "inReplyTo": "https://demo.wanderer.to/api/v1/trail/23fd1747a29c3af", "published": "2025-06-18T18:48:15Z" } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/activitypub/trail/{id}": { "get": { "summary": "show", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "id", "in": "path", "description": "", "required": true, "example": "", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "@context": { "type": "array", "items": { "type": "string" } }, "id": { "type": "string" }, "type": { "type": "string" }, "name": { "type": "string" }, "content": { "type": "string" }, "attachment": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string" }, "mediaType": { "type": "string" }, "url": { "type": "string" } }, "required": [ "type", "mediaType", "url" ] } }, "attributedTo": { "type": "string" }, "location": { "type": "object", "properties": { "type": { "type": "string" }, "name": { "type": "string" }, "latitude": { "type": "number" }, "longitude": { "type": "number" } }, "required": [ "type", "name", "latitude", "longitude" ] }, "tag": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string" }, "name": { "type": "string" }, "content": { "type": "string" } }, "required": [ "type", "name", "content" ] } }, "url": { "type": "string" }, "published": { "type": "string" }, "startTime": { "type": "string" } }, "required": [ "@context", "id", "type", "name", "content", "attachment", "attributedTo", "location", "tag", "url", "published", "startTime" ] }, "example": { "@context": [ "https://www.w3.org/ns/activitystreams" ], "id": "https://demo.wanderer.to/api/v1/trail/2ce3af7a2e80f52", "type": "Note", "name": "12 days in the Zugspitz region on the peak hiking trail", "content": "https://demo.wanderer.to/trail/view/@demo/2ce3af7a2e80f52
", "attachment": [ { "type": "Image", "mediaType": "image/jpeg", "url": "https://demo.wanderer.to/api/v1/files/trails/2ce3af7a2e80f52/route_ldv172t0my.webp" }, { "type": "Document", "mediaType": "application/xml+gpx", "url": "https://demo.wanderer.to/api/v1/files/trails/2ce3af7a2e80f52/12_days_in_the_zugspitz_region_on_the_peak_hiking_trail_5ts04zgsuk.gpx" } ], "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "location": { "type": "Place", "name": "Murnau am Staffelsee, Bayern, Deutschland", "latitude": 47.678592, "longitude": 11.196068 }, "tag": [ { "type": "Note", "name": "category", "content": "Biking" }, { "type": "Note", "name": "difficulty", "content": "easy" }, { "type": "Note", "name": "elevation_gain", "content": "8902.000000m" }, { "type": "Note", "name": "elevation_loss", "content": "8906.000000m" }, { "type": "Note", "name": "distance", "content": "202403.824936m" }, { "type": "Note", "name": "duration", "content": "4037.183333m" } ], "url": "https://demo.wanderer.to/trail/view/@demo/2ce3af7a2e80f52", "published": "2025-06-17T21:40:02Z", "startTime": "2025-06-14T00:00:00Z" } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/activitypub/user/{handle}/followers": { "get": { "summary": "show", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "handle", "in": "path", "description": "", "required": true, "example": "@user@domain", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "@context": { "type": "array", "items": { "type": "string" } }, "type": { "type": "string" }, "first": { "type": "string" }, "partOf": { "type": "string" }, "totalItems": { "type": "integer" }, "orderedItems": { "type": "array", "items": { "type": "string" } } }, "required": [ "@context", "type", "first", "partOf", "totalItems", "orderedItems" ] }, "example": { "@context": [ "https://www.w3.org/ns/activitystreams" ], "type": "OrderedCollectionPage", "first": "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers?page=1", "partOf": "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers", "totalItems": 3, "orderedItems": [ "https://social.tchncs.de/users/flomp", "https://trails.magdeburg.jetzt/api/v1/activitypub/user/momar", "https://darmstadt.social/users/stormii" ] } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/activitypub/user/{handle}/outbox": { "get": { "summary": "show", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "handle", "in": "path", "description": "", "required": true, "example": "@user@domain", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "@context": { "type": "array", "items": { "type": "string" } }, "type": { "type": "string" }, "first": { "type": "string" }, "next": { "type": "string" }, "partOf": { "type": "string" }, "totalItems": { "type": "integer" }, "orderedItems": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "actor": { "type": "string" }, "type": { "type": "string" }, "to": { "type": "array", "items": { "type": "string" } }, "cc": { "type": "array", "items": { "type": "string" } }, "published": { "type": "string" }, "object": { "type": "object", "properties": { "id": { "type": "string" }, "type": { "type": "string" }, "content": { "type": "string" }, "attachment": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string" }, "mediaType": { "type": "string" }, "url": { "type": "string" } }, "required": [ "type", "mediaType", "url" ] } }, "attributedTo": { "type": "string" }, "inReplyTo": { "type": "string" }, "tag": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string" }, "name": { "type": "string" }, "content": { "type": "string" }, "id": { "type": "string" }, "href": { "type": "string" } }, "required": [ "type", "name", "content", "id", "href" ] } }, "url": { "type": "string" }, "published": { "type": "string" }, "startTime": { "type": "string" }, "name": { "type": "string" }, "location": { "type": "object", "properties": { "type": { "type": "string" }, "name": { "type": "string" }, "latitude": { "type": "number" }, "longitude": { "type": "number" } }, "required": [ "type", "name", "latitude", "longitude" ] } }, "required": [ "id", "type", "name", "content", "attachment", "attributedTo", "location", "tag", "url", "published", "startTime" ] } }, "required": [ "id", "actor", "type", "to", "cc", "published", "object" ] } } }, "required": [ "@context", "type", "first", "next", "partOf", "totalItems", "orderedItems" ] }, "example": { "@context": [ "https://www.w3.org/ns/activitystreams" ], "type": "OrderedCollectionPage", "first": "https://demo.wanderer.to/api/v1/activitypub/user/demo/outbox?page=1", "next": "https://demo.wanderer.to/api/v1/activitypub/user/demo/outbox?page=2", "partOf": "https://demo.wanderer.to/api/v1/activitypub/user/demo/outbox", "totalItems": 21, "orderedItems": [ { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/ypx6zhvsaonmkos", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": "https://www.w3.org/ns/activitystreams#Public", "cc": [ "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers", "https://social.tchncs.de/users/flomp/inbox" ], "published": "2025-06-18 18:50:02.518Z", "object": { "id": "https://demo.wanderer.to/api/v1/summit-log/75md7yw7099j5rh", "type": "Note", "content": "", "attachment": [], "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "inReplyTo": "https://demo.wanderer.to/api/v1/trail/23fd1747a29c3af", "tag": [ { "type": "Note", "name": "elevation_gain", "content": "0.000000m" }, { "type": "Note", "name": "elevation_loss", "content": "0.000000m" }, { "type": "Note", "name": "distance", "content": "0.000000m" }, { "type": "Note", "name": "duration", "content": "0.000000m" }, { "id": "https://social.tchncs.de/users/flomp", "type": "Mention", "name": "@flomp@social.tchncs.de", "href": "https://social.tchncs.de/users/flomp" } ], "url": "https://demo.wanderer.to/trail/view/@demo/23fd1747a29c3af", "published": "2025-06-18T18:50:02Z", "startTime": "2025-06-18T00:00:00Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/k6h3nxcgcg8ztjt", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://social.tchncs.de/users/flomp/inbox", "https://demo.wanderer.to/api/v1/activitypub/user/demo/inbox" ], "published": "2025-06-18 18:48:15.481Z", "object": { "id": "https://demo.wanderer.to/api/v1/comment/32wf88038cb800i", "type": "Note", "content": "Ja, echt toll!
", "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "inReplyTo": "https://demo.wanderer.to/api/v1/trail/23fd1747a29c3af", "tag": [ { "id": "https://social.tchncs.de/users/flomp", "type": "Mention", "name": "@flomp@social.tchncs.de", "href": "https://social.tchncs.de/users/flomp" } ], "published": "2025-06-18T18:48:15Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/ll0f2ectiohy55d", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers", "https://social.tchncs.de/users/flomp/inbox" ], "published": "2025-06-18 18:46:54.717Z", "object": { "id": "https://demo.wanderer.to/api/v1/trail/23fd1747a29c3af", "type": "Note", "name": "Radfernweg Berlin-Usedom", "content": "Auf nach Usedom!
https://demo.wanderer.to/trail/view/@demo/23fd1747a29c3af
", "attachment": [ { "type": "Image", "mediaType": "image/jpeg", "url": "https://demo.wanderer.to/api/v1/files/trails/23fd1747a29c3af/default_thumbnail_fz982rp32o.webp" }, { "type": "Document", "mediaType": "application/xml+gpx", "url": "https://demo.wanderer.to/api/v1/files/trails/23fd1747a29c3af/radfernweg_berlin_usedom_c1ftlwpxqq.gpx" } ], "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "location": { "type": "Place", "name": "Berlin, Deutschland", "latitude": 52.516379, "longitude": 13.402514 }, "tag": [ { "type": "Note", "name": "category", "content": "Biking" }, { "type": "Note", "name": "difficulty", "content": "easy" }, { "type": "Note", "name": "elevation_gain", "content": "1755.000000m" }, { "type": "Note", "name": "elevation_loss", "content": "1795.000000m" }, { "type": "Note", "name": "distance", "content": "340287.513156m" }, { "type": "Note", "name": "duration", "content": "1298.616667m" }, { "id": "https://social.tchncs.de/users/flomp", "type": "Mention", "name": "@flomp@social.tchncs.de", "href": "https://social.tchncs.de/users/flomp" } ], "url": "https://demo.wanderer.to/trail/view/@demo/23fd1747a29c3af", "published": "2025-06-18T18:46:54Z", "startTime": "2020-07-27T00:00:00Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/2ok0a8jk137niua", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://social.tchncs.de/users/flomp/inbox", "https://demo.wanderer.to/api/v1/activitypub/user/demo/inbox" ], "published": "2025-06-18 14:38:11.150Z", "object": { "id": "https://demo.wanderer.to/api/v1/comment/i2xy97z4kmy8wj5", "type": "Note", "content": "Genau!
", "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "inReplyTo": "https://demo.wanderer.to/api/v1/trail/c7fba19d7f3121e", "published": "2025-06-18T14:38:11Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/um1cjums1ls0vhr", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers" ], "published": "2025-06-18 14:37:03.367Z", "object": { "id": "https://demo.wanderer.to/api/v1/trail/c7fba19d7f3121e", "type": "Note", "name": "Herzogstand", "content": "Schöne Routehttps://demo.wanderer.to/trail/view/@demo/c7fba19d7f3121e
", "attachment": [ { "type": "Image", "mediaType": "image/jpeg", "url": "https://demo.wanderer.to/api/v1/files/trails/c7fba19d7f3121e/bard_bunny_fkdoahvxn3.svg" }, { "type": "Document", "mediaType": "application/xml+gpx", "url": "https://demo.wanderer.to/api/v1/files/trails/c7fba19d7f3121e/herzogstand_8itqbamj9j.gpx" } ], "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "location": { "type": "Place", "name": "Kochel am See, Bayern, Deutschland", "latitude": 47.62039, "longitude": 11.34908 }, "tag": [ { "type": "Note", "name": "category", "content": "Biking" }, { "type": "Note", "name": "difficulty", "content": "easy" }, { "type": "Note", "name": "elevation_gain", "content": "950.000000m" }, { "type": "Note", "name": "elevation_loss", "content": "950.000000m" }, { "type": "Note", "name": "distance", "content": "14040.219641m" }, { "type": "Note", "name": "duration", "content": "84.333333m" } ], "url": "https://demo.wanderer.to/trail/view/@demo/c7fba19d7f3121e", "published": "2025-06-18T14:37:03Z", "startTime": "2010-01-01T00:00:00Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/zhum5i1znle0u5s", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://social.tchncs.de/users/flomp/inbox", "https://demo.wanderer.to/api/v1/activitypub/user/demo/inbox" ], "published": "2025-06-18 14:32:29.664Z", "object": { "id": "https://demo.wanderer.to/api/v1/comment/9jk7qjtv177hlf2", "type": "Note", "content": "Stimmt!
", "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "inReplyTo": "https://demo.wanderer.to/api/v1/activitypub/trail/2ce3af7a2e80f52", "published": "2025-06-18T14:32:29Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/8zcj46423elzpbk", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://social.tchncs.de/users/flomp/inbox", "https://demo.wanderer.to/api/v1/activitypub/user/demo/inbox" ], "published": "2025-06-18 14:05:12.530Z", "object": { "id": "https://demo.wanderer.to/api/v1/comment/lf95x0w2h0s51l3", "type": "Note", "content": "Stimmt, echt lang!
", "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "inReplyTo": "https://demo.wanderer.to/api/v1/trail/2ce3af7a2e80f52", "published": "2025-06-18T14:05:12Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/wokmv9tfpu7uvm7", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers" ], "published": "2025-06-18 09:12:01.344Z", "object": { "id": "https://demo.wanderer.to/api/v1/activitypub/trail/a0965dc31384a2b", "type": "Note", "name": "test", "content": "https://demo.wanderer.to/trail/view/@demo/a0965dc31384a2b
", "attachment": [ { "type": "Image", "mediaType": "image/jpeg", "url": "https://demo.wanderer.to/api/v1/files/trails/a0965dc31384a2b/route_zqddtv52qk.webp" }, { "type": "Document", "mediaType": "application/xml+gpx", "url": "https://demo.wanderer.to/api/v1/files/trails/a0965dc31384a2b/blob_vxtu95acms.gpx" } ], "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "location": { "type": "Place", "name": "Prien am Chiemsee, Bavaria, Germany", "latitude": 47.858914, "longitude": 12.364729 }, "tag": [ { "type": "Note", "name": "category", "content": "Biking" }, { "type": "Note", "name": "difficulty", "content": "easy" }, { "type": "Note", "name": "elevation_gain", "content": "259.000000m" }, { "type": "Note", "name": "elevation_loss", "content": "185.000000m" }, { "type": "Note", "name": "distance", "content": "16314.394386m" }, { "type": "Note", "name": "duration", "content": "94.749000m" } ], "url": "https://demo.wanderer.to/trail/view/@demo/a0965dc31384a2b", "published": "2025-06-18T09:12:01Z", "startTime": "2025-06-18T00:00:00Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/fgizij4fvb9s5v6", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://demo.wanderer.to/api/v1/activitypub/user/demo" ], "published": "2025-06-17 21:53:23.738Z", "object": { "id": "https://demo.wanderer.to/api/v1/activitypub/comment/3tn68g135406duj", "type": "Note", "content": "Ja, ist echt so!
", "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "inReplyTo": "https://demo.wanderer.to/api/v1/activitypub/trail/2ce3af7a2e80f52", "published": "2025-06-17T21:53:23Z" } }, { "id": "https://demo.wanderer.to/api/v1/activitypub/activity/nix8x5h1hvh75bf", "actor": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Create", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers" ], "published": "2025-06-17 21:40:02.336Z", "object": { "id": "https://demo.wanderer.to/api/v1/activitypub/trail/2ce3af7a2e80f52", "type": "Note", "name": "12 days in the Zugspitz region on the peak hiking trail", "content": "https://demo.wanderer.to/trail/view/@demo/2ce3af7a2e80f52
", "attachment": [ { "type": "Image", "mediaType": "image/jpeg", "url": "https://demo.wanderer.to/api/v1/files/trails/2ce3af7a2e80f52/route_ldv172t0my.webp" }, { "type": "Document", "mediaType": "application/xml+gpx", "url": "https://demo.wanderer.to/api/v1/files/trails/2ce3af7a2e80f52/12_days_in_the_zugspitz_region_on_the_peak_hiking_trail_5ts04zgsuk.gpx" } ], "attributedTo": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "location": { "type": "Place", "name": "Murnau am Staffelsee, Bayern, Deutschland", "latitude": 47.678592, "longitude": 11.196068 }, "tag": [ { "type": "Note", "name": "category", "content": "Biking" }, { "type": "Note", "name": "difficulty", "content": "easy" }, { "type": "Note", "name": "elevation_gain", "content": "8902.000000m" }, { "type": "Note", "name": "elevation_loss", "content": "8906.000000m" }, { "type": "Note", "name": "distance", "content": "202403.824936m" }, { "type": "Note", "name": "duration", "content": "4037.183333m" } ], "url": "https://demo.wanderer.to/trail/view/@demo/2ce3af7a2e80f52", "published": "2025-06-17T21:40:02Z", "startTime": "2025-06-14T00:00:00Z" } } ] } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/activitypub/user/{handle}/inbox": { "post": { "summary": "show", "deprecated": false, "description": "Expects a valid, signed ActivityPub activity as json input", "tags": [], "parameters": [ { "name": "handle", "in": "path", "description": "", "required": true, "example": "@user@domain", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": {} } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": {} } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/activitypub/user/{handle}/following": { "get": { "summary": "show", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "handle", "in": "path", "description": "", "required": true, "example": "@user@domain", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "@context": { "type": "array", "items": { "type": "string" } }, "type": { "type": "string" }, "first": { "type": "string" }, "partOf": { "type": "string" }, "totalItems": { "type": "integer" }, "orderedItems": { "type": "array", "items": { "type": "string" } } }, "required": [ "@context", "type", "first", "partOf", "totalItems", "orderedItems" ] }, "example": { "@context": [ "https://www.w3.org/ns/activitystreams" ], "type": "OrderedCollectionPage", "first": "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers?page=1", "partOf": "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers", "totalItems": 3, "orderedItems": [ "https://social.tchncs.de/users/flomp", "https://trails.magdeburg.jetzt/api/v1/activitypub/user/momar", "https://darmstadt.social/users/stormii" ] } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/activitypub/user/{handle}": { "get": { "summary": "show", "deprecated": false, "description": "", "tags": [], "parameters": [ { "name": "handle", "in": "path", "description": "", "required": true, "example": "@user@domain", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/activity+json", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "@context": { "type": "array", "items": { "type": "string" } }, "id": { "type": "string" }, "type": { "type": "string" }, "inbox": { "type": "string" }, "outbox": { "type": "string" }, "summary": { "type": "string" }, "name": { "type": "string" }, "preferredUsername": { "type": "string" }, "followers": { "type": "string" }, "following": { "type": "string" }, "url": { "type": "string" }, "published": { "type": "string" }, "icon": { "type": "object", "properties": { "type": { "type": "string" }, "url": { "type": "string" } }, "required": [ "type", "url" ] }, "publicKey": { "type": "object", "properties": { "id": { "type": "string" }, "owner": { "type": "string" }, "publicKeyPem": { "type": "string" } }, "required": [ "id", "owner", "publicKeyPem" ] } }, "required": [ "@context", "id", "type", "inbox", "outbox", "summary", "name", "preferredUsername", "followers", "following", "url", "published", "icon", "publicKey" ] }, "example": { "@context": [ "https://www.w3.org/ns/activitystreams" ], "id": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "type": "Person", "inbox": "https://demo.wanderer.to/api/v1/activitypub/user/demo/inbox", "outbox": "https://demo.wanderer.to/api/v1/activitypub/user/demo/outbox", "summary": "Born the day we installed the site.", "name": "demo", "preferredUsername": "demo", "followers": "https://demo.wanderer.to/api/v1/activitypub/user/demo/followers", "following": "https://demo.wanderer.to/api/v1/activitypub/user/demo/following", "url": "https://demo.wanderer.to/profile/@demo", "published": "2025-05-05T15:07:59.943Z", "icon": { "type": "Image", "url": "https://demo.wanderer.to/api/v1/files/users/26b1si1344ficl6/wlezq_um7vh2722q.jpg" }, "publicKey": { "id": "https://demo.wanderer.to/api/v1/activitypub/user/demo#main-key", "owner": "https://demo.wanderer.to/api/v1/activitypub/user/demo", "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw0xyaRWP5X955bwSnUbr\nmwEF/2Fdmn5nlRRmEvej1BR0oBcPMVPYrrK4sz37mrAJ7Wbmg4KjmSDEROD4sApr\nM5FmKeU1OBsV2O3bL1DSW/8PXaf4JQRgl0AO+LiSAd7A/GO0viAzJXyJT4Rpaamf\n8Naclh7YR5E4JXrsjahPEWtUWcQ4g8Yhc6n2ptQ33ACI7Q1R3+U7q1tMaRCKAbdT\nbRahzqGs3iSxV+FjnsMR109KqDQJDMjwRB11USJTA4/nMpV6w8RS+171xNHl12Sg\nGpiuusmXMYYuoECdKDtLY7AsntusYMzXUjPzKfE+5EqPmIj5OTbg3A24p9hWIv5s\nmwIDAQAB\n-----END PUBLIC KEY-----\n" } } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/auth/login": { "post": { "summary": "login", "deprecated": false, "description": "Authenticates a registered user. The session is returned in a cookie named `pb_auth`. You need to include this cookie in subsequent requests.", "operationId": "login", "tags": [ "auth" ], "parameters": [ { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/json", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "username": { "type": "string", "minLength": 3 }, "password": { "type": "string", "minLength": 8 } }, "required": [ "username", "password" ] }, "example": { "username": "admin", "password": "12345678" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "record": { "type": "object", "properties": { "avatar": { "type": "string" }, "collectionId": { "type": "string" }, "collectionName": { "type": "string" }, "created": { "type": "string" }, "email": { "type": "string" }, "emailVisibility": { "type": "boolean" }, "id": { "type": "string" }, "token": { "type": "string" }, "updated": { "type": "string" }, "username": { "type": "string" }, "verified": { "type": "boolean" } }, "required": [ "avatar", "collectionId", "collectionName", "created", "email", "emailVisibility", "id", "token", "updated", "username", "verified" ] }, "token": { "type": "string" } }, "required": [ "record", "token" ] }, "example": { "record": { "avatar": "pexels_photo_2230444_WILu8cRHVb.jpg", "bio": "ex aliqua velit deserunt ea exercitation do. Velit ullamco elit culpa eiusmod officia irure aute Lorem in ullamco labore ex. Officia ea qui in exercitation amet. Consequat laboris id duis enim Lorem dolore fugiat excepteur sunt. Sint consectetur duis tempor deserunt non. Ex amet sunt eu commodo.\n\nMollit labore cupidatat qui enim consectetur irure. Ea et reprehenderit ipsum adipisicing duis proident tempor esse excepteur dolor dolore anim consectetur aliqua. Laborum culpa eiusmod id ea consectetur do sit reprehenderit consequat voluptate mollit commodo. Ullamco aute ea minim enim et cupidatat ipsum cillum fugiat. Proident consectetur commodo Lorem do incididunt labore pariatur esse ea officia adipisicing. Do et sint culpa proident enim irure aliqua dolore magna. Laborum Lorem sunt amet occaecat occaecat mollit consectetur laborum ut.", "collectionId": "_pb_users_auth_", "collectionName": "users", "created": "2024-06-29 19:23:47.731Z", "email": "notmymail@googlemail.com", "emailVisibility": false, "id": "3mugf953w4a9fg5", "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcGlLZXlVaWQiOiIzMjk3NmExMi03ODE1LTQ1NGQtYTU5Yi1hNzY0ZTE4NmJjNjIiLCJzZWFyY2hSdWxlcyI6eyJjaXRpZXM1MDAiOnt9LCJ0cmFpbHMiOnsiZmlsdGVyIjoicHVibGljID0gdHJ1ZSBPUiBhdXRob3IgPSAzbXVnZjk1M3c0YTlmZzUgT1Igc2hhcmVzID0gM211Z2Y5NTN3NGE5Zmc1In19fQ.swips6eep2qMd0Nf3hdZr711N2fHyikOo7syWvuLEIA", "updated": "2024-12-30 18:36:39.161Z", "username": "Flomp", "verified": true }, "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb2xsZWN0aW9uSWQiOiJfcGJfdXNlcnNfYXV0aF8iLCJleHAiOjE3MzY4MDEwMjksImlkIjoiM211Z2Y5NTN3NGE5Zmc1IiwidHlwZSI6ImF1dGhSZWNvcmQifQ.LBMx7FuCR4eRC6zG96TDX6BfEKMHBoo-9eQ9LvpU0rg" } } }, "headers": { "set-cookie": { "example": "pb_auth=%7B%22token%22%3A%22eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb2xsZWN0aW9uSWQiOiJfcGJfdXNlcnNfYXV0aF8iLCJleHAiOjE3MzcxMjY5MjQsImlkIjoiM211Z2Y5NTN3NGE5Zmc1IiwidHlwZSI6ImF1dGhSZWNvcmQifQ.F-gRu-w_oUvt9GqjjGKZe18smdhtMO6oYhB36KJ5odo%22%2C%22model%22%3A%7B%22avatar%22%3A%2223xxesym0e9w18z2904frnpgy7_OzsVanAmWP.jpg%22%2C%22bio%22%3A%22Enim%20beatae%20labore%20vel.%20Pariatur%20hic%20doloribus%20quia%20quasi%20eos.%20Cumque%20error%20nobis.%22%2C%22collectionId%22%3A%22_pb_users_auth_%22%2C%22collectionName%22%3A%22users%22%2C%22created%22%3A%222024-06-29%2019%3A23%3A47.731Z%22%2C%22email%22%3A%22mymail%40gmail.com%22%2C%22emailVisibility%22%3Afalse%2C%22id%22%3A%223mugf953w4a9fg5%22%2C%22token%22%3A%22eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcGlLZXlVaWQiOiIzMjk3NmExMi03ODE1LTQ1NGQtYTU5Yi1hNzY0ZTE4NmJjNjIiLCJzZWFyY2hSdWxlcyI6eyJjaXRpZXM1MDAiOnt9LCJ0cmFpbHMiOnsiZmlsdGVyIjoicHVibGljID0gdHJ1ZSBPUiBhdXRob3IgPSAzbXVnZjk1M3c0YTlmZzUgT1Igc2hhcmVzID0gM211Z2Y5NTN3NGE5Zmc1In19fQ.swips6eep2qMd0Nf3hdZr711N2fHyikOo7syWvuLEIA%22%2C%22updated%22%3A%222025-01-03%2012%3A32%3A15.270Z%22%2C%22username%22%3A%22Flomp%22%2C%22verified%22%3Atrue%7D%7D; Path=/; Expires=Fri, 17 Jan 2025 15:15:24 GMT; SameSite=Strict", "required": false, "description": "Contains the authentication cookie", "schema": { "type": "string" } } } }, "400": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "detail": { "type": "object", "properties": { "code": { "type": "integer" }, "message": { "type": "string" }, "data": { "type": "object", "properties": {} } }, "required": [ "code", "message", "data" ] } }, "required": [ "message", "detail" ] }, "example": { "message": "Failed to authenticate.", "detail": { "code": 400, "message": "Failed to authenticate.", "data": {} } } } }, "headers": {} }, "x-400:Invalid Params": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "details": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string" }, "expected": { "type": "string" }, "received": { "type": "string" }, "path": { "type": "array", "items": { "type": "string" } }, "message": { "type": "string" } } } } }, "required": [ "message", "details" ] }, "example": { "message": "invalid_params", "details": [ { "code": "invalid_type", "expected": "string", "received": "undefined", "path": [ "password" ], "message": "Required" } ] } } }, "headers": {} }, "x-400:Invalid JSON": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" } }, "required": [ "message" ] }, "example": { "message": "invalid_json" } } }, "headers": {} } }, "security": [] } }, "/category": { "get": { "summary": "list", "deprecated": false, "description": "Lists all categories.", "operationId": "listCategories", "tags": [ "category" ], "parameters": [ { "name": "page", "in": "query", "description": "Page number starting at 1", "required": false, "example": 1, "schema": { "type": "number" } }, { "name": "perPage", "in": "query", "description": "Items per page", "required": false, "example": 5, "schema": { "type": "number" } }, { "name": "sort", "in": "query", "description": "Sort string (-/+Ganz schön lang!
", "trail": "2ce3af7a2e80f52", "updated": "2025-06-17 21:40:20.796Z" }, { "author": "pnat0l9g6p3nh2a", "collectionId": "lf06qip3f4d11yk", "collectionName": "comments", "created": "2025-05-31 14:14:40.077Z", "id": "30h73u05t60ku3u", "iri": "", "text": "Fixe!", "trail": "c0ec3039d47cc48", "updated": "2025-05-31 14:14:40.077Z" }, { "author": "pnat0l9g6p3nh2a", "collectionId": "lf06qip3f4d11yk", "collectionName": "comments", "created": "2025-06-18 18:48:15.477Z", "id": "32wf88038cb800i", "iri": "", "text": "Ja, echt toll!
", "trail": "23fd1747a29c3af", "updated": "2025-06-18 18:48:15.477Z" }, { "author": "pnat0l9g6p3nh2a", "collectionId": "lf06qip3f4d11yk", "collectionName": "comments", "created": "2025-05-31 13:01:03.235Z", "id": "5nm8og6umaiipc8", "iri": "", "text": "stuff", "trail": "8beaf58dbf3ce95", "updated": "2025-05-31 13:01:03.235Z" } ], "page": 1, "perPage": 5, "totalItems": 14, "totalPages": 3 } } }, "headers": {} }, "400": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "details": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string" }, "minimum": { "type": "integer" }, "type": { "type": "string" }, "inclusive": { "type": "boolean" }, "exact": { "type": "boolean" }, "message": { "type": "string" }, "path": { "type": "array", "items": { "type": "string" } } } } } }, "required": [ "message", "details" ] }, "example": { "message": "invalid_params", "details": [ { "code": "too_small", "minimum": 0, "type": "number", "inclusive": false, "exact": false, "message": "Number must be greater than 0", "path": [ "page" ] } ] } } }, "headers": {} }, "x-400:Invalid sort/expand/filter": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "detail": { "type": "object", "properties": { "code": { "type": "integer" }, "message": { "type": "string" }, "data": { "type": "object", "properties": {} } }, "required": [ "code", "message", "data" ] } }, "required": [ "message", "detail" ] }, "example": { "message": "Something went wrong while processing your request.", "detail": { "code": 400, "message": "Something went wrong while processing your request.", "data": {} } } } }, "headers": {} } }, "security": [] }, "put": { "summary": "create", "deprecated": false, "description": "Creates a comment. ", "operationId": "createComment", "tags": [ "comment" ], "parameters": [ { "name": "expand", "in": "query", "description": "Expand a foreign key column (https://pocketbase.io/docs/working-with-relations/#expanding-relations).", "required": false, "example": "", "schema": { "type": "string" } }, { "name": "requestKey", "in": "query", "description": "Unique request id. Prevents auto cancel when sending multiple requests.", "required": false, "example": "", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "author": { "type": "string", "minLength": 15, "maxLength": 15 }, "text": { "type": "string" }, "trail": { "type": "string", "minLength": 15, "maxLength": 15 } }, "required": [ "text", "author", "trail" ] }, "example": { "text": "test", "trail": "3zdz20mt9243f60", "author": "z014o6bpcg680mg" } } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "author": { "type": "string" }, "collectionId": { "type": "string" }, "collectionName": { "type": "string" }, "created": { "type": "string" }, "expand": { "type": "object", "properties": { "author": { "type": "object", "properties": { "avatar": { "type": "string" }, "bio": { "type": "string" }, "collectionId": { "type": "string" }, "collectionName": { "type": "string" }, "created": { "type": "string" }, "emailVisibility": { "type": "boolean" }, "id": { "type": "string" }, "token": { "type": "string" }, "updated": { "type": "string" }, "username": { "type": "string" }, "verified": { "type": "boolean" } }, "required": [ "avatar", "bio", "collectionId", "collectionName", "created", "emailVisibility", "id", "token", "updated", "username", "verified" ] }, "trail": { "type": "object", "properties": { "author": { "type": "string" }, "category": { "type": "string" }, "collectionId": { "type": "string" }, "collectionName": { "type": "string" }, "created": { "type": "string" }, "date": { "type": "string" }, "description": { "type": "string" }, "difficulty": { "type": "string" }, "distance": { "type": "number" }, "duration": { "type": "integer" }, "elevation_gain": { "type": "integer" }, "elevation_loss": { "type": "integer" }, "gpx": { "type": "string" }, "id": { "type": "string" }, "lat": { "type": "number" }, "location": { "type": "string" }, "lon": { "type": "number" }, "name": { "type": "string" }, "photos": { "type": "array", "items": { "type": "string" } }, "public": { "type": "boolean" }, "summit_logs": { "type": "array", "items": { "type": "string" } }, "thumbnail": { "type": "integer" }, "updated": { "type": "string" }, "waypoints": { "type": "array", "items": { "type": "string" } } }, "required": [ "author", "category", "collectionId", "collectionName", "created", "date", "description", "difficulty", "distance", "duration", "elevation_gain", "elevation_loss", "gpx", "id", "lat", "location", "lon", "name", "photos", "public", "summit_logs", "thumbnail", "updated", "waypoints" ] } }, "required": [ "author", "trail" ] }, "id": { "type": "string" }, "rating": { "type": "integer" }, "text": { "type": "string" }, "trail": { "type": "string" }, "updated": { "type": "string" } }, "required": [ "author", "collectionId", "collectionName", "created", "expand", "id", "rating", "text", "trail", "updated" ] }, "example": { "author": "3mugf953w4a9fg5", "collectionId": "lf06qip3f4d11yk", "collectionName": "comments", "created": "2025-01-02 20:48:00.278Z", "expand": { "author": { "avatar": "pexels_photo_2230444_WILu8cRHVb.jpg", "bio": "ex aliqua velit deserunt ea exercitation do. Velit ullamco elit culpa eiusmod officia irure aute Lorem in ullamco labore ex. Officia ea qui in exercitation amet. Consequat laboris id duis enim Lorem dolore fugiat excepteur sunt. Sint consectetur duis tempor deserunt non. Ex amet sunt eu commodo.\n\nMollit labore cupidatat qui enim consectetur irure. Ea et reprehenderit ipsum adipisicing duis proident tempor esse excepteur dolor dolore anim consectetur aliqua. Laborum culpa eiusmod id ea consectetur do sit reprehenderit consequat voluptate mollit commodo. Ullamco aute ea minim enim et cupidatat ipsum cillum fugiat. Proident consectetur commodo Lorem do incididunt labore pariatur esse ea officia adipisicing. Do et sint culpa proident enim irure aliqua dolore magna. Laborum Lorem sunt amet occaecat occaecat mollit consectetur laborum ut.", "collectionId": "_pb_users_auth_", "collectionName": "users", "created": "2024-06-29 19:23:47.731Z", "emailVisibility": false, "id": "3mugf953w4a9fg5", "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcGlLZXlVaWQiOiIzMjk3NmExMi03ODE1LTQ1NGQtYTU5Yi1hNzY0ZTE4NmJjNjIiLCJzZWFyY2hSdWxlcyI6eyJjaXRpZXM1MDAiOnt9LCJ0cmFpbHMiOnsiZmlsdGVyIjoicHVibGljID0gdHJ1ZSBPUiBhdXRob3IgPSAzbXVnZjk1M3c0YTlmZzUgT1Igc2hhcmVzID0gM211Z2Y5NTN3NGE5Zmc1In19fQ.swips6eep2qMd0Nf3hdZr711N2fHyikOo7syWvuLEIA", "updated": "2024-12-30 18:36:39.161Z", "username": "Flomp", "verified": true }, "trail": { "author": "3mugf953w4a9fg5", "category": "pbwx1lg2nmcih0w", "collectionId": "e864strfxo14pm4", "collectionName": "trails", "created": "2024-12-30 18:57:35.453Z", "date": "2024-12-30 00:00:00.000Z", "description": "", "difficulty": "moderate", "distance": 5631.307320599051, "duration": 0, "elevation_gain": 76, "elevation_loss": 76, "gpx": "blob_0E0x721wan.gpx", "id": "z94vgei3jdc37k4", "lat": 47.385232, "location": "", "lon": 9.655863, "name": "Die Pottsau", "photos": [ "23xxesym0e9w18z2904frnpgy7_2SQmCCI6DV.jpg", "caret_right_solid_9154Rrvk6B.svg" ], "public": false, "summit_logs": [ "95bb1d77c8dfa98" ], "thumbnail": 1, "updated": "2024-12-30 18:59:56.924Z", "waypoints": [ "7f6d2a8c9d50136", "60c2d435a5b66ed" ] } }, "id": "sv3finqrp3951av", "rating": 0, "text": "API comment", "trail": "z94vgei3jdc37k4", "updated": "2025-01-02 20:48:00.278Z" } } }, "headers": {} }, "400": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "detail": { "type": "object", "properties": { "code": { "type": "integer" }, "message": { "type": "string" }, "data": { "type": "object", "properties": { "author": { "type": "object", "properties": { "code": { "type": "string" }, "message": { "type": "string" } }, "required": [ "code", "message" ] } }, "required": [ "author" ] } }, "required": [ "code", "message", "data" ] } }, "required": [ "message", "detail" ] }, "example": { "message": "Failed to create record.", "detail": { "code": 400, "message": "Failed to create record.", "data": { "author": { "code": "validation_missing_rel_records", "message": "Failed to find all relation records with the provided ids." } } } } } }, "headers": {} }, "x-400:Invalid Params": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "details": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string" }, "expected": { "type": "string" }, "received": { "type": "string" }, "path": { "type": "array", "items": { "type": "string" } }, "message": { "type": "string" } } } } }, "required": [ "message", "details" ] }, "example": { "message": "invalid_params", "details": [ { "code": "invalid_type", "expected": "string", "received": "number", "path": [ "text" ], "message": "Expected string, received number" } ] } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/comment/{id}": { "get": { "summary": "show", "deprecated": false, "description": "Shows a single comment.", "operationId": "showComment", "tags": [ "comment" ], "parameters": [ { "name": "id", "in": "path", "description": "Comment Id", "required": true, "example": "6vcudpc4wgc0ckk", "schema": { "type": "string", "minLength": 15, "maxLength": 15 } }, { "name": "expand", "in": "query", "description": "Expand a foreign key column (https://pocketbase.io/docs/working-with-relations/#expanding-relations).", "required": false, "example": "", "schema": { "type": "string" } }, { "name": "requestKey", "in": "query", "description": "Unique request key. Prevents auto cancel when sending multiple requests.", "required": false, "example": "", "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "author": { "type": "string" }, "collectionId": { "type": "string" }, "collectionName": { "type": "string" }, "created": { "type": "string" }, "id": { "type": "string" }, "iri": { "type": "string" }, "text": { "type": "string" }, "trail": { "type": "string" }, "updated": { "type": "string" } }, "required": [ "author", "collectionId", "collectionName", "created", "id", "iri", "text", "trail", "updated" ] }, "example": { "author": "pnat0l9g6p3nh2a", "collectionId": "lf06qip3f4d11yk", "collectionName": "comments", "created": "2025-06-18 18:48:15.477Z", "id": "32wf88038cb800i", "iri": "", "text": "Ja, echt toll!
", "trail": "23fd1747a29c3af", "updated": "2025-06-18 18:48:15.477Z" } } }, "headers": {} }, "400": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "details": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string" }, "minimum": { "type": "integer" }, "type": { "type": "string" }, "inclusive": { "type": "boolean" }, "exact": { "type": "boolean" }, "message": { "type": "string" }, "path": { "type": "array", "items": { "type": "string" } } } } } }, "required": [ "message", "details" ] }, "example": { "message": "invalid_params", "details": [ { "code": "too_small", "minimum": 15, "type": "string", "inclusive": true, "exact": true, "message": "String must contain exactly 15 character(s)", "path": [ "id" ] } ] } } }, "headers": {} }, "404": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "detail": { "type": "object", "properties": { "code": { "type": "integer" }, "message": { "type": "string" }, "data": { "type": "object", "properties": {} } }, "required": [ "code", "message", "data" ] } }, "required": [ "message", "detail" ] }, "example": { "message": "The requested resource wasn't found.", "detail": { "code": 404, "message": "The requested resource wasn't found.", "data": {} } } } }, "headers": {} } }, "security": [] }, "post": { "summary": "update", "deprecated": false, "description": "Updates a comment.", "operationId": "updateComment", "tags": [ "comment" ], "parameters": [ { "name": "id", "in": "path", "description": "Comment Id", "required": true, "example": "6vcudpc4wgc0ckk", "schema": { "type": "string", "minLength": 15, "maxLength": 15 } }, { "name": "expand", "in": "query", "description": "Expand a foreign key column (https://pocketbase.io/docs/working-with-relations/#expanding-relations).", "required": false, "example": "", "schema": { "type": "string" } }, { "name": "requestKey", "in": "query", "description": "Unique request key. Prevents auto cancel when sending multiple requests.", "required": false, "example": "", "schema": { "type": "string" } }, { "name": "Content-Type", "in": "header", "description": "", "required": true, "example": "application/json", "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "text": { "type": "string" }, "trail": { "type": "string" }, "author": { "type": "string" } }, "required": [ "text", "trail", "author" ] }, "example": "" } } }, "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "author": { "type": "string" }, "collectionId": { "type": "string" }, "collectionName": { "type": "string" }, "created": { "type": "string" }, "id": { "type": "string" }, "rating": { "type": "integer" }, "text": { "type": "string" }, "trail": { "type": "string" }, "updated": { "type": "string" } }, "required": [ "author", "collectionId", "collectionName", "created", "id", "rating", "text", "trail", "updated" ] }, "example": { "author": "3mugf953w4a9fg5", "collectionId": "lf06qip3f4d11yk", "collectionName": "comments", "created": "2025-01-02 20:43:00.030Z", "id": "tmof4bjvtw0sqqu", "rating": 0, "text": "API comment updated", "trail": "z94vgei3jdc37k4", "updated": "2025-01-02 21:00:03.866Z" } } }, "headers": {} }, "400": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "details": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string" }, "minimum": { "type": "integer" }, "type": { "type": "string" }, "inclusive": { "type": "boolean" }, "exact": { "type": "boolean" }, "message": { "type": "string" }, "path": { "type": "array", "items": { "type": "string" } } } } } }, "required": [ "message", "details" ] }, "example": { "message": "invalid_params", "details": [ { "code": "too_small", "minimum": 15, "type": "string", "inclusive": true, "exact": true, "message": "String must contain exactly 15 character(s)", "path": [ "id" ] } ] } } }, "headers": {} }, "404": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "detail": { "type": "object", "properties": { "code": { "type": "integer" }, "message": { "type": "string" }, "data": { "type": "object", "properties": {} } }, "required": [ "code", "message", "data" ] } }, "required": [ "message", "detail" ] }, "example": { "message": "The requested resource wasn't found.", "detail": { "code": 404, "message": "The requested resource wasn't found.", "data": {} } } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] }, "delete": { "summary": "delete", "deprecated": false, "description": "Deletes a comment.", "operationId": "deleteComment", "tags": [ "comment" ], "parameters": [ { "name": "id", "in": "path", "description": "Comment Id", "required": true, "example": "6vcudpc4wgc0ckk", "schema": { "type": "string" } }, { "name": "expand", "in": "query", "description": "Expand a foreign key column (https://pocketbase.io/docs/working-with-relations/#expanding-relations).", "required": false, "schema": { "type": "string" } }, { "name": "requestKey", "in": "query", "description": "Unique request key. Prevents auto cancel when sending multiple requests.", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "acknowledged": { "type": "boolean" } }, "required": [ "acknowledged" ] }, "example": { "acknowledged": true } } }, "headers": {} }, "400": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "details": { "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string" }, "minimum": { "type": "integer" }, "type": { "type": "string" }, "inclusive": { "type": "boolean" }, "exact": { "type": "boolean" }, "message": { "type": "string" }, "path": { "type": "array", "items": { "type": "string" } } } } } }, "required": [ "message", "details" ] }, "example": { "message": "invalid_params", "details": [ { "code": "too_small", "minimum": 15, "type": "string", "inclusive": true, "exact": true, "message": "String must contain exactly 15 character(s)", "path": [ "id" ] } ] } } }, "headers": {} }, "404": { "description": "", "content": { "application/json": { "schema": { "type": "object", "properties": { "message": { "type": "string" }, "detail": { "type": "object", "properties": { "code": { "type": "integer" }, "message": { "type": "string" }, "data": { "type": "object", "properties": {} } }, "required": [ "code", "message", "data" ] } }, "required": [ "message", "detail" ] }, "example": { "message": "The requested resource wasn't found.", "detail": { "code": 404, "message": "The requested resource wasn't found.", "data": {} } } } }, "headers": {} } }, "security": [ { "apikey-header-pb_auth": [] } ] } }, "/follow": { "get": { "summary": "list", "deprecated": false, "description": "Lists all follows.", "operationId": "listFollows", "tags": [ "follow" ], "parameters": [ { "name": "page", "in": "query", "description": "Page number starting at 1", "required": false, "example": 1, "schema": { "type": "number" } }, { "name": "perPage", "in": "query", "description": "Items per page", "required": false, "example": 5, "schema": { "type": "number" } }, { "name": "sort", "in": "query", "description": "Sort string (-/+