# Anthropic | Sentry for Node.js

This integration works in the Node.js, Cloudflare Workers, Vercel Edge Functions, and browser runtimes. It requires SDK version `10.12.0` or higher.

*Import name: `Sentry.anthropicAIIntegration`*

The `anthropicAIIntegration` adds instrumentation for the `@anthropic-ai/sdk` to capture spans by automatically wrapping Anthropic client calls and recording LLM interactions with configurable input/output recording.

It is enabled by default and will automatically capture spans for Anthropic API method calls. You can opt-in to capture inputs and outputs by setting `recordInputs` and `recordOutputs` in the integration config:

```javascript
Sentry.init({
  dsn: "____PUBLIC_DSN____",
  tracesSampleRate: 1.0,
  integrations: [
    Sentry.anthropicAIIntegration({
      recordInputs: true,
      recordOutputs: true,
    }),
  ],
});
```

## [Options](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/anthropic.md#options)

### [`recordInputs`](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/anthropic.md#recordinputs)

*Type: `boolean`*

Records inputs to Anthropic API method calls (such as prompts and messages).

Defaults to `true` if `sendDefaultPii` is `true`.

```javascript
Sentry.init({
  integrations: [Sentry.anthropicAIIntegration({ recordInputs: true })],
});
```

### [`recordOutputs`](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/anthropic.md#recordoutputs)

*Type: `boolean`*

Records outputs from Anthropic API method calls (such as generated text and responses).

Defaults to `true` if `sendDefaultPii` is `true`.

```javascript
Sentry.init({
  integrations: [Sentry.anthropicAIIntegration({ recordOutputs: true })],
});
```

## [Configuration](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/anthropic.md#configuration)

By default this integration adds tracing support to Anthropic API method calls including:

* `messages.create()` - Create messages with Claude models
* `messages.stream()` - Stream messages with Claude models
* `messages.countTokens()` - Count tokens for messages
* `models.get()` - Get model information
* `completions.create()` - Create completions (legacy)
* `models.retrieve()` - Retrieve model details
* `beta.messages.create()` - Beta messages API

The integration will automatically detect streaming vs non-streaming requests and handle them appropriately.

## [Supported Versions](https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/anthropic.md#supported-versions)

* `@anthropic-ai/sdk`: `>=0.19.2 <1.0.0`
