> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crossmint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CrossmintApiConfig

> Flutter Class

**Class**

Base configuration shared by every Crossmint SDK client.

```dart theme={null}
class CrossmintApiConfig
```

Platform-specific subclasses (e.g. `CrossmintClientConfig` in
`crossmint_flutter`) extend this class with platform-only fields such as
storage adapters or loggers.

## Constructors

### CrossmintApiConfig

```dart theme={null}
const CrossmintApiConfig({
  required this.apiKey,
  this.appId,
  this.appScheme,
  this.origin,
  this.overrideBaseUrl,
  this.extensionId,
})
```

Creates a `CrossmintApiConfig`.

## Properties

### apiKey

```dart theme={null}
final String apiKey
```

Crossmint API key.

### appId

```dart theme={null}
final String? appId
```

Application identifier registered with Crossmint — usually matches the mobile bundle ID (iOS) or package name (Android). If omitted, the SDK auto-resolves it from platform metadata during `initialize()`.

### appScheme

```dart theme={null}
final String? appScheme
```

Deep-link scheme the Crossmint auth page redirects back to after sign-in. Typically equals `appId` on mobile. Required for OAuth flows.

### origin

```dart theme={null}
final String? origin
```

Origin header sent with requests when using a client key. Required on web; optional on mobile (the SDK derives it from `appId` when omitted).

### overrideBaseUrl

```dart theme={null}
final Uri? overrideBaseUrl
```

Overrides the default Crossmint API base URL — used for local development or pointing at a custom-hosted environment.

### extensionId

```dart theme={null}
final String? extensionId
```

Browser-extension identifier used by extension-embedded flows.
