Everyday | API DocumentationEveryday | API Documentation
  • Pricing
  • Documentation
  • API Reference
Information
Organizations
    List available organizationsget
Profiles
    List profilesgetCreate profilepostRetrieve profilegetDelete profiledeleteUpdate profilepatchList a profile's eventsgetCreate event for a profilepostList a profile's seriesgetCreate series for a profilepostList followers of a profileget
Events
    List a profile's eventsgetCreate event for a profilepostList eventsgetCreate eventpostRetrieve eventgetDelete eventdeleteUpdate eventpatchCancel eventpostReschedule eventpostList RSVPsgetCreate RSVPpostDelete RSVPdeleteUpdate RSVPpatchRSVP statisticsgetGet RSVP settingsgetUpdate RSVP settingspatchList events in a seriesgetAdd event to seriespostRemove event from seriesdelete
RSVPs
    List RSVPsgetCreate RSVPpostDelete RSVPdeleteUpdate RSVPpatchRSVP statisticsgetGet RSVP settingsgetUpdate RSVP settingspatch
Series
    List a profile's seriesgetCreate series for a profilepostList seriesgetRetrieve seriesgetDelete seriesdeleteUpdate seriespatchPreview series deletiongetList events in a seriesgetAdd event to seriespostRemove event from seriesdelete
Calendars
    List calendarsgetRetrieve calendargetList calendar eventsgetCreate calendar eventpostDelete calendar eventdeleteUpdate calendar eventpatchList connected external calendarsgetRead your agendaget
Subscriptions
    List subscriptionsgetCreate subscriptionpostRetrieve subscriptiongetDelete subscriptiondeleteUpdate subscriptionpatch
Follows
    List followers of a profilegetList followsgetCreate followpostDelete followdelete
Search
    Search across events, profiles, and seriesget
MCP
    MCP Server (consumer / OAuth)postMCP Server (developer / API key)post
Schemas
powered by Zuplo
Everyday Public API
Everyday Public API

Subscriptions

Follow-style subscriptions that sync a profile or series into a user's calendar.


List subscriptions

GET
https://api.every.day
/v1/subscriptions

Returns the authenticated user's active and inactive subscriptions to profiles or series.

List subscriptions › query Parameters

cursor
​string

Opaque cursor returned from a previous list response.

limit
​integer · min: 1 · max: 100

Maximum number of items to return per page. Range 1-100, default 20.

Default: 20

List subscriptions › Responses

Page

​object[] · required
has_more
​boolean · required
next_cursor
​string | null · required
GET/v1/subscriptions
curl --request GET \ --url https://api.every.day/v1/subscriptions
shell
Example Responses
No example specified for this content type
application/json

Create subscription

POST
https://api.every.day
/v1/subscriptions

Subscribes the authenticated user to a profile or series. The corresponding events are then synced into target_calendar_id (or the user's default personal calendar if omitted).

Create subscription › Headers

Idempotency-Key
​string · minLength: 8 · maxLength: 255

A 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 subscription › Request Body

subscription_type
​string · enum · required
Enum values:
profile
series
profile_id
​string · pattern: ^prf_[0-9a-fA-F]{32}…
series_id
​string · pattern: ^ser_[0-9a-fA-F]{32}…
include_personal_calendar
​boolean
external_calendar_ids
​string[] · maxItems: 100 · unique

Connected external calendars returned by GET /v1/external-calendars. Personal cal_ IDs are not accepted. Omission means no external targets; personal calendar inclusion defaults to true.

consolidate
​boolean

Explicitly adopt matching manual/child-series sync intent into this subscription. Defaults to false. May retire redundant child subscriptions.

Default: false

Create subscription › Responses

Created

id
​string · pattern: ^sub_[0-9a-fA-F]{32}…
profile_id
​string | null · pattern: ^prf_[0-9a-fA-F]{32}…

Profile source for a profile subscription; otherwise null. A null value for a profile subscription means the source is no longer visible. Use subscription_type to identify the source type.

series_id
​string | null · pattern: ^ser_[0-9a-fA-F]{32}…

Series source for a series subscription; otherwise null. A null value for a series subscription means the source is no longer visible. Use subscription_type to identify the source type.

subscription_type
​string
is_active
​boolean | null
access_valid
​boolean | null
include_personal_calendar
​boolean | null
created_at
​string | null · date-time
updated_at
​string | null · date-time
POST/v1/subscriptions
curl --request POST \ --url https://api.every.day/v1/subscriptions \ --header 'Content-Type: application/json' \ --data ' { "subscription_type": "profile", "profile_id": "profile_id", "series_id": "series_id", "include_personal_calendar": true, "external_calendar_ids": [ "string" ], "consolidate": false } '
shell
Example Request Body
{ "subscription_type": "profile", "profile_id": "profile_id", "series_id": "series_id", "include_personal_calendar": true, "external_calendar_ids": [ "string" ], "consolidate": false }
json
Example Responses
No example specified for this content type
application/json

Retrieve subscription

GET
https://api.every.day
/v1/subscriptions/{subscription_id}

Returns a subscription owned by the authenticated user.

Retrieve subscription › path Parameters

subscription_id
​string · pattern: ^sub_[0-9a-fA-F]{32}… · required

Prefixed unique identifier of the subscription (e.g., sub_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).

Retrieve subscription › Responses

Subscription

id
​string · pattern: ^sub_[0-9a-fA-F]{32}…
profile_id
​string | null · pattern: ^prf_[0-9a-fA-F]{32}…

Profile source for a profile subscription; otherwise null. A null value for a profile subscription means the source is no longer visible. Use subscription_type to identify the source type.

series_id
​string | null · pattern: ^ser_[0-9a-fA-F]{32}…

Series source for a series subscription; otherwise null. A null value for a series subscription means the source is no longer visible. Use subscription_type to identify the source type.

subscription_type
​string
is_active
​boolean | null
access_valid
​boolean | null
include_personal_calendar
​boolean | null
created_at
​string | null · date-time
updated_at
​string | null · date-time
GET/v1/subscriptions/{subscription_id}
curl --request GET \ --url https://api.every.day/v1/subscriptions/:subscription_id
shell
Example Responses
No example specified for this content type
application/json

Delete subscription

DELETE
https://api.every.day
/v1/subscriptions/{subscription_id}

Unsubscribes from the source. Events that were synced under this subscription are removed from the target calendar.

Delete subscription › path Parameters

subscription_id
​string · pattern: ^sub_[0-9a-fA-F]{32}… · required

Prefixed unique identifier of the subscription (e.g., sub_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).

Delete subscription › Responses

Deleted

No data returned
DELETE/v1/subscriptions/{subscription_id}
curl --request DELETE \ --url https://api.every.day/v1/subscriptions/:subscription_id
shell
Example Responses
No example specified for this content type

Update subscription

PATCH
https://api.every.day
/v1/subscriptions/{subscription_id}

Updates a subscription's sync window or active state. Setting is_active: false stops new events from syncing but does not retroactively remove events that were already synced.

Update subscription › path Parameters

subscription_id
​string · pattern: ^sub_[0-9a-fA-F]{32}… · required

Prefixed unique identifier of the subscription (e.g., sub_8f3ab21e49c44c8baf7b5e4a1b2c3d4e).

Update subscription › Request Body

is_active
​boolean

Update subscription › Responses

Updated

id
​string · pattern: ^sub_[0-9a-fA-F]{32}…
profile_id
​string | null · pattern: ^prf_[0-9a-fA-F]{32}…

Profile source for a profile subscription; otherwise null. A null value for a profile subscription means the source is no longer visible. Use subscription_type to identify the source type.

series_id
​string | null · pattern: ^ser_[0-9a-fA-F]{32}…

Series source for a series subscription; otherwise null. A null value for a series subscription means the source is no longer visible. Use subscription_type to identify the source type.

subscription_type
​string
is_active
​boolean | null
access_valid
​boolean | null
include_personal_calendar
​boolean | null
created_at
​string | null · date-time
updated_at
​string | null · date-time
PATCH/v1/subscriptions/{subscription_id}
curl --request PATCH \ --url https://api.every.day/v1/subscriptions/:subscription_id \ --header 'Content-Type: application/json' \ --data ' { "is_active": true } '
shell
Example Request Body
{ "is_active": true }
json
Example Responses
No example specified for this content type
application/json

CalendarsFollows