Plain-language policy

Privacy, without the fog.

CC'ed needs routing information to deliver a push. Notification contents pass through memory and are not kept by the service.

What CC'ed handles

Routing and installation data

To operate the service, CC'ed stores random customer and installation identifiers, cryptographic digests of credentials and webhook secrets, Apple Push Notification service device tokens, platform, app version and build number, push-registration status, entitlement dates, and aggregate delivery counters. Webhook secrets and management credentials are generated randomly. The hosted backend stores one-way digests rather than the original values; the app keeps the credentials it needs in Keychain and, for the shared route, an encrypted field in your private CloudKit database.

When an installation is created, the API receives the source network address from its front-end proxy. It normalises that address and converts it into a keyed digest used for rate limiting. The digest and its one-hour rate-limit window are kept only in process memory; expired entries are removed as later installation requests are handled or when the service restarts. CC'ed does not write the raw address or digest to its database, normal application logs, or access logs.

Purchases

CC'ed uses Apple In-App Purchase and RevenueCat to offer and verify monthly, annual, and lifetime access. RevenueCat receives the random CC'ed customer identifier and purchase or subscription information needed to verify access. CC'ed does not receive or store your payment-card details.

iCloud

If iCloud is available, CC'ed uses your private CloudKit database to keep the shared webhook authority consistent across your devices and to show your private registered-device directory. That directory contains a random installation identifier, platform, device model or user-assigned device name when available, and recent delivery and activity times. The raw hardware identifier used locally to determine a model name is not stored or uploaded. Apple operates iCloud under its own terms and privacy policy. CC'ed uses this information only to identify your devices and route notifications, never for advertising, analytics, tracking, or fingerprinting.

Notification contents

Titles, subtitles, and message bodies are processed only long enough to validate the request and ask Apple to deliver the notification. They are not written to the CC'ed database or normal application logs. If complimentary or paid access is inactive, CC'ed sends the device a fixed generic alert instead; sender-provided text, links, and images are omitted. Recent notification history is stored locally on your device. Redacted history entries contain no original notification content, and payload contents are not synced through CC'ed or CloudKit.

If you choose to include an HTTPS image URL, the notification service extension requests that image directly from the host you specified. That host may receive ordinary network information such as the device’s IP address under its own privacy practices.

How the data is used

  • To create and secure your private webhook routes.
  • To send notifications to the Apple devices addressed by a route.
  • To verify complimentary, subscription, or lifetime access.
  • To operate, secure, troubleshoot, and prevent abuse of the service.

CC'ed does not sell personal data, show advertising, build advertising profiles, or track you across apps or websites.

Who processes data

CC'ed uses Apple for push delivery, iCloud, and in-app purchases; RevenueCat for purchase and entitlement verification; and Hetzner infrastructure to run the hosted service. These providers process only the information needed to provide their part of the service and are expected to protect it under their agreements and applicable law.

Retention and deletion

Routing, installation, and entitlement records are kept while they are needed to provide and secure CC'ed. Notification contents are not retained server-side. Notification history is stored only on your device. Whenever CC'ed records or loads history, it removes entries older than 30 days and limits retained history to 5,000 entries. You can remove individual entries or clear the history sooner. You can ask for the hosted records associated with your installation to be deleted; deleting them permanently disables the related webhook routes.

To start a deletion request, email me@ruiper.es with the subject “CC'ed deletion request”. Because CC'ed has no account or email login, support will reply with a verification procedure for the installation. Do not include a webhook URL, management secret, notification payload, or other credential in the initial email.

Your choices

You can deny or revoke notification permission in Apple Settings, stop using a webhook at any time, manage or cancel subscriptions through your Apple ID, and request deletion of hosted records. The app does not request tracking permission because it does not perform cross-app tracking.

Contact

Questions, privacy requests, and deletion requests can be sent to me@ruiper.es. This policy will be updated here if CC'ed changes how it handles data.