Documentación

OpenErrorAPI habla el protocolo de Sentry, así que mantienes el SDK oficial que ya usas y cambias una línea: el DSN. Esta página explica cómo, y — igual de importante — qué no soportamos.

Cambia desde Sentry en 10 minutos

No hay SDK que reemplazar ni código que reescribir. Apuntas el SDK que ya tienes a un DSN diferente.

  1. 1

    Crea un proyecto en la consola. Obtienes un DSN de la forma https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID.

  2. 2

    Reemplaza el DSN en tu Sentry.init() existente — normalmente una variable de entorno. Mantén el SDK, la versión y cada opción que ya configuraste.

  3. 3

    Despliega y provoca un error. Aparece en la consola en un segundo, agrupado como estaba en Sentry.

PHP

composer require sentry/sentry
\Sentry\init(['dsn' => 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID']);

JavaScript / TypeScript

npm i @sentry/browser
Sentry.init({ dsn: 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID' });

Node.js

npm i @sentry/node
Sentry.init({ dsn: 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID' });

Python

pip install sentry-sdk
sentry_sdk.init(dsn="https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID")

Go

go get github.com/getsentry/sentry-go
sentry.Init(sentry.ClientOptions{Dsn: "https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID"})

Dart / Flutter

flutter pub add sentry_flutter
await SentryFlutter.init((o) => o.dsn = 'https://PUBLIC_KEY@openerrorapi.com/PROJECT_ID');

¿Ya estás subiendo source maps con sentry-cli? Mantén ese paso también — configura SENTRY_URL a https://openerrorapi.com y usa un token de subida como SENTRY_AUTH_TOKEN.

Compatibilidad con Sentry, honestamente

La compatibilidad es toda la promesa, lo que la hace lo más peligroso de exagerar. Esta tabla se genera desde la misma fuente que usa el código y nuestra documentación legible por máquinas, así que no puede desviarse silenciosamente de la realidad.

7 áreas totalmente soportadas · 3 parcial · 3 no soportadas.

Área Estado Detalle
Envelope ingest (/api/{id}/envelope/) Soportado The modern endpoint every current SDK uses. Gzip/deflate bodies, multiple items per envelope, all three auth methods (X-Sentry-Auth header, querystring, envelope dsn header).
Store ingest (/api/{id}/store/) Soportado Legacy endpoint for older SDKs. Same processing pipeline as envelopes.
Error events & grouping Soportado Exceptions, messages, stack traces, tags, user, contexts, breadcrumbs, request. Grouping by fingerprint with an explicit `fingerprint[]` override.
Sessions / release health Soportado Session envelope items are processed; crash-free sessions and users are shown per release. Available from the Team plan.
Security reports (CSP) Soportado CSP violation reports are stored and grouped like any other issue. Point report-uri at /api/{project_id}/security/?sentry_key={PUBLIC_KEY} — the browser cannot send headers, so the key goes in the URL. Both the classic csp-report body and the Reporting API array are accepted.
Source maps Soportado Upload via our API, from the console, or with sentry-cli. Frames are de-minified on read, so uploading a map fixes old events too.
sentry-cli Parcial Releases (new / finalize / set-commits) and source-map upload work unchanged. Chunked upload is not implemented — sentry-cli detects that and falls back to the regular upload automatically.
User feedback widget Soportado Embeddable widget; reports land next to the errors they belong to.
Transactions / performance Parcial Transaction envelope items are accepted so SDKs do not error, but we do not build a performance product on top of them. If you need distributed tracing, keep Sentry — we are an error tracker.
Logs (log envelope items) No soportado Not processed yet. Log items are ignored, which does not affect error reporting from the same SDK.
Cron monitors (check_in items) Parcial We have our own cron/heartbeat monitoring in the console, but the Sentry `check_in` envelope item is not wired to it yet.
Profiling, session replay No soportado Deliberately out of scope. These are the reasons to stay on Sentry; we do not pretend otherwise.
Native symbolication (dSYM / ProGuard) No soportado Not supported. Native mobile crashes arrive, but stay unsymbolicated.

Profundizando