Data Deletion Policy and Deletion Callback Contract
Public data deletion instructions URL: https://oraglegpt.org/legal/data-deletion
This is the canonical, server-rendered URL to register with Meta, TikTok, LinkedIn, Google, and any other platform that requires a data deletion instructions URL. It returns real HTML at HTTP 200 with no login, no redirect, and no URL fragment.
The Service is operated by GPT LLM ORAGLE Ltd. Liability Co., a Wyoming close limited liability company, registered office 30 N Gould St, Ste N, Sheridan, WY 82801, United States. All deletion requests are handled by the Company through privacy@oraglegpt.org. We do not name individual personnel.
1. Why this page exists
Meta (Facebook, Instagram, Threads), TikTok, X, LinkedIn, Google (YouTube and Google Business Profile), Pinterest, Reddit, and Mastodon instances all require an application that handles their user data to publish a reachable, plain language data deletion instructions URL before app review can pass. Meta additionally requires a machine-callable data deletion callback endpoint and a deauthorize callback.
This page is that published URL, and it is also the engineering contract for the endpoints.
2. What can be deleted
| Object | What deleting it removes |
|---|---|
| A single connected social account | Disconnect destroys the stored OAuth access and refresh tokens. Delete account record also removes the local provider account identifier and display metadata. Neither action silently deletes separate analytics, inbox, comment, or message records; use the record's own delete action, or make a verified request under section 3.5 for that broader erasure |
| A single content item, campaign, or media asset | The item, its per-network variants, its schedule, and its derivatives. Already-published posts remain on the platform until you delete them there |
| An inbox conversation, message, or contact | The canonical conversation, its messages, attachments, and the derived contact and case records |
| AI agent runs | The stored prompt inputs or input hashes, outputs, citations, and usage records |
| A workspace / tenant | Everything in that workspace, including all of the above. Close it yourself under section 3.3, which keeps it readable and exportable for 30 days and then deletes it, or make a verified request under section 3.5 |
| Your user account | Your identity record, credentials, MFA enrolments, session rows (deleted outright, including the IP address, user agent, and device identifier in them), the login security events tied to those sessions, community threads, replies, and ideas you authored, and review replies you sent. Workspaces you own must be transferred or deleted first |
| A platform end user's data on platform instruction | All data we hold that originated from that platform for that platform user, across every tenant |
Two things this table does not claim, so that nobody assumes them:
- Workspace knowledge base content is not deleted by an individual's request. Documents a customer uploads to a workspace knowledge base, and the chunks and embeddings derived from them, belong to that customer as controller. They carry no author and no platform identifier, so we have no way to attribute one to an individual, and deleting them on one person's request would delete another controller's data. Ask the workspace owner to delete the source document, or ask us at
privacy@oraglegpt.organd we will pass the request to them. - Records you created inside someone else's workspace stay with that workspace. Drafts, campaigns, schedules, and published posts are the workspace's records. Section 3.6 explains the route for those.
3. User-facing deletion flow (exact steps)
3.1 Disconnect one social account (self-serve, immediate)
- Sign in at
https://app.oraglegpt.org/. The application is served from theapp.host;https://oraglegpt.org/is the marketing site and links to it. - Go to Connections -> Connected Accounts (
integrations/accounts). - Select the account.
- Choose Disconnect account to keep its non-secret account record, or Delete account record to erase that record as well.
- For Delete account record, type
DELETEto confirm.
On confirmation the Service:
- first marks the account
disconnecting, which blocks health checks, token refreshes, new publications, and queued publications from using it; - calls the provider's token revocation endpoint, best effort, for the six connectors that carry one: TikTok, X, YouTube, Snapchat, Reddit, and Mastodon (Mastodon at your own instance's
/oauth/revoke). Every other connector, Google Business Profile, LinkedIn and Pinterest included, carries no revocation endpoint in this release, so no revocation call is made for it. Where a call is made the provider may still fail or time out, and where a confidential client has no configured secret we record a failure rather than send an unauthenticated request; - overwrites and deletes every local credential row for the account, including stale duplicate rows, and redacts credential copies from the event relay;
- leaves the account
disconnectedwhen you chose Disconnect account; - additionally erases and deletes the account record when you chose Delete account record;
- does not automatically delete separate cached analytics, inbox messages, comments, DMs, or other provider-derived history. Delete those records in their own product area, or use the verified request in section 3.5 for broader erasure;
- leaves already-published posts in place on the platform. Delete those on the platform, or use Publishing -> Post History where the provider supports deletion through the API.
3.2 Delete specific content, messages, or contacts (self-serve, immediate)
Use the delete action on the record in Publishing, Inbox & CRM, or Media & Brand. Deletion is immediate in the live store. Backup and export files the Service writes for itself are deleted 90 days after they are written, by a scheduled sweep, so a deleted record is gone from them within 90 days. Backups taken outside the Service - a hosting provider's snapshot, a volume backup, an offsite job - are on that system's rotation and are not on this timetable; section 6 says what that means.
3.3 Close a whole workspace (with a 30-day export window)
Closing a workspace is self-serve, and it is the flow the Refund and Cancellation Policy section 3 and the Terms of Service section 17.4 describe.
| Step | Where | What happens |
|---|---|---|
| Close the workspace | Settings -> Data Privacy, or POST /api/v1/oem/lifecycle/close | The workspace moves to the pending_deletion state. We record the closure time and the deletion date on the workspace record itself |
| The 30-day window | Nothing to do | The workspace stays readable and exportable for 30 days. Nothing is deleted during it. The deletion date is shown on the screen and returned by GET /api/v1/oem/lifecycle |
| Export | Settings -> Data Privacy, or POST /api/v1/oem/export then GET /api/v1/oem/export/{name} | A signed archive of the workspace. Credentials are never carried in it |
| Change your mind | Settings -> Data Privacy, or POST /api/v1/oem/lifecycle/reopen | The closure is withdrawn, the deletion date is cleared, and nothing was deleted |
| Deletion | Automatic, after the window | A scheduled sweep deletes the workspace and its content: the workspace record, its users, memberships, connected-account records and stored credentials, and the content, media, inbox, analytics and AI records the workspace holds |
Both the close and the reopen require a signed-in workspace owner or administrator and a step-up authentication challenge, because a closure starts an irreversible clock.
What survives the deletion, and why. One dated row per closed workspace is kept, carrying the closure and deletion timestamps and the number of records removed, and nothing that names you, your workspace or any person in it. It is the evidence that the deletion happened, in the same way the confirmation code in section 5 is. Billing and tax records are kept for as long as the law requires, as section 6 says. The append-only audit trail records that the deletion happened, without the deleted content, for the reason in section 6.
What deletion does not reach. Content already published to a social platform stays on that platform. Backup and export files the Service wrote for itself are deleted on their own 90-day schedule, per section 3.2.
You can still ask for a workspace to be erased by the verified request in section 3.5 instead, and sections 3.1 and 3.2 remain available for a single connected account or an individual record.
3.4 Delete your user account (with a grace period)
Deletion of your own account holder record is requested through POST /api/v1/privacy/deletion-requests, and cancelled through POST /api/v1/privacy/deletion-requests/{code}/cancel. Both require a signed-in session; raising the request additionally requires a step-up authentication challenge.
This is an API route, not a button. The Settings -> Privacy screen in this release shows what provider data is held and links to the connected accounts screen, but it cannot raise the step-up challenge the request needs, so it does not offer a Delete my account control. If you would rather not call the API, use the verified email request in section 3.5 and we will raise it for you.
Grace period: 30 days. During it the request can be cancelled by the person who raised it and nothing has been erased. What the erasure then covers is listed in section 4. The figure matches the retention line for account and workspace records in Privacy Policy section 9 - "for the life of the account, then 30 days" - and it is the figure the software enforces.
Deleting your user account does not delete the workspace: see section 3.3. If you are the sole owner of a workspace, transfer ownership first, or close the workspace itself under section 3.3.
3.5 Request deletion by email (no account required)
Email privacy@oraglegpt.org with the subject line "Data deletion request" and include:
- the email address, social handle, or provider account ID the request relates to;
- which platform the data came from, if you are a platform end user;
- what you want deleted (everything, or a specific item);
- if you are an authorised agent, evidence of authorisation.
Then:
| Step | Who | Timeline |
|---|---|---|
| Acknowledgement with a reference code | Us | Within 72 hours |
| Identity verification, proportionate to sensitivity | You and us | We will ask only for what is necessary |
| Deletion executed in live systems | Us | Within 30 days of a verified request |
| Extension where the request is complex | Us | Up to a further 60 days, with written reasons |
| Purge from the backup and export files the Service writes | Us | Within 90 days |
| Written confirmation of completion | Us | On completion |
How those replies reach you. Every step in that table is a reply written and sent by a person from the privacy@oraglegpt.org mailbox. The Service itself sends no email: it contains no mail client and no notification-delivery route, so none of these acknowledgements, confirmations, or reason letters is generated automatically, and none is delivered in the product. If you have not heard from us inside the stated window, write to the same address again and say so; there is no automated system to have swallowed it.
There is no charge. We do not require you to create an account to make a request.
3.6 If your data is inside a customer's workspace
If you interacted with a brand that uses the Service (you commented on their post, or sent them a DM), that brand is the controller and we are the processor. Contact the brand first. If you contact us, we will forward your request to the relevant customer within 5 business days and tell you we have done so, unless a legal duty prevents it.
3.7 Deleting your data at the platform instead
You can also revoke the Service's access directly on each platform. Provider revocation stops the provider from accepting the affected token, but not every provider sends us a signed deletion or deauthorisation callback. Section 4 explains the exact local effect. Use section 3.1 or 3.5 as well when you want us to erase local data.
| Platform | Where to revoke |
|---|---|
| Facebook / Instagram / Threads | Settings -> Apps and Websites (Business Integrations) |
| Settings -> Data privacy -> Permitted services | |
| TikTok | Settings -> Security and permissions -> Manage app permissions |
| YouTube / Google Business Profile | myaccount.google.com/permissions |
| X | Settings -> Security and account access -> Apps and sessions -> Connected apps |
| Settings -> Security -> Apps | |
| Preferences -> Apps -> Revoke access | |
| Mastodon | Preferences -> Account -> Authorized apps |
| Discord | User Settings -> Authorized Apps |
| Tumblr | Settings -> Apps |
4. What we do when access is revoked at the platform
A provider-side revocation is not always a verified request to erase local data, and providers give applications different signals:
- Verified deletion callback. A supported callback whose provider signature verifies queues the broader platform-user erasure described in section 5 and creates a confirmation code and deletion receipt.
- Verified Meta deauthorisation callback. We destroy the affected stored credentials and mark the connection
revoked. Meta deauthorisation is not by itself a full data deletion request, so separately ingested content remains. - Token refresh or API failure. A provider rejection can mark a connection as requiring reconnection or fail the attempted operation, but it does not authenticate a deletion request. It does not automatically erase stored content or account metadata.
For a deterministic local result, use Disconnect account or Delete account record in section 3.1. To erase provider-derived history as well, delete those records separately, or make a verified request under section 3.5. This avoids treating an outage, expired token, or transient refresh failure as authority to erase a customer's records.
5. Provider deletion-callback endpoint contract
5.1 Endpoint family
All provider-initiated deletion traffic terminates on one route family, on the application host app.oraglegpt.org:
POST https://app.oraglegpt.org/api/v1/platform/deletion/{provider}
POST https://app.oraglegpt.org/api/v1/platform/deauthorize/{provider}
GET https://app.oraglegpt.org/api/v1/platform/deletion/status/{confirmation_code}
GET https://app.oraglegpt.org/privacy/deletion-status/{confirmation_code}Register these URLs on app.oraglegpt.org, not on the apex. The apex oraglegpt.org serves the marketing site and the published legal pages only; it runs no API, so every path above returns HTTP 404 there. The application host is the only host that answers them.
{provider} is the connector registry identifier, and only three of them answer these routes today. A reviewer who tests any other identifier receives HTTP 404 with This provider publishes no deletion callback contract. That is the correct answer, not a fault: the provider sends this Service no signed callback, so there is nothing for the endpoint to verify, and section 5.3 sets out the deletion route that does cover it.
| Registry identifier | What these routes do today |
|---|---|
facebook, instagram, threads | Live. Meta's signed_request contract in section 5.2 is implemented and is verified against that app's own secret. Register the callback URLs on these three |
tiktok, x, linkedin, pinterest, snapchat, youtube, google-business, reddit, mastodon, bluesky, discord, telegram, tumblr, vk, wordpress, odnoklassniki | HTTP 404, deliberately. No signed-request contract is implemented for these, so the endpoint refuses rather than accepting an unauthenticated deletion instruction. Section 5.3 is their route |
| Anything else | HTTP 404. It is not a connector identifier |
A live identifier additionally needs that deployment to hold the Meta app secret for the app it belongs to. Where the secret is absent the route answers 409 provider_not_configured, naming the environment variable to set, rather than accepting a callback it cannot verify. It never answers 200 for work it did not enqueue.
These routes are unauthenticated by session and authenticated by provider signature. They must be:
- reachable over HTTPS on the public hostname with a publicly trusted certificate;
- excluded from any IP allowlist, basic auth, or WAF challenge that would block a provider's servers;
- excluded from CSRF protection, because there is no browser session;
- rate limited per source, with signature verification before any expensive work;
- idempotent, keyed on the provider identifier plus the provider's user identifier plus the confirmation code.
5.2 Meta: Facebook, Instagram, Threads
Meta calls the Data Deletion Request Callback URL and the Deauthorize Callback URL configured in the app dashboard.
Request. POST, Content-Type: application/x-www-form-urlencoded, one field:
signed_request=<base64url-signature>.<base64url-payload>Verification, in this order:
- Split on the single
.. Reject if there is not exactly one. - Base64url-decode the payload; parse as JSON.
- Require
algorithm == "HMAC-SHA256". Reject anything else. - Recompute
HMAC-SHA256(app_secret, raw_payload_segment)and compare to the base64url-decoded signature using a constant-time comparison. - Reject if
issued_atis more than 300 seconds old. - Read
user_id(the app-scoped user ID) from the payload.
Action. Enqueue an idempotent deletion job for every tenant that holds data for that app-scoped user ID: tokens, connection, profile cache, ingested inbox items and DMs, comments, and analytics rows attributable to that user.
Response. HTTP 200 with Content-Type: application/json and exactly:
{
"url": "https://app.oraglegpt.org/privacy/deletion-status/{confirmation_code}",
"confirmation_code": "{confirmation_code}"
}That is the exact url the Service returns: the human-readable status page on the application host. The JSON form of the same record is served at https://app.oraglegpt.org/api/v1/platform/deletion/status/{confirmation_code} (section 5.4). Both resolve; neither exists on the apex.
The url must be publicly reachable without authentication and must render a human-readable status. The confirmation_code must be an unguessable, non-sequential identifier (at least 128 bits of entropy, base32 or hex encoded).
Deauthorize callback. Identical signed_request verification. Action: revoke and delete tokens and mark the connection revoked. Respond 200 with an empty body. Deauthorization is not by itself a full data deletion request unless the tenant policy says so, but tokens are always destroyed.
Failure handling. On a signature failure the Service responds 401 with a single detail-free invalid_signed_request code, identical for every failure mode, so the response cannot be used as an oracle. On an internal failure it responds 500 so Meta retries. It never responds 200 for work that was not enqueued.
5.3 Other providers
| Provider | Deletion mechanism we support | Notes |
|---|---|---|
| TikTok | Published instructions, the self-serve controls in section 3.1, verified email requests, and a best-effort call to POST https://open.tiktokapis.com/v2/oauth/revoke/ for the stored access token on disconnect | No TikTok deletion callback is registered in this release |
| X | Published instructions, self-serve controls, verified email requests, and best-effort calls to POST https://api.x.com/2/oauth2/revoke for stored access and refresh tokens on disconnect | X does not send this Service a deletion callback; platform-side revocation alone is not automatically detected as a local deletion request |
| Published instructions, self-serve controls, and verified email requests | No LinkedIn deletion callback is registered in this release, and this connector carries no revocation endpoint | |
| YouTube | Published instructions, self-serve controls, verified email requests, and a best-effort call to POST https://oauth2.googleapis.com/revoke on disconnect | We do not currently subscribe to Google Cross-Account Protection (RISC) events, so revoking only at Google is not a guaranteed local erasure signal. YouTube also cannot be connected in this build, because the connector has no authoritative account-identity resolver, so in practice there is no YouTube grant to revoke. See Privacy Policy section 13.1 |
| Google Business Profile | Published instructions, self-serve controls, and verified email requests | Despite sharing Google's OAuth service with YouTube, this connector carries no revocation endpoint in this release, so disconnecting it destroys the local credentials without calling Google. Revoke at myaccount.google.com/permissions as well if you want the grant withdrawn at Google |
| Snapchat | Published instructions, self-serve controls, verified email requests, and a best-effort call to Snapchat's OAuth revocation endpoint on disconnect | Snap returns HTTP 200 for this call regardless of outcome, so a successful response confirms only that the request was accepted; this Service does not claim separate provider-side completion confirmation. Snapchat also cannot be connected in this build, because Snap approves no permission that returns a stable account identifier, so in practice there is no Snapchat grant to revoke |
Published instructions, self-serve controls, verified email requests, and best-effort calls to POST https://www.reddit.com/api/v1/revoke_token for the stored access and refresh tokens on disconnect | Reddit grants here are permanent, so the refresh token outlives the access token; both are revoked, each with its own token_type_hint, so that no live grant is left behind. No Reddit deletion callback is registered in this release | |
| Mastodon | Published instructions, self-serve controls, verified email requests, and a best-effort call to POST {your instance}/oauth/revoke on disconnect | The endpoint lives on your own instance, not on a vendor host, so it is resolved from the account's recorded instance origin; where that origin cannot be resolved the call is not sent at all rather than sent to a guessed host. No Mastodon deletion callback is registered in this release |
| Pinterest, Bluesky, Discord, Telegram, Tumblr, VK, Odnoklassniki, WordPress | Published instructions, self-serve controls, and verified email requests | These connectors have no registered deletion callback and no configured revocation endpoint in this release, so disconnecting destroys the local credentials without calling the provider |
For every provider without a callback, the published URL plus the self-serve flow in section 3 is the compliant path, and the operator must be able to demonstrate it to a reviewer.
5.4 Status endpoint
GET https://app.oraglegpt.org/privacy/deletion-status/{confirmation_code}
GET https://app.oraglegpt.org/api/v1/platform/deletion/status/{confirmation_code}- No authentication.
Accept: text/htmlreturns a human-readable page.Accept: application/jsonreturns:
{
"confirmation_code": "…",
"status": "received | in_progress | completed | not_found",
"received_at": "2026-08-04T00:00:00Z",
"completed_at": "2026-08-04T00:03:11Z",
"provider": "facebook"
}- It must never reveal which tenants held the data, the platform user's handle, or any content. Status only.
- An unknown code returns
status: "not_found"with HTTP404and no other detail, so the endpoint cannot be used to enumerate users. - Deletion receipts, holding only the confirmation code, provider, timestamps, and outcome, are retained for 24 months as evidence of compliance. They contain no platform user content.
5.5 Execution guarantees
| Guarantee | Detail |
|---|---|
| Acknowledgement | Synchronous, within the provider's timeout |
| Live-system deletion | Within 24 hours of a verified callback, and always within 30 days |
| Backup purge | Within 90 days, for the backup and export files the Service writes. Backups taken outside the Service follow that system's rotation |
| Idempotency | Repeat callbacks for the same user return the original confirmation code and do not create duplicate jobs |
| Ordering | Token destruction happens first, before any bulk record deletion, so no further provider calls can be made on the revoked authorisation |
| Auditability | Every deletion writes an append-only receipt with actor provider-callback, the provider, the confirmation code, counts by record type, and timestamps |
| Failure | A failed erasure deliberately stays non-terminal, so the queue retries it with backoff rather than recording it as complete, and an exhausted job lands in the dead-letter queue. There is no automated page: this build sends no email, SMS, or push message, so the dead-letter queue is surfaced in the operator diagnostics an operator has to look at. We treat a dead-lettered deletion as an incident, not a routine failure |
6. What we retain after deletion, and why
| Retained | Basis | Period |
|---|---|---|
| Deletion receipts (confirmation code, provider, timestamps, counts, outcome) | Demonstrating compliance to platforms and regulators | 24 months |
| Security and access event records (logins, operator actions) | Legitimate interests: integrity and non-repudiation | 12 months |
| The append-only audit trail entries recording that a deletion occurred | Legitimate interests: integrity and non-repudiation | For as long as the workspace exists. Each entry hashes the one before it, per workspace, so removing old entries would make every remaining entry unverifiable and destroy the evidence this page offers. We do not purge it on a schedule, and we would rather publish that than a 12 month figure we cannot keep. The entries name the record and the actor, never the content |
| Billing, invoicing, and tax records | Legal obligation | As required by law, typically 7 years |
| Data under a documented legal hold | Establishment or defence of legal claims | Until the hold is released |
| Aggregated, irreversibly anonymised counters | No longer personal data | Indefinite |
| Backup and export files the Service writes | Technical necessity | Purged within 90 days by a scheduled sweep |
| Backups taken outside the Service (host snapshots, volume backups, offsite jobs) | Technical necessity, outside this Service's control | That system's own rotation. We cannot expire them from here and do not claim to |
Already-published posts on a platform are controlled by that platform and by the account holder. Deleting data here does not delete a live post. Delete it on the platform, or through Publishing -> Post History where the provider's API supports deletion.
7. Verification and anti-abuse
We verify requests proportionately. For a signed-in user, re-authentication and a step-up challenge are enough. For an email request we match against data we already hold and may ask for one additional corroborating detail. We will not ask for a government identity document unless the risk of wrongful deletion demands it, and we delete any verification material within 30 days of closing the request. Authorised agents must evidence their authority.
We refuse manifestly unfounded or excessive repeat requests, in writing and with reasons, and we tell you how to complain.
8. Related pages
| Topic | Page |
|---|---|
| Privacy Policy | Privacy Policy |
| Retention schedule | Privacy Policy section 9 |
| Your privacy rights, and how to make a request | Your Privacy Rights: GDPR, UK GDPR, and US State Privacy Laws |
| Subprocessors | Subprocessors |
| Data Processing Addendum | Data Processing Addendum |
| Security controls protecting the data | Security |
| Cancelling and what happens to your data | Refund and Cancellation Policy |
9. Scope and current implementation status
We publish this so that customers, data subjects, and platform reviewers can see exactly which deletion routes are live today and which depend on a platform integration being approved. We would rather state the boundary than let anyone assume more than we deliver.
9.1 Live today
| Route | Status |
|---|---|
| Self-serve deletion in the product, on the connected accounts screen and on each record | Live, and limited to what section 3.1 and section 3.2 describe. Disconnect an account, delete its account record, and delete individual supported records. The connected accounts screen does not claim to delete separate ingested history |
| Self-serve closure and deletion of a whole workspace | Live, through Settings -> Data Privacy or POST /api/v1/oem/lifecycle/close, in both cases behind a step-up challenge. The workspace stays readable and exportable for 30 days, the deletion date is stored on the workspace record and shown on the screen, POST /api/v1/oem/lifecycle/reopen withdraws the closure at any point inside the window, and a scheduled sweep deletes the workspace and its content once the window has elapsed. See section 3.3 |
| Deletion of your own account holder record | Live at the API, through POST /api/v1/privacy/deletion-requests with a step-up challenge, cancellable for 30 days. It has no button: the settings/privacy screen cannot raise the step-up challenge the request requires, so ask on the verified email route if you would rather not call the API. Closing a whole workspace, which is a different action, does have a button - see section 3.3 |
| Token deletion on disconnect | Live. Access and refresh tokens are deleted immediately when an account is disconnected, when its account record is deleted, and when a verified provider deletion or deauthorisation callback is acted on |
| Provider token revocation on disconnect | Implemented, best effort for the six connectors that carry a provider revocation endpoint: TikTok, X, YouTube, Snapchat, Reddit, and Mastodon. Calling it requires an account you were able to connect in the first place, and on this deployment that is TikTok alone of the six: X, YouTube, Snapchat, Reddit and Mastodon cannot be connected here at all, so for those five the path is unreachable rather than merely unused, and we will not describe it as live for them. GET /api/v1/capabilities reports which providers are connectable at any given moment and is the authority over that list, not this table. No revocation call is made for any other connector, Google Business Profile, LinkedIn and Pinterest included, because none carries such an endpoint in this release. Local credentials are destroyed either way, and a revocation the provider refused is recorded as failed rather than as done |
Deletion by email request to privacy@oraglegpt.org | Live, and handled by a person. Acknowledged within 72 hours, completed within 30 days. The Service sends no email of its own, so every reply on this route is written and sent from that mailbox by hand |
| Automated email or in-product notification of a deletion | Not implemented. This build contains no mail client and no notification-delivery route, so nothing is sent automatically when a deletion completes. For a self-serve deletion the product screen is the confirmation; for a provider callback the status page at https://app.oraglegpt.org/privacy/deletion-status/{confirmation_code} is |
This published deletion instructions URL at https://oraglegpt.org/legal/data-deletion | Live. Server-rendered, HTTP 200, no login, no fragment |
| Signed provider deletion and deauthorisation callbacks | Live for supported Meta signed requests. A verified deletion callback queues broad erasure; a verified deauthorisation callback destroys credentials and marks the account revoked, but does not erase unrelated stored content |
| Platform-side revocation without a callback | Limited. It may surface as a refresh or API failure, but it is not treated as an authenticated request to erase local records. Use the self-serve or email route for a guaranteed local result |
| The retention schedule in Privacy Policy section 9 | Live. An hourly sweep in the scheduler expires inbox records, the publication log, analytics and listening data, AI runs, security events, expired sessions, completed queue rows, delivered relay records, the backup and export files the Service writes, and - once its 30-day window has elapsed - a closed workspace and everything in it. The audit trail is deliberately excluded, for the reason given in section 6 |
9.2 Dependent on platform app approval
The machine-callable endpoints specified in section 5 are the contract we implement and register per platform, as that platform's app review is completed. A callback URL is only meaningful once the platform application it belongs to is approved and configured, so these are enabled alongside each approval rather than in advance.
This does not reduce anyone's deletion rights. Every provider listed in section 5.3 is covered today by the published instructions URL, the self-serve controls, and the verified email route. Those are the explicit paths for a provider that does not send this Service a signed deletion callback.
9.3 Reachability commitments
The deletion instructions URL and any registered callback endpoint are, and will remain:
- served over HTTPS with a publicly trusted certificate, on
oraglegpt.orgfor the published deletion instructions page and onapp.oraglegpt.orgfor every callback and status endpoint in section 5; - free of basic auth, IP allowlisting, bot challenges, and login walls;
- returning real HTML or a real response body at HTTP 200, not a redirect to a fragment route;
- reachable from any source address, because reviewers test from unpredictable ones.
The apex oraglegpt.org is served through a CDN and the application host app.oraglegpt.org is served directly. The callback and status endpoints are on the directly served host, so no CDN challenge can sit in front of a provider's call.
9.4 Questions
If you are a platform reviewer and need a specific endpoint, a test account, or written confirmation of any commitment on this page, write to privacy@oraglegpt.org and we will respond within 5 business days.