---
title: Residencia de datos
url: https://platform.claude.com/docs/es/manage-claude/data-residency
description: Administra dónde se ejecuta la inferencia del modelo y dónde se almacenan los datos con controles geográficos.
---

Los controles de "data residency" (residencia de datos) te permiten administrar dónde se procesan y almacenan tus datos. Dos configuraciones independientes rigen esto:

* **Inference geo (geografía de inferencia):** Controla dónde se ejecuta la inferencia del modelo, por solicitud. Se establece mediante el parámetro de API `inference_geo` o como valor predeterminado del workspace.
* **Workspace geo (geografía del workspace):** Controla dónde se almacenan los datos en reposo y dónde ocurre el procesamiento de endpoints (como la transcodificación de imágenes y la ejecución de código). Se configura a nivel de workspace en la [Claude Console](https://platform.claude.com).

<Note>
  [Claude Managed Agents](https://platform.claude.com/docs/es/managed-agents/overview) admite la fijación geográfica a nivel del agente: `inference_geo` en la [configuración del modelo de un agente](https://platform.claude.com/docs/es/managed-agents/agent-setup#pin-the-inference-geo) fija la geografía que atiende las solicitudes al modelo para las sesiones que ejecutan ese agente, con [anulaciones por sesión](https://platform.claude.com/docs/es/managed-agents/sessions#pin-the-inference-geo-for-a-session) al crear la sesión. Los agentes sin una fijación siguen la geografía de inferencia predeterminada del workspace en cada solicitud. Managed Agents también respeta la Workspace geo configurada en la Console y, con [sandboxes autoalojados](https://platform.claude.com/docs/es/managed-agents/self-hosted-sandboxes), la ejecución de herramientas y el sistema de archivos del sandbox permanecen en infraestructura que tú controlas; el contenido de los [almacenes de memoria](https://platform.claude.com/docs/es/managed-agents/self-hosted-sandboxes-memory) adjuntos sigue almacenado por Anthropic y se copia a tu sandbox durante la sesión.
</Note>

## Inference geo

<Note>
  Para saber cómo se aplica la "zero data retention" (retención cero de datos), o ZDR, a esta función, consulta [API y retención de datos](https://platform.claude.com/docs/es/manage-claude/api-and-data-retention).
</Note>

El parámetro `inference_geo` controla dónde se ejecuta la inferencia del modelo para una solicitud de API específica. Agrégalo a cualquier llamada `POST /v1/messages`.

| Valor      | Descripción                                                                                                                    |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `"global"` | Predeterminado. La inferencia puede ejecutarse en cualquier geografía disponible para un rendimiento y disponibilidad óptimos. |
| `"us"`     | La inferencia se ejecuta únicamente en infraestructura ubicada en EE. UU.                                                      |

### Uso de la API

<CodeGroup>
  ```bash cURL
  curl https://api.anthropic.com/v1/messages \
    -H "x-api-key: $ANTHROPIC_API_KEY" \
    -H "anthropic-version: 2023-06-01" \
    -H "content-type: application/json" \
    -d '{
      "model": "claude-opus-5-5",
      "max_tokens": 1024,
      "inference_geo": "us",
      "messages": [{
        "role": "user",
        "content": "Summarize the key points of this document."
      }]
    }'
  ```

  ```bash CLI
  ant messages create \
    --model claude-opus-5-5 \
    --max-tokens 1024 \
    --inference-geo us \
    --message '{role: user, content: "Summarize the key points of this document."}' \
    --transform '{content.#(type=="text").text,usage.inference_geo}' --format yaml
  ```

  ```python Python
  client = anthropic.Anthropic()

  response = client.messages.create(
      model="claude-opus-5-5",
      max_tokens=1024,
      inference_geo="us",
      messages=[
          {"role": "user", "content": "Summarize the key points of this document."}
      ],
  )

  for block in response.content:
      if block.type == "text":
          print(block.text)
  # Comprueba dónde se ejecutó realmente la inferencia
  print(f"Inference geo: {response.usage.inference_geo}")
  ```

  ```typescript TypeScript
  const client = new Anthropic();

  const response = await client.messages.create({
    model: "claude-opus-5-5",
    max_tokens: 1024,
    inference_geo: "us",
    messages: [
      {
        role: "user",
        content: "Summarize the key points of this document."
      }
    ]
  });

  const textBlock = response.content.find(
    (block): block is Anthropic.TextBlock => block.type === "text"
  );
  console.log(textBlock?.text);
  // Comprueba dónde se ejecutó realmente la inferencia
  console.log(`Inference geo: ${response.usage.inference_geo}`);
  ```

  ```csharp C#
  var client = new AnthropicClient();

  var response = await client.Messages.Create(
      new MessageCreateParams
      {
          Model = Model.ClaudeOpus5_5,
          MaxTokens = 1024,
          InferenceGeo = "us",
          Messages =
          [
              new() { Role = Role.User, Content = "Summarize the key points of this document." },
          ],
      }
  );

  foreach (var block in response.Content)
  {
      if (block.TryPickText(out var textBlock))
      {
          Console.WriteLine(textBlock.Text);
      }
  }

  // Comprueba dónde se ejecutó realmente la inferencia
  Console.WriteLine($"Inference geo: {response.Usage.InferenceGeo}");
  ```

  ```go Go
  client := anthropic.NewClient()

  message, err := client.Messages.New(context.Background(), anthropic.MessageNewParams{
  	Model:        anthropic.ModelClaudeOpus5_5,
  	MaxTokens:    1024,
  	InferenceGeo: anthropic.String("us"),
  	Messages: []anthropic.MessageParam{
  		anthropic.NewUserMessage(anthropic.NewTextBlock("Summarize the key points of this document.")),
  	},
  })
  if err != nil {
  	log.Fatal(err)
  }

  for _, block := range message.Content {
  	if textBlock, ok := block.AsAny().(anthropic.TextBlock); ok {
  		fmt.Println(textBlock.Text)
  	}
  }
  // Verifica dónde se ejecutó realmente la inferencia
  fmt.Printf("Inference geo: %s\n", message.Usage.InferenceGeo)
  ```

  ```java Java
  AnthropicClient client = AnthropicOkHttpClient.fromEnv();

  Message response = client.messages().create(
          MessageCreateParams.builder()
                  .model(Model.CLAUDE_OPUS_5_5)
                  .maxTokens(1024L)
                  .inferenceGeo("us")
                  .addUserMessage("Summarize the key points of this document.")
                  .build());

  response.content().stream()
          .flatMap(block -> block.text().stream())
          .forEach(textBlock -> IO.println(textBlock.text()));
  // Verifica dónde se ejecutó realmente la inferencia
  IO.println("Inference geo: " + response.usage().inferenceGeo().get());
  ```

  ```php PHP
  $client = new Client();

  $response = $client->messages->create(
      model: 'claude-opus-5-5',
      maxTokens: 1024,
      inferenceGeo: 'us',
      messages: [
          ['role' => 'user', 'content' => 'Summarize the key points of this document.'],
      ],
  );

  foreach ($response->content as $block) {
      if ($block->type === 'text') {
          echo $block->text, PHP_EOL;
      }
  }
  // Verifica dónde se ejecutó realmente la inferencia
  echo "Inference geo: {$response->usage->inferenceGeo}\n";
  ```

  ```ruby Ruby
  client = Anthropic::Client.new

  response = client.messages.create(
    model: "claude-opus-5-5",
    max_tokens: 1024,
    inference_geo: "us",
    messages: [
      {role: "user", content: "Summarize the key points of this document."}
    ]
  )

  response.content.each do |block|
    puts block.text if block.type == :text
  end
  # Verifica dónde se ejecutó realmente la inferencia
  puts "Inference geo: #{response.usage.inference_geo}"
  ```
</CodeGroup>

### Respuesta

El objeto `usage` de la respuesta incluye un campo `inference_geo` que indica dónde se ejecutó la inferencia:

```json Output
{
  "usage": {
    "input_tokens": 25,
    "output_tokens": 150,
    "inference_geo": "us"
  }
}
```

### Disponibilidad de modelos

El parámetro `inference_geo` es compatible con Claude 4.6 y modelos posteriores. Las solicitudes con `inference_geo` en Claude Opus 4.5, Claude Sonnet 4.5 (obsoleto), Claude Haiku 4.5 o modelos anteriores devuelven un error 400.

<Note>
  El parámetro `inference_geo` está disponible en la Claude API (de primera parte) y en [Claude Platform on AWS](https://platform.claude.com/docs/es/build-with-claude/claude-platform-on-aws). En Amazon Bedrock y Google Cloud, la región de inferencia está determinada por la URL del endpoint o el perfil de inferencia, por lo que `inference_geo` no aplica. En [Claude en Microsoft Foundry](https://platform.claude.com/docs/es/build-with-claude/claude-in-microsoft-foundry), `inference_geo` tampoco aplica: las implementaciones alojadas en Azure pueden usar en su lugar el tipo de implementación US Data Zone Standard, que mantiene la inferencia dentro de los Estados Unidos. El parámetro `inference_geo` tampoco está disponible a través del [endpoint de compatibilidad con el SDK de OpenAI](https://platform.claude.com/docs/es/cli-sdks-libraries/libraries/openai-sdk).
</Note>

### Restricciones a nivel de workspace

La configuración del workspace también permite restringir qué geografías de inferencia están disponibles:

* **`allowed_inference_geos`:** Restringe qué geografías puede usar un workspace. Si una solicitud especifica un `inference_geo` que no está en esta lista, la API devuelve un error.
* **`default_inference_geo`:** Establece la geografía de respaldo cuando se omite `inference_geo` en una solicitud. Las solicitudes individuales pueden anular esto estableciendo `inference_geo` explícitamente.

Estas configuraciones se pueden establecer a través de la Console o la [Admin API](https://platform.claude.com/docs/es/manage-claude/admin-api) bajo el campo `data_residency`.

## Workspace geo

La Workspace geo se establece cuando creas un workspace y no se puede cambiar después. Actualmente, `"us"` es la única Workspace geo disponible.

Para establecer la Workspace geo, crea un nuevo workspace en la [Console](https://platform.claude.com):

1. En la Console, ve a la página [Workspaces](https://platform.claude.com/settings/workspaces) (`platform.claude.com/settings/workspaces`).
2. Haz clic en **Create workspace** para abrir la página [Create workspace](https://platform.claude.com/settings/workspaces/new) (`platform.claude.com/settings/workspaces/new`) en la Console.
3. Ingresa un nombre, confirma el valor en el campo **Workspace geo** y haz clic en **Create workspace**.

<Note>
  **Claude Platform on AWS:** La Workspace geo no es configurable. Las sesiones de Claude Managed Agents en esta plataforma se ejecutan con una Workspace geo efectiva de `"us"`, que actualmente es la única Workspace geo disponible. Consulta [Claude Platform on AWS](https://platform.claude.com/docs/es/build-with-claude/claude-platform-on-aws) para conocer las consideraciones de residencia de datos específicas de esa plataforma.
</Note>

## Precios

Los precios de residencia de datos varían según la generación del modelo:

* **Claude 4.6 y modelos posteriores:** La inferencia solo en EE. UU. (`inference_geo: "us"`) tiene un precio de 1.1x la tarifa estándar en todas las categorías de precios de tokens (tokens de entrada, tokens de salida, escrituras en caché y lecturas de caché). En Claude Haiku 5.5, el multiplicador también se aplica a los precios más altos para prompts de más de 100,000 tokens (consulta [Precios de contexto largo](https://platform.claude.com/docs/es/about-claude/pricing#long-context-pricing)).
* **Enrutamiento global** (`inference_geo: "global"`): Se aplican los precios estándar.
* **Modelos anteriores:** No admiten `inference_geo` (consulta [Disponibilidad de modelos](https://platform.claude.com/docs/es/manage-claude/data-residency#model-availability)); se aplican los precios estándar. Las solicitudes que incluyen el parámetro devuelven un error 400.

Estos precios se aplican a la Claude API (de primera parte) y a Claude Platform on AWS. En Claude en Microsoft Foundry, el mismo multiplicador de 1.1x se aplica a las implementaciones alojadas en Azure que usan el tipo de implementación US Data Zone Standard. Las plataformas operadas por socios (Bedrock y Google Cloud) tienen sus propios precios regionales. Consulta [Precios de residencia de datos](https://platform.claude.com/docs/es/about-claude/pricing#data-residency-pricing) para más detalles.

El mismo multiplicador se aplica a [Claude Managed Agents](https://platform.claude.com/docs/es/managed-agents/overview): cuando la [configuración del modelo](https://platform.claude.com/docs/es/managed-agents/agent-setup) de un agente fija `inference_geo` en `"us"`, las solicitudes del modelo en las sesiones que ejecutan ese agente tienen un precio de 1.1x la tarifa estándar.

<Note>
  Si tienes un compromiso de [Priority Tier](https://platform.claude.com/docs/es/api/service-tiers), el multiplicador de 1.1x para la inferencia solo en EE. UU. también afecta cómo se contabilizan los tokens contra tu capacidad de Priority Tier. Cada token consumido con `inference_geo: "us"` descuenta 1.1 tokens de tu TPM comprometido, de forma coherente con cómo otros multiplicadores de precios (como el almacenamiento en caché de prompts) afectan las tasas de consumo.
</Note>

## Compatibilidad con la Batch API

El parámetro `inference_geo` es compatible con la [Batch API](https://platform.claude.com/docs/es/build-with-claude/batch-processing). Cada solicitud en un lote puede especificar su propio valor de `inference_geo`.

## Migración desde las exclusiones heredadas

Si tu organización optó anteriormente por excluirse del enrutamiento global para mantener la inferencia en EE. UU., tu workspace se ha configurado automáticamente con `allowed_inference_geos: ["us"]` y `default_inference_geo: "us"`. No se requieren cambios en el código. Tus requisitos de residencia de datos existentes siguen aplicándose a través de los nuevos controles geográficos.

### Qué cambió

La exclusión heredada era una configuración a nivel de organización que restringía todas las solicitudes a infraestructura ubicada en EE. UU. Los nuevos controles de residencia de datos la reemplazan con dos mecanismos:

* **Control por solicitud:** El parámetro `inference_geo` te permite especificar `"us"` o `"global"` en cada llamada a la API, lo que te da flexibilidad a nivel de solicitud.
* **Controles de workspace:** Las configuraciones `default_inference_geo` y `allowed_inference_geos` en la Console te permiten aplicar políticas geográficas en todas las claves de un workspace.

### Qué pasó con tu workspace

Tu workspace se migró automáticamente:

| Configuración heredada                           | Nuevo equivalente                                               |
| ------------------------------------------------ | --------------------------------------------------------------- |
| Exclusión del enrutamiento global (solo EE. UU.) | `allowed_inference_geos: ["us"]`, `default_inference_geo: "us"` |

Todas las solicitudes de API que usan claves de tu workspace siguen ejecutándose en infraestructura ubicada en EE. UU. No se necesita ninguna acción para mantener tu comportamiento actual.

### Si quieres usar el enrutamiento global

Si tus requisitos de residencia de datos han cambiado y quieres aprovechar el enrutamiento global para obtener mejor rendimiento y disponibilidad, actualiza la configuración de geografía de inferencia de tu workspace para incluir `"global"` en las geografías permitidas y establece `default_inference_geo` en `"global"`. Consulta [Restricciones a nivel de workspace](https://platform.claude.com/docs/es/manage-claude/data-residency#workspace-level-restrictions) para más detalles.

### Impacto en los precios

Los modelos heredados no se ven afectados por esta migración. Para conocer los precios actuales de los modelos más recientes, consulta [Precios](https://platform.claude.com/docs/es/manage-claude/data-residency#pricing).

## Limitaciones actuales

* **Límites de velocidad compartidos:** Los límites de velocidad se comparten entre todas las geografías.
* **Inference geo:** Solo están disponibles `"us"` y `"global"`.
* **Workspace geo:** Actualmente solo está disponible `"us"`. La Workspace geo no se puede cambiar después de crear el workspace.

## Próximos pasos

<CardGroup>
  <Card title="Precios" icon="dollar-sign" href="https://platform.claude.com/docs/es/about-claude/pricing#data-residency-pricing">
    Consulta los detalles de precios de residencia de datos.
  </Card>

  <Card title="Espacios de trabajo" icon="building" href="https://platform.claude.com/docs/es/manage-claude/workspaces">
    Aprende sobre la configuración de workspaces.
  </Card>

  <Card title="API de uso y costos" icon="chart" href="https://platform.claude.com/docs/es/manage-claude/usage-cost-api">
    Haz seguimiento del uso y los costos por residencia de datos.
  </Card>
</CardGroup>
