All articles

ICS TRANSP versus CLASS: private and busy are different settings

A private appointment can still block your availability. A transparent event can still contain readable details. In iCalendar, TRANSP answers a busy-time question; CLASS records an access-classification intention. They are not interchangeable privacy switches.

Illustrative combinations in an exchanged VEVENT

CLASS and TRANSPBusy-time meaningPrivacy limitation
PRIVATE + OPAQUEConsumes timeClassification alone does not enforce access
PRIVATE + TRANSPARENTDoes not consume timeNot hidden or encrypted merely by these values
PUBLIC + OPAQUEConsumes timeActual distribution depends on the system
PUBLIC + TRANSPARENTDoes not consume timeInformational does not mean restricted

Use TRANSP to interpret busy-time searches

RFC 5545 section 3.8.2.7 defines OPAQUE as consuming time for busy-time searches and TRANSPARENT as not consuming it. OPAQUE is the default when the property is omitted. This does not say that a transparent event is removed from an ordinary calendar view.

An illustrative birthday label may be transparent while a one-hour appointment is opaque. Choose according to the intended availability, not the event’s color or whether its title sounds personal. An all-day DATE representation is another separate characteristic.

Treat CLASS as an intention, not encryption

Section 3.8.1.3 defines PUBLIC, PRIVATE and CONFIDENTIAL classifications. It expressly says classification alone cannot enforce access in a receiving system. Authentication, authorization, roles and other security mechanisms also matter.

The RFC’s default PUBLIC classification is not an instruction that uploads a local event to the public internet. Conversely, adding CLASS:PRIVATE to a plaintext file does not encrypt or erase the title, notes and location already contained in it. Review the real destination and access rules before distributing an export.

Compare the four combinations

For a fictional 11:00–12:00 appointment, CLASS:PRIVATE with TRANSP:OPAQUE describes a private-classified event that consumes time in a busy search. CLASS:PRIVATE with TRANSP:TRANSPARENT expresses private classification without blocking that search.

A PUBLIC/OPAQUE event can expose intended public information while occupying time; a PUBLIC/TRANSPARENT one can be informational. These are format-level meanings. They do not establish exactly what a named colleague can see in Google, Microsoft, iCloud or an exported file.

Check availability and the audience separately

At the owning provider, inspect the event’s actual availability and its calendar/recipient access. Use a harmless sample if an authorized colleague needs to confirm the result. Ask two separate questions: does this time appear occupied, and which details are visible?

This article does not claim Cloud Calendars offers raw CLASS or TRANSP editing or overrides provider permissions. Use the provider’s supported privacy and availability controls where necessary. Changing a busy-time flag is not an appropriate repair for unintended disclosure.

What it looks like

  • Week calendar with color-coded appointments
  • Weather view with hourly and daily forecasts

Cloud Calendars overview, using our product images. Provider settings and protocol examples described in this guide are separate from the screens shown here.

What to do

  1. Read TRANSP separately from CLASS.
  2. Check the owning provider’s availability setting.
  3. Review real calendar access and the export audience.
  4. Verify occupied time and visible details as separate outcomes.

Questions

Does TRANSPARENT hide the event?
It makes the event transparent to busy-time searches. It is not a general instruction to conceal its details.
Is CLASS:PRIVATE safe to email publicly?
No. Classification is not encryption or an enforceable access rule for every receiver. Inspect the actual file contents and intended audience.

Primary specification checked for this guide

Related