Data sent to Octopize
A self-hosted deployment makes at most three outgoing connections to services outside your infrastructure. Usage events and API requests are logged locally, and do not leave it.
| Flow | Destination | Direction | Default | To turn it off |
|---|---|---|---|---|
| Error monitoring | sentry.io | Upload | On | IS_SENTRY_ENABLED: false |
| Client compatibility mapping | license.octopize.io | Download only | On | COMPATIBILITY_MAPPING_URL: "disabled" |
| Usage telemetry | An S3 bucket | Upload | Off until Octopize gives you credentials | Leave the telemetry values empty |
No dataset and no payload content is ever sent. Only metadata. The Kubernetes equivalents of these settings are in the chart configuration.
Error monitoring (sentry.io)
Internal errors of the Avatar API are sent to Sentry, where Octopize analyses them.
- Why: find and fix production issues quickly, and keep the platform stable and secure.
- What: Python stack traces, the exception message and environment information (OS, installed packages). No user data and no personal information: breadcrumbs and local variables are disabled.
- Confidentiality: encrypted in transit and at rest. Retained 90 days.
- Destination:
sentry.io, port 443.
Sentry is ISO 27001 certified and offers the Standard Contractual Clauses for GDPR compliance in its Data Processing Addendum. See the Sentry trust center.
We recommend leaving it on. To turn it off, set IS_SENTRY_ENABLED to false in the
Docker configuration.
Client compatibility mapping (license.octopize.io)
The API downloads the table of which Avatar client versions work with which API versions, at startup and then every 5 minutes. The request carries no information about your deployment.
- Why: keep accepting client libraries released after your API image was built, instead of rejecting them.
- What: an HTTPS GET of
https://license.octopize.io/compatibility/compatibility_mapping.json. Nothing is sent. - Destination:
license.octopize.io, port 443.
If the download fails, the API uses the copy shipped in its image, and only clients newer than that
image go unrecognised. To make no request at all, set COMPATIBILITY_MAPPING_URL to disabled
(Docker) or
api.config.compatibilityMappingUrl to "disabled"
(Kubernetes). An empty value does
not disable it: the API falls back to the default URL.
Usage telemetry (S3)
Telemetry periodically exports a small set of metadata to an S3 bucket dedicated to your deployment. It starts once Octopize has given you the bucket name and its credentials.
We recommend enabling it, because it is what lets Octopize:
- Support you faster. When you report an issue, Octopize already sees which jobs failed, when, and on which version. There is no back-and-forth to collect logs and versions.
- Follow the versions you run. Octopize knows which API and web client versions each deployment runs. It can warn you about a fix or a security update that concerns your version, tell you when your users' Python clients will stop being compatible, and plan your next upgrade with you.
- Monitor license usage, so your plan matches what you use.
What it sends:
- What: selected database tables, exported as Parquet files: system data (such as the deployed versions), job metadata (such as the job kind and name) and account data (username, email and organization). No dataset and no payload content. A detailed list of the exported fields is available on request.
- Confidentiality: encrypted in transit and at rest.
- Destination: the S3 endpoint set in
TELEMETRY_S3_ENDPOINT_URL, port 443.
To enable it, see the Docker or Kubernetes configuration.