Analyze all old deprecated and experimental APIs and either remove them, promote them to stable, or deprecate as appropriate.
Experimental APIs
Stack unwinding (6y, #2135)
Introduced on 2019-12-22 in 6d81c66f.
These are the oldest APIs that remain experimental.
MessagePack serialization (6y)
Introduced on 2019-12-22 in 6d81c66f.
Manual native exception capture (6y, #2135)
Introduced on 2020-03-30 in eb73904a.
This permits forwarding manually handled POSIX signals or Windows SEH exceptions through the SDK.
Module cache and backend control (5-6y)
These expose SDK internals related to loaded-module discovery and crash-handler installation.
Exception, thread, and stacktrace construction (5y, #2135)
The base API was introduced on 2021-04-19 in 60afb29c.
Later additions:
Performance monitoring and tracing (4y, #2012)
This is the largest experimental area, containing 67 functions or approximately 52% of the experimental API.
Initial configuration was introduced on 2021-12-08.
Subsequent additions:
| Date |
Age |
APIs or capabilities introduced |
| 2021-12-15 |
4y 7mo |
sentry_transaction_set_name |
| 2021-12-22 |
4y 7mo |
sentry_envelope_get_transaction |
| 2021-12-23 |
4y 7mo |
sentry_transaction_context_set_name, sentry_transaction_context_set_operation, sentry_transaction_context_set_sampled, sentry_transaction_context_remove_sampled, sentry_transaction_start |
| 2022-01-07 |
4y 7mo |
sentry_set_span |
| 2022-01-08 |
4y 7mo |
sentry_span_start_child, sentry_span_finish |
| 2022-01-11 |
4y 7mo |
Transaction and span tag/data setters and removers |
| 2022-01-13 |
4y 7mo |
sentry_transaction_context_new, sentry_transaction_start_child, sentry_span_set_status, sentry_transaction_set_status |
| 2022-01-18 |
4y 6mo |
sentry_transaction_context_update_from_header, sentry_span_iter_headers, sentry_transaction_iter_headers |
| 2022-01-24 |
4y 6mo |
sentry_set_transaction_object |
| 2023-04-25 |
3y 3mo |
_n variants for context construction and mutation, trace-header parsing, child creation, transaction naming, tags, and data |
| 2024-12-04 |
1y 8mo |
Explicit-timestamp APIs: sentry_transaction_start_ts, sentry_transaction_finish_ts, child _ts and _ts_n variants, and sentry_span_finish_ts |
| 2025-01-14 |
1y 6mo |
sentry_options_set_traces_sampler and context name/operation getters |
| 2025-05-15 |
1y 2mo |
sentry_options_set_before_transaction |
| 2025-07-01 |
1y 1mo |
sentry_regenerate_trace |
| 2025-10-08 |
10mo |
sentry_options_set_propagate_traceparent, sentry_options_get_propagate_traceparent |
| 2026-05-13 |
3mo |
sentry_options_set_org_id, sentry_options_set_org_id_n, sentry_options_set_strict_trace_continuation, and sentry_options_get_strict_trace_continuation |
| 2026-07-17 |
27d |
sentry_transaction_discard, sentry_span_discard |
| 2026-08-13 |
0d |
sentry_scope_set_transaction_object, sentry_scope_set_span |
The tag/data families include transaction and span forms, with ordinary and _n variants:
Crashed-last-run state (4y, #2127)
Introduced on 2022-03-09 in 9eecb1bd.
Runtime SDK identification (4y)
Introduced on 2022-06-15 in b091b76c.
Ending sessions with an explicit status (3y, #2127)
Introduced on 2023-02-02 in a11a1073.
The basic session start and end APIs are stable. Only explicit-status termination is marked experimental.
Linux and Android crash-handler strategy (1y)
Introduced on 2024-11-15 in 7c1d428b.
This controls whether the previous signal handler runs before or after Sentry’s handler, primarily for CLR/Mono interoperability.
Screenshot capture (1y)
This is currently Windows-specific, with backend-dependent behavior.
Windows thread stack guarantee (1y)
Introduced on 2025-04-15 in 4150d410.
This reserves enough thread stack for crash handling after a stack overflow.
Structured logs (1y, #2101)
The base feature was introduced on 2025-09-23 in 1f8e4c45.
Later additions:
Metrics (<1y, #2101)
Introduced on 2026-02-05 in 17bf7631.
Scoped capture was added on 2026-07-17.
HTTP retry (<1y)
Introduced on 2026-03-31 in 72e1d425.
Large attachment uploads (<1y)
Introduced on 2026-04-30 in cbe330b9.
This uses out-of-band TUS uploads and requires corresponding server support.
Xbox session replay (<1y)
Introduced on 2026-05-12 in f95daa75.
This captures a short retroactive OS-managed recording and attaches it to crash envelopes.
App-hang tracking (<1y)
Introduced on 2026-06-22 in 1cee0971.
Added on 2026-07-30.
Deprecated APIs
sentry_new_function_transport (2020-05-13, f52bf3a, 0.3.0)
- mixed feelings: it was deprecated in favor of
sentry_transport_new, but the old name would make more sense after exposing sentry_http_transport_new (or perhaps bring it back as sentry_function_transport_new for the sake of consistency?)
sentry_event_value_add_stacktrace (2021-04-19, 60afb29, 0.4.9)
sentry_shutdown (2021-04-19, 3c7f5b2, 0.4.9)
sentry_sdk_name, sentry_sdk_user_agent (2023-04-28, daf2d1c, 0.6.2)
sentry_options_set_http_proxy, sentry_options_set_http_proxy_n (2024-11-21, 99b1539, 0.7.16)
sentry_value_new_user_feedback, sentry_value_new_user_feedback_n, sentry_capture_user_feedback (2025-07-11, bffc57d, 0.10.0)
sentry_options_add_view_hierarchy, sentry_options_add_view_hierarchy_n, sentry_options_add_view_hierarchyw, sentry_options_add_view_hierarchyw_n (2026-05-12, 3b0f1f0, 0.14.1)
sentry_capture_event_with_scope (2026-07-17, 46aee2b, 0.15.4)
sentry_clear_crashed_last_run (2026-09-09, 26cfeb2, 0.16.7)
sentry_regenerate_trace (2026-09-14, 73067dd, 0.16.7)
Analyze all old deprecated and experimental APIs and either remove them, promote them to stable, or deprecate as appropriate.
Experimental APIs
Stack unwinding (6y, #2135)Introduced on 2019-12-22 in
6d81c66f.sentry_unwind_stacksentry_unwind_stack_from_ucontextThese are the oldest APIs that remain experimental.
MessagePack serialization (6y)
Introduced on 2019-12-22 in
6d81c66f.sentry_value_to_msgpackManual native exception capture (6y, #2135)Introduced on 2020-03-30 in
eb73904a.sentry_handle_exceptionThis permits forwarding manually handled POSIX signals or Windows SEH exceptions through the SDK.
Module cache and backend control (5-6y)
sentry_clear_modulecachesentry_get_modules_listsentry_reinstall_backendThese expose SDK internals related to loaded-module discovery and crash-handler installation.
Exception, thread, and stacktrace construction (5y, #2135)The base API was introduced on 2021-04-19 in
60afb29c.sentry_value_new_exceptionsentry_value_new_threadsentry_value_new_stacktracesentry_event_add_exceptionsentry_event_add_threadLater additions:
sentry_value_set_stacktracesentry_value_new_exception_nsentry_value_new_thread_nPerformance monitoring and tracing (4y, #2012)This is the largest experimental area, containing 67 functions or approximately 52% of the experimental API.
Initial configuration was introduced on 2021-12-08.
sentry_options_set_max_spanssentry_options_get_max_spanssentry_options_set_traces_sample_ratesentry_options_get_traces_sample_ratesentry_transaction_finishSubsequent additions:
sentry_transaction_set_namesentry_envelope_get_transactionsentry_transaction_context_set_name,sentry_transaction_context_set_operation,sentry_transaction_context_set_sampled,sentry_transaction_context_remove_sampled,sentry_transaction_startsentry_set_spansentry_span_start_child,sentry_span_finishsentry_transaction_context_new,sentry_transaction_start_child,sentry_span_set_status,sentry_transaction_set_statussentry_transaction_context_update_from_header,sentry_span_iter_headers,sentry_transaction_iter_headerssentry_set_transaction_object_nvariants for context construction and mutation, trace-header parsing, child creation, transaction naming, tags, and datasentry_transaction_start_ts,sentry_transaction_finish_ts, child_tsand_ts_nvariants, andsentry_span_finish_tssentry_options_set_traces_samplerand context name/operation getterssentry_options_set_before_transactionsentry_regenerate_tracesentry_options_set_propagate_traceparent,sentry_options_get_propagate_traceparentsentry_options_set_org_id,sentry_options_set_org_id_n,sentry_options_set_strict_trace_continuation, andsentry_options_get_strict_trace_continuationsentry_transaction_discard,sentry_span_discardsentry_scope_set_transaction_object,sentry_scope_set_spanThe tag/data families include transaction and span forms, with ordinary and
_nvariants:sentry_transaction_set_tagsentry_transaction_remove_tagsentry_transaction_set_datasentry_transaction_remove_datasentry_span_set_tagsentry_span_remove_tagsentry_span_set_datasentry_span_remove_dataCrashed-last-run state (4y, #2127)Introduced on 2022-03-09 in
9eecb1bd.sentry_get_crashed_last_runRuntime SDK identification (4y)
Introduced on 2022-06-15 in
b091b76c.sentry_sdk_versionEnding sessions with an explicit status (3y, #2127)Introduced on 2023-02-02 in
a11a1073.sentry_end_session_with_statusThe basic session start and end APIs are stable. Only explicit-status termination is marked experimental.
Linux and Android crash-handler strategy (1y)
Introduced on 2024-11-15 in
7c1d428b.sentry_options_get_handler_strategysentry_options_set_handler_strategyThis controls whether the previous signal handler runs before or after Sentry’s handler, primarily for CLR/Mono interoperability.
Screenshot capture (1y)
sentry_options_set_attach_screenshotsentry_options_set_before_screenshotThis is currently Windows-specific, with backend-dependent behavior.
Windows thread stack guarantee (1y)
Introduced on 2025-04-15 in
4150d410.sentry_set_thread_stack_guaranteeThis reserves enough thread stack for crash handling after a stack overflow.
Structured logs (1y, #2101)The base feature was introduced on 2025-09-23 in
1f8e4c45.sentry_options_set_enable_logssentry_options_get_enable_logssentry_log_tracesentry_log_debugsentry_log_infosentry_log_warnsentry_log_errorsentry_log_fatalsentry_options_set_before_send_logLater additions:
sentry_options_set_logs_with_attributes,sentry_options_get_logs_with_attributessentry_logsentry_scope_capture_logMetrics (<1y, #2101)Introduced on 2026-02-05 in
17bf7631.sentry_options_set_enable_metricssentry_options_get_enable_metricssentry_options_set_before_send_metricsentry_metrics_countsentry_metrics_gaugesentry_metrics_distributionScoped capture was added on 2026-07-17.
sentry_scope_capture_metricHTTP retry (<1y)
Introduced on 2026-03-31 in
72e1d425.sentry_options_set_http_retrysentry_options_get_http_retrysentry_transport_retryLarge attachment uploads (<1y)
Introduced on 2026-04-30 in
cbe330b9.sentry_options_set_enable_large_attachmentssentry_options_get_enable_large_attachmentsThis uses out-of-band TUS uploads and requires corresponding server support.
Xbox session replay (<1y)
Introduced on 2026-05-12 in
f95daa75.sentry_options_set_attach_session_replaysentry_options_set_session_replay_durationThis captures a short retroactive OS-managed recording and attaches it to crash envelopes.
App-hang tracking (<1y)
Introduced on 2026-06-22 in
1cee0971.sentry_options_set_enable_app_hang_trackingsentry_options_get_enable_app_hang_trackingsentry_options_set_app_hang_timeoutsentry_options_get_app_hang_timeoutsentry_app_hang_heartbeatAdded on 2026-07-30.
sentry_app_hang_pauseDeprecated APIs
sentry_new_function_transport(2020-05-13, f52bf3a, 0.3.0)sentry_transport_new, but the old name would make more sense after exposingsentry_http_transport_new(or perhaps bring it back assentry_function_transport_newfor the sake of consistency?)sentry_event_value_add_stacktrace(2021-04-19, 60afb29, 0.4.9)sentry_shutdown(2021-04-19, 3c7f5b2, 0.4.9)sentry_sdk_name,sentry_sdk_user_agent(2023-04-28, daf2d1c, 0.6.2)sentry_options_set_http_proxy,sentry_options_set_http_proxy_n(2024-11-21, 99b1539, 0.7.16)sentry_value_new_user_feedback,sentry_value_new_user_feedback_n,sentry_capture_user_feedback(2025-07-11, bffc57d, 0.10.0)sentry_options_add_view_hierarchy,sentry_options_add_view_hierarchy_n,sentry_options_add_view_hierarchyw,sentry_options_add_view_hierarchyw_n(2026-05-12, 3b0f1f0, 0.14.1)sentry_capture_event_with_scope(2026-07-17, 46aee2b, 0.15.4)sentry_clear_crashed_last_run(2026-09-09, 26cfeb2, 0.16.7)sentry_regenerate_trace(2026-09-14, 73067dd, 0.16.7)