Public-facing profiles owned by Everyday users. Each profile groups events, series, and followers under a single identity.
List profiles
Returns the profiles the authenticated caller can manage — those they own directly or administer through an organization they belong to. This is a workflow endpoint, not platform-wide discovery: public profiles owned by others are not returned. Use it to resolve a name to a profile you can write to before creating or modifying its events or series. (Platform-wide public search is a separate, forthcoming capability.)
query Parameters
cursorOpaque cursor returned from a previous list response.
limitMaximum number of items to return per page. Range 1-100, default 20.
List profiles › Responses
A page of profiles.
has_morenext_cursorCreate profile
Creates a profile owned by the authenticated user. everyday_id must be unique across the platform; conflicts return 409.
Headers
Idempotency-KeyA client-generated identifier (UUIDv4 recommended; 8–255 chars, alphanumeric/underscore/hyphen) for the request. The header is validated and logged, but server-side deduplication is not enforced: resubmitting a create with the same key produces a second resource. Treat creates as non-idempotent and design retries accordingly. Deduplication is planned for a future API version.
Create profile › Request Body
everyday_iddisplay_namedescriptionprofile_image_urlheader_image_urlis_privateCreate profile › Responses
Created
ideveryday_iddisplay_namedescriptionprofile_image_urlheader_image_urlis_privatefeatured_event_iddefault_event_duration_minutescreated_atupdated_atRetrieve profile
Returns a single profile by its prefixed ID. Returns 404 if the profile does not exist or is private and not visible to the caller.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
Retrieve profile › Responses
Profile
ideveryday_iddisplay_namedescriptionprofile_image_urlheader_image_urlis_privatefeatured_event_iddefault_event_duration_minutescreated_atupdated_atDelete profile
Soft-deletes a profile and schedules its associated data for cleanup. Idempotent — deleting an already-deleted profile is a no-op.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
Delete profile › Responses
Deleted
Update profile
Updates a profile owned by the authenticated user. Only the caller's own profiles are mutable; attempting to update someone else's profile returns 404.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
Update profile › Request Body
display_namedescriptionprofile_image_urlheader_image_urlis_privateUpdate profile › Responses
Updated
ideveryday_iddisplay_namedescriptionprofile_image_urlheader_image_urlis_privatefeatured_event_iddefault_event_duration_minutescreated_atupdated_atList a profile's events
Returns events belonging to the specified profile. Honors the same visibility rules as listEvents — private events on a private profile are not returned to non-owners.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
query Parameters
cursorOpaque cursor returned from a previous list response.
limitMaximum number of items to return per page. Range 1-100, default 20.
List a profile's events › Responses
Page
has_morenext_cursorCreate event for a profile
Creates an event under a profile owned by the authenticated user. The profile_id is taken from the path; the request body must not also set it. Identical to createEvent except that the parent profile is path-bound.
Time formats — timed events: send a naive local time plus a timezone (recommended), e.g. start_time "2026-06-06T09:30:00" with start_timezone "America/New_York"; the server resolves it to UTC. An offset-bearing RFC 3339 value (e.g. "2026-06-06T09:30:00-04:00") is also accepted and validated against the zone. All-day events: set is_all_day true and send date-only start_date/end_date (end_date exclusive) instead of start_time/end_time.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
Headers
Idempotency-KeyA client-generated identifier (UUIDv4 recommended; 8–255 chars, alphanumeric/underscore/hyphen) for the request. The header is validated and logged, but server-side deduplication is not enforced: resubmitting a create with the same key produces a second resource. Treat creates as non-idempotent and design retries accordingly. Deduplication is planned for a future API version.
Create event for a profile › Request Body
titleprofile_idRequired when calling POST /v1/events; inferred from path when calling POST /v1/profiles/{profile_id}/events.
descriptionlocationstart_time^\d{4}-\d{2}-\d{2}[T…Event start time. Recommended: a naive local time (no offset) interpreted in start_timezone — e.g. "2026-06-06T09:30:00". An offset-bearing RFC 3339 value (e.g. "2026-06-06T09:30:00-04:00") is also accepted. Must be sent together with start_timezone. Omit for all-day events (use start_date).
end_time^\d{4}-\d{2}-\d{2}[T…Event end time, same formats as start_time. When present, must be sent together with end_timezone. Omit for all-day events (use end_date).
start_timezoneIANA timezone name (e.g. "America/New_York") for start_time. Required. Used for display, outbound calendar sync, and recurrence expansion; it does not reinterpret an explicit offset in start_time. Must not be null.
end_timezoneIANA timezone name for end_time. Independent of start_timezone (e.g. a NYC→LA flight). Must be sent together with end_time and must not be null. When omitted on create, the platform fills it from start_timezone.
start_date^\d{4}-\d{2}-\d{2}$All-day start date (YYYY-MM-DD, date only). Required when is_all_day is true; do not send with start_time/end_time.
end_date^\d{4}-\d{2}-\d{2}$All-day end date (YYYY-MM-DD), EXCLUSIVE — the event spans up to but not including this date. Optional; defaults to start_date + 1 day (single day) and must be after start_date (multi-day allowed).
recurrence_ruleslugURL slug for the event. Optional — when omitted the platform derives one from the title and start time (evaluated in start_timezone). Reserved values (history, previous, s) are rejected.
image_urlis_all_dayis_privaterequire_rsvprequire_paymentCreate event for a profile › Responses
Created
idtitledescriptionlocationstart_timeend_timestart_timezoneend_timezonerecurrence_rulestatusslugimage_urlis_all_dayis_privaterequire_rsvprequire_paymentcancellation_reasoncancelled_atis_rescheduledcreated_atupdated_atList a profile's series
Returns series belonging to the specified profile.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
query Parameters
cursorOpaque cursor returned from a previous list response.
limitMaximum number of items to return per page. Range 1-100, default 20.
List a profile's series › Responses
Page
has_morenext_cursorCreate series for a profile
Creates a series under a profile owned by the authenticated user. slug must be unique within the profile; conflicts return 409.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
Headers
Idempotency-KeyA client-generated identifier (UUIDv4 recommended; 8–255 chars, alphanumeric/underscore/hyphen) for the request. The header is validated and logged, but server-side deduplication is not enforced: resubmitting a create with the same key produces a second resource. Treat creates as non-idempotent and design retries accordingly. Deduplication is planned for a future API version.
Create series for a profile › Request Body
nameslugdescriptionis_privateCreate series for a profile › Responses
Created
idnameslugdescriptionis_privatecreated_atupdated_atList followers of a profile
Returns users following the specified profile. Only returned if the profile is public, or if the authenticated user owns the profile.
path Parameters
profile_idPrefixed unique identifier of the profile (e.g., prf_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).
query Parameters
cursorOpaque cursor returned from a previous list response.
limitMaximum number of items to return per page. Range 1-100, default 20.
List followers of a profile › Responses
Page
has_morenext_cursor