/
PI
piknik
/
Piknik.Spot API
Search skmtc…
⌘K
Changes
Docs
Sign in
Docs
History
Schema
Filter operations
A2A Agents
50
Admin
133
Analytics
7
API
315
get
/a2a
GET /a2a
post
/a2a
POST /a2a
delete
/agritourism/campaigns/{id}/locations/{participantId}
DELETE /agritourism/campaigns/{id}/locations/{participantId}
post
/agritourism/campaigns/{id}/locations
POST /agritourism/campaigns/{id}/locations
post
/agritourism/campaigns/{id}/opt-in
POST /agritourism/campaigns/{id}/opt-in
get
/agritourism/campaigns/{id}/participant-stats
GET /agritourism/campaigns/{id}/participant-stats
get
/agritourism/campaigns/{id}
GET /agritourism/campaigns/{id}
put
/agritourism/campaigns/{id}
PUT /agritourism/campaigns/{id}
delete
/agritourism/campaigns/{id}
DELETE /agritourism/campaigns/{id}
get
/agritourism/campaigns/{id}/scanner/attendees
GET /agritourism/campaigns/{id}/scanner/attendees
post
/agritourism/campaigns/{id}/scanner/bulk-reconcile
POST /agritourism/campaigns/{id}/scanner/bulk-reconcile
post
/agritourism/campaigns/{id}/scanner/checkin
POST /agritourism/campaigns/{id}/scanner/checkin
get
/agritourism/campaigns/{id}/scanner/context
GET /agritourism/campaigns/{id}/scanner/context
get
/agritourism/campaigns/{id}/scanner/guest-list
GET /agritourism/campaigns/{id}/scanner/guest-list
post
/agritourism/campaigns/{id}/scanner/lookup
POST /agritourism/campaigns/{id}/scanner/lookup
get
/agritourism/campaigns/{id}/scanner/stats
GET /agritourism/campaigns/{id}/scanner/stats
post
/agritourism/campaigns/{id}/scanner/undo-checkin
POST /agritourism/campaigns/{id}/scanner/undo-checkin
post
/agritourism/campaigns/{id}/status
POST /agritourism/campaigns/{id}/status
get
/agritourism/campaigns/{id}/stop-busyness
GET /agritourism/campaigns/{id}/stop-busyness
delete
/agritourism/campaigns/{id}/ticket-types/{ticketTypeId}
DELETE /agritourism/campaigns/{id}/ticket-types/{ticketTypeId}
patch
/agritourism/campaigns/{id}/ticket-types/{ticketTypeId}
PATCH /agritourism/campaigns/{id}/ticket-types/{ticketTypeId}
post
/agritourism/campaigns/{id}/ticket-types
POST /agritourism/campaigns/{id}/ticket-types
get
/agritourism/campaigns/all
GET /agritourism/campaigns/all
post
/agritourism/campaigns/create
POST /agritourism/campaigns/create
get
/agritourism/campaigns/joinable
GET /agritourism/campaigns/joinable
get
/agritourism/campaigns/mine
GET /agritourism/campaigns/mine
get
/agritourism/campaigns
GET /agritourism/campaigns
post
/agritourism/checkout
POST /agritourism/checkout
post
/agritourism/claim-free
POST /agritourism/claim-free
get
/agritourism/fee-profiles
GET /agritourism/fee-profiles
post
/agritourism/lookup
POST /agritourism/lookup
get
/agritourism/my-associations
GET /agritourism/my-associations
get
/agritourism/stripe-connect/dashboard
GET /agritourism/stripe-connect/dashboard
post
/agritourism/stripe-connect
POST /agritourism/stripe-connect
get
/agritourism/stripe-connect/status
GET /agritourism/stripe-connect/status
put
/agritourism/ticket-types/{id}
PUT /agritourism/ticket-types/{id}
post
/agritourism/tickets/{id}/cancel
POST /agritourism/tickets/{id}/cancel
get
/agritourism/tickets/{id}/download
GET /agritourism/tickets/{id}/download
get
/agritourism/tickets/{id}/pass
GET /agritourism/tickets/{id}/pass
get
/agritourism/tickets/{id}
GET /agritourism/tickets/{id}
get
/agritourism/tickets
GET /agritourism/tickets
post
/agritourism/validate
POST /agritourism/validate
post
/assistant/chat
POST /api/assistant/chat - the general help assistant behind the help button and the dashboard.
put
/associations/{id}/members/{membershipId}
PUT /associations/{id}/members/{membershipId}
get
/associations/{id}/members
GET /associations/{id}/members
put
/associations/{id}/place-tours/{tourId}
PUT /associations/{id}/place-tours/{tourId}
patch
/associations/{id}/place-tours/{tourId}
PATCH /associations/{id}/place-tours/{tourId}
get
/associations/{id}/place-tours
GET /associations/{id}/place-tours
post
/associations/{id}/place-tours
POST /associations/{id}/place-tours
get
/associations/{id}/spend-challenge/activity-map
GET /associations/{id}/spend-challenge/activity-map
post
/associations/{id}/spend-challenge/campaigns/{campaignId}/open
POST /associations/{id}/spend-challenge/campaigns/{campaignId}/open
get
/associations/{id}/spend-challenge/campaigns/{campaignId}/poster
GET /associations/{id}/spend-challenge/campaigns/{campaignId}/poster
patch
/associations/{id}/spend-challenge/campaigns/{campaignId}
PATCH /associations/{id}/spend-challenge/campaigns/{campaignId}
get
/associations/{id}/spend-challenge/campaigns
GET /associations/{id}/spend-challenge/campaigns
post
/associations/{id}/spend-challenge/campaigns
POST /associations/{id}/spend-challenge/campaigns
get
/associations/{id}/spend-challenge/insights
GET /associations/{id}/spend-challenge/insights
get
/associations/{id}/spend-challenge
GET /associations/{id}/spend-challenge
put
/associations/{id}/spend-challenge
PUT /associations/{id}/spend-challenge
get
/associations/by-slug/{slug}/tours/{tourSlug}
GET /associations/by-slug/{slug}/tours/{tourSlug}
get
/associations/by-slug/{slug}/tours
GET /associations/by-slug/{slug}/tours
get
/baskets/{id}
link access via UUID)
put
/baskets/{id}
link access via UUID)
delete
/baskets/{id}
link access via UUID)
get
/baskets
Create or upsert a basket
post
/baskets
Create or upsert a basket
get
/browse-products
GET /api/browse-products
post
/business/store-qr/apply-layout-all
POST /business/store-qr/apply-layout-all
post
/business/store-qr/regenerate-token
POST /business/store-qr/regenerate-token
get
/business/store-qr
GET /business/store-qr
put
/business/store-qr
PUT /business/store-qr
post
/business/store-qr/track
POST /business/store-qr/track
get
/categories
GET /categories
get
/community/insights
GET /community/insights
get
/community/members
Public response shape. STRUCTURAL GUARANTEE: this type does not include
get
/community-food-score-pdf
GET /community-food-score-pdf
get
/config/client
GET /config/client
put
/connections/{id}
PUT /connections/{id}
post
/connections/{id}
POST /connections/{id}
delete
/connections/{id}
DELETE /connections/{id}
get
/connections
GET /connections
post
/connections
POST /connections
get
/connections/status
GET /api/connections/status?userId=xxx
post
/contact
POST /contact
post
/cron/ontario-weekly-snapshot
POST /api/cron/ontario-weekly-snapshot
get
/cuisines
GET /cuisines
get
/debug/features
GET /api/debug/features
get
/demand
GET /api/demand - what people are asking for on the marketplace, anonymous totals only.
get
/dev/chat
GET /dev/chat
post
/dev/chat
POST /dev/chat
post
/dev/login
POST /dev/login
get
/dev/users
GET /dev/users
get
/discussions/categories/{slug}/jobs
GET /discussions/categories/{slug}/jobs
get
/discussions/categories
GET /discussions/categories
get
/discussions/locations
GET /discussions/locations
post
/discussions/posts/{id}/replies
POST /discussions/posts/{id}/replies
get
/discussions/posts/{id}
GET /discussions/posts/{id}
get
/discussions/posts
GET /discussions/posts
post
/discussions/posts
POST /discussions/posts
get
/discussions/subscriptions
GET /discussions/subscriptions
post
/discussions/subscriptions
POST /discussions/subscriptions
delete
/discussions/subscriptions
DELETE /discussions/subscriptions
post
/endorsements/check
POST /endorsements/check
post
/endorsements
POST /endorsements
delete
/endorsements
DELETE /endorsements
get
/engagement-metrics
GET /engagement-metrics
get
/feature-flags
Get feature flags for the current user
post
/feature-flags
Get feature flags for the current user
post
/feedback
POST /feedback
get
/food-score/personal
GET /food-score/personal
patch
/food-score/personal
PATCH /food-score/personal
get
/for-real-estate/connectivity-audit/preview
GET /for-real-estate/connectivity-audit/preview
get
/for-real-estate/connectivity-audit
GET /for-real-estate/connectivity-audit
post
/for-real-estate/connectivity-audit
POST /for-real-estate/connectivity-audit
get
/games/{gameId}/leaderboard
GET /games/{gameId}/leaderboard
get
/games/{gameId}/participating-businesses
GET /games/{gameId}/participating-businesses
get
/games/{gameId}
GET /games/{gameId}
get
/games/{gameId}/user-stats
GET /games/{gameId}/user-stats
get
/games/{gameId}/user-visits
GET /games/{gameId}/user-visits
get
/games/active
GET /games/active
get
/games/has-active
GET /games/has-active
get
/games/match3/scores
POST - Submit a new Match3 score
post
/games/match3/scores
POST - Submit a new Match3 score
get
/games/my-challenges
GET /games/my-challenges
get
/games/random-local-spot
GET /games/random-local-spot
get
/games
GET /games
get
/geocode/reverse
GET /geocode/reverse
get
/geocode
Geocode Address
get
/global-features
GET /api/global-features
post
/invitations/{token}/decline
POST /invitations/{token}/decline
get
/invitations/{token}
GET /invitations/{token}
post
/invitations/{token}
POST /invitations/{token}
get
/jobs/{jobId}/candidates
GET /api/jobs/[jobId]/candidates
get
/jobs/{jobId}
GET /jobs/{jobId}
put
/jobs/{jobId}
PUT /jobs/{jobId}
delete
/jobs/{jobId}
DELETE /jobs/{jobId}
get
/jobs/public
GET /jobs/public
get
/jobs/recommendations
GET /api/jobs/recommendations
get
/jobs
GET /jobs
post
/jobs
POST /jobs
get
/local-food-score
GET /api/local-food-score
get
/local-food-score/sovereignty-index
GET /local-food-score/sovereignty-index
get
/local-food-score/system-metrics
GET /local-food-score/system-metrics
get
/local-food-score-narrative-pdf
GET /local-food-score-narrative-pdf
get
/local-food-score-pdf
GET /local-food-score-pdf
get
/marketplace/contact
GET /marketplace/contact
post
/marketplace/contact
POST /marketplace/contact
get
/me
Get Current User Profile
get
/my-businesses
GET /my-businesses
get
/notifications/announcement-count
GET /notifications/announcement-count
get
/notifications/debug
GET /notifications/debug
get
/notifications/discussion-replies
GET /notifications/discussion-replies
get
/notifications/preferences
GET /notifications/preferences
put
/notifications/preferences
PUT /notifications/preferences
get
/notifications
GET /notifications
put
/notifications
PUT /notifications
post
/notifications/subscribe
POST /notifications/subscribe
delete
/notifications/subscribe
DELETE /notifications/subscribe
post
/notifications/test
POST /notifications/test
get
/notifications/vapid-key
GET /notifications/vapid-key
get
/ontario-food-score-heatmap
GET /ontario-food-score-heatmap
get
/openapi/json
GET /openapi/json
get
/openapi
GET /openapi
get
/participants/{id}/notification-filters/{filterId}
GET /api/participants/[id]/notification-filters/[filterId]
delete
/participants/{id}/notification-filters/{filterId}
GET /api/participants/[id]/notification-filters/[filterId]
patch
/participants/{id}/notification-filters/{filterId}
GET /api/participants/[id]/notification-filters/[filterId]
get
/participants/{id}/notification-filters
GET /api/participants/[id]/notification-filters
post
/participants/{id}/notification-filters
GET /api/participants/[id]/notification-filters
get
/participants/{id}
GET /participants/{id}
patch
/participants/{id}
PATCH /participants/{id}
get
/participants/{id}/tasks
GET /participants/{id}/tasks
get
/participants/search
GET /participants/search
get
/piknik-durham-report-card-pdf
GET /piknik-durham-report-card-pdf
get
/place/{id}/og-image
GET /place/{id}/og-image
put
/place/{id}/users/{userId}
PUT /place/{id}/users/{userId}
delete
/place/{id}/users/{userId}
DELETE /place/{id}/users/{userId}
get
/place/{id}/users
GET /place/{id}/users
post
/place/{id}/users
POST /place/{id}/users
patch
/place/{id}/users
PATCH /place/{id}/users
get
/place/challenge-interest
GET /place/challenge-interest
post
/place/challenge-interest
POST /place/challenge-interest
get
/place/challenge-opportunities
GET /place/challenge-opportunities
patch
/place/games/{gameId}/participation
PATCH /place/games/{gameId}/participation
get
/place/games/{gameId}/qr-code/pdf
GET /place/games/{gameId}/qr-code/pdf
get
/place/games/{gameId}/qr-code
GET /place/games/{gameId}/qr-code
get
/place/games
GET /place/games
get
/place/store-qr/{participantId}/qr-code/pdf
GET /place/store-qr/{participantId}/qr-code/pdf
get
/place/store-qr/{participantId}/qr-code
GET /place/store-qr/{participantId}/qr-code
get
/place-tours/by-slug/{tourSlug}
GET /place-tours/by-slug/{tourSlug}
get
/place-tours/for-place/{participantId}
GET /place-tours/for-place/{participantId}
post
/place-tours/road-path
POST /place-tours/road-path
get
/place-tours
GET /place-tours
get
/planting-calendar/zones
Public API: return zones with their locations for the planting calendar.
get
/planting-calendar.ics
GET /planting-calendar.ics
get
/profile/{username}
GET /profile/{username}
get
/profile
GET /profile
post
/profile
POST /profile
delete
/profile/skills/{id}
DELETE /profile/skills/{id}
post
/profile/skills
POST /profile/skills
get
/profile/suggest-slug
GET /profile/suggest-slug
put
/profile/work-experience/{id}
PUT /profile/work-experience/{id}
delete
/profile/work-experience/{id}
DELETE /profile/work-experience/{id}
post
/profile/work-experience
POST /profile/work-experience
get
/recipes/{id}/comments
GET /recipes/{id}/comments
post
/recipes/{id}/comments
POST /recipes/{id}/comments
delete
/recipes/{id}/comments
DELETE /recipes/{id}/comments
post
/recipes/{id}/flag
POST /recipes/{id}/flag
get
/recipes/{id}/local-sourcing
GET /recipes/{id}/local-sourcing
get
/recipes/{id}
GET /recipes/{id}
delete
/recipes/{id}
DELETE /recipes/{id}
patch
/recipes/{id}
PATCH /recipes/{id}
get
/recipes
GET /recipes
post
/recipes
POST /recipes
get
/recommendations
GET /recommendations
post
/recommendations
POST /recommendations
get
/regional-score/analyze
GET /regional-score/analyze
post
/regional-score/simulate
POST /regional-score/simulate
post
/scan/checkin
POST /scan/checkin
get
/scan/nearby
GET /scan/nearby
get
/seasonal-guide
GET /seasonal-guide
get
/skills/search
GET /skills/search
post
/sms/inbound
Twilio inbound SMS webhook.
get
/spend-challenge/associations/{id}/campaign
GET /spend-challenge/associations/{id}/campaign
get
/spend-challenge/associations/{id}
GET /spend-challenge/associations/{id}
get
/spend-challenge/associations/{id}/share-card
Fetch an image (remote URL or local file path) and return a base64 data URI
post
/spend-challenge/log
POST /spend-challenge/log
get
/spend-challenge/my-logs
GET /spend-challenge/my-logs
get
/spend-challenge/nearby
GET /spend-challenge/nearby
get
/spend-challenge/participant/{id}/impact
GET /spend-challenge/participant/{id}/impact
get
/spend-challenge/rankings
GET /spend-challenge/rankings
get
/sponsor/applications
GET /sponsor/applications
post
/sponsor/applications
POST /sponsor/applications
get
/sponsorships
GET /sponsorships
post
/sponsorships
POST /sponsorships
post
/tasks/{id}/abandon
POST /tasks/{id}/abandon
post
/tasks/{id}/claim
POST /tasks/{id}/claim
post
/tasks/{id}/confirm-dropoff
POST /api/tasks/[id]/confirm-dropoff
post
/tasks/{id}/confirm-pickup
POST /api/tasks/[id]/confirm-pickup
get
/tasks/{id}/messages
GET /tasks/{id}/messages
post
/tasks/{id}/messages
POST /tasks/{id}/messages
post
/tasks/{id}/reject
POST /tasks/{id}/reject
get
/tasks/{id}
GET /tasks/{id}
post
/tasks/{id}/submit-response
POST /tasks/{id}/submit-response
post
/tasks/{id}/unclaim
POST /api/tasks/[id]/unclaim
put
/tasks/{id}/update
PUT /tasks/{id}/update
delete
/tasks/{id}/update
DELETE /tasks/{id}/update
patch
/tasks/{id}/update-response
PATCH /api/tasks/[id]/update-response
post
/tasks/{id}/verify
POST /tasks/{id}/verify
post
/tasks/create
POST /tasks/create
get
/tasks/nearby
GET /tasks/nearby
post
/tasks/nearby
POST /tasks/nearby
get
/tasks/public
GET /tasks/public
post
/tasks/trigger-proximity-check
POST /tasks/trigger-proximity-check
post
/telegram/create-listing
POST /api/telegram/create-listing
post
/telegram/inbound
Telegram inbound message handler.
post
/test/telegram-notify
POST /api/test/telegram-notify
get
/thumbs/{participantId}
GET /thumbs/{participantId}
post
/thumbs/{participantId}
POST /thumbs/{participantId}
post
/upload/avatar
POST /upload/avatar
post
/upload/place-image
POST /upload/place-image
delete
/upload/place-image
DELETE /upload/place-image
post
/upload/recipe-image
POST /upload/recipe-image
post
/upload/widget-brand-image
POST /upload/widget-brand-image
delete
/upload/widget-brand-image
DELETE /upload/widget-brand-image
post
/upload-image
POST /upload-image
get
/user/delete-account
GET /user/delete-account
post
/user/delete-account
POST /user/delete-account
get
/user/delivery-stats
GET /user/delivery-stats
get
/user/feature-preferences
GET /api/user/feature-preferences
patch
/user/feature-preferences
GET /api/user/feature-preferences
get
/user/game-permissions
GET /api/user/game-permissions
get
/user/location
GET /user/location
post
/user/location
POST /user/location
get
/user/tasks
GET /user/tasks
get
/users/{userId}/follows
Get all entities a user follows
get
/users/me
GET /users/me
post
/users/me
POST /users/me
patch
/users/me
PATCH /users/me
post
/users/me/social-links/phone/code
POST /api/users/me/social-links/phone/code
delete
/users/me/social-links/phone
DELETE /api/users/me/social-links/phone
get
/users/me/social-links
GET /api/users/me/social-links
post
/users/me/social-links/telegram/code
POST /api/users/me/social-links/telegram/code
delete
/users/me/social-links/telegram
DELETE /api/users/me/social-links/telegram
get
/users/search
GET /users/search
post
/v2/follow
POST /v2/follow
delete
/v2/follow
DELETE /v2/follow
get
/v2/followed-announcements
GET /v2/followed-announcements
get
/v2/following
GET /v2/following
get
/v2/metadata
GET /v2/metadata
get
/v2/notifications/announcements
GET /v2/notifications/announcements
put
/v2/notifications/announcements
PUT /v2/notifications/announcements
get
/v2/offerings/{id}/sources
GET /v2/offerings/{id}/sources
get
/v2/resiliency/score
GET /v2/resiliency/score
get
/v2
GET /v2
get
/v2/search
GET /v2/search
get
/v2/service-locations/bulk
GET /api/v2/service-locations/bulk?participantIds=id1,id2,id3&purpose=CSA_PICKUP,CSA_DELIVERY
get
/v2/users/{userId}/suggestions
GET /v2/users/{userId}/suggestions
get
/v2/visit/{participantId}
GET /v2/visit/{participantId}
get
/validation/places
GET /validation/places
post
/validation/places
POST /validation/places
post
/voice/twilio
Twilio voice webhook: speech-gather loop backed by the shared chat service.
post
/voice/vapi
Vapi voice-agent webhook handler.
get
/webhooks/{id}
GET /webhooks/{id}
put
/webhooks/{id}
PUT /webhooks/{id}
delete
/webhooks/{id}
DELETE /webhooks/{id}
post
/webhooks/process
POST /api/webhooks/process
get
/webhooks
GET /webhooks
post
/webhooks
POST /webhooks
post
/webhooks/stripe
POST /webhooks/stripe
post
/webhooks/test
POST /webhooks/test
get
/widget/branding
GET /widget/branding
put
/widget/branding
PUT /widget/branding
put
/widget/keys/{keyId}
PUT /api/widget/keys/[keyId]
delete
/widget/keys/{keyId}
PUT /api/widget/keys/[keyId]
get
/widget/keys
GET /api/widget/keys
post
/widget/keys
GET /api/widget/keys
Associations
6
Authentication
5
CSA
11
Events
31
Marketplace
17
MCP
8
OAuth
12
Participants
83
Products
3
Surveys
11
API
Copy Markdown
Copied
Copy failed
GET /v2
Endpoint for /v2
get
/v2
Request
Base URL:
https://piknik.spot/api
URL:
https://piknik.spot/api/v2
Auth:
none required
Response
Success
object
required
Changes
No recorded changes to this operation across all 1 revision of this API.