---
title: "Create new gateway"
method: POST
path: "/gateway"
tags: ["Gateway"]
---

# Create new gateway

`POST /gateway`

## Request

- Base URL: `https://api.tatum.io/v4/manage`
- URL: `https://api.tatum.io/v4/manage/gateway`
- Auth: API key in header `x-api-key`

Creates a new gateway for the given owner. It accepts the gateway configuration payload and registers a new gateway.

## Request body

- CreateGatewayDto
  - `displayName` string, required: Human-readable name of the gateway. Displayed in dashboards, APIs, and management interfaces.
  - `interface` string, required: Interface or protocol used by this gateway. Examples include "ethereum-mainnet-json-rpc", "polygon-mumbai-json-rpc", etc.
  - `isActive` boolean, required: Indicates whether the gateway is currently active and processing traffic.
  - `endpointConfigs` union[], required: Configuration of endpoints associated with this gateway. Defines how individual endpoints participate in routing, including their priority, weight, and enabled status. Maximum of 10 endpoints per gateway.
    - union
      - UserEndpointConfig
        - `endpointId` string, uuid, required: Identifier of the user-provided endpoint used by this gateway.
        - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
        - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
        - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
      - TatumManagedEndpointConfig
        - `endpointId` 'tatum', required: Special value "tatum", which represents the default Tatum-managed endpoint.
        - `apiKey` string, required: API key for this endpoint.
        - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
        - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
        - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
  - `endpointRouting` string, required: The strategy used for routing traffic across configured endpoints. - "priority-failover": Traffic is routed to the highest-priority healthy endpoint first. If it becomes unavailable, traffic automatically fails over to the next endpoint based on priority. - "load-distribution": Traffic is distributed across all enabled endpoints according to their defined weights (typically weighted round-robin).
  - `enabledPowerups` object, required: Optional performance and reliability features enabled for the gateway.
    - `rpc-accelerator` boolean: Enables RPC acceleration for faster response times.
    - `health-checks` boolean: Enables continuous health monitoring of endpoints.
    - `mev-protection` boolean: Enables MEV (Maximal Extractable Value) protection for supported networks.
    - `use-boost` boolean: Enables usage of boost for MEV protection.
    - `intelligent-data-routing` boolean: Enables intelligent routing based on real-time performance and availability.
  - `methodRoutingOverrides` GatewayMethodRoutingConfig[]: Override configurations for specific methods of this gateway.
    - `methods` string[], required: List of methods to which this routing configuration applies.
    - `isActive` boolean, required: Indicates whether the gateway is currently active and processing traffic.
    - `endpointConfigs` union[], required: Configuration of endpoints associated with this gateway. Defines how individual endpoints participate in routing, including their priority, weight, and enabled status. Maximum of 10 endpoints per gateway.
      - union
        - UserEndpointConfig
          - `endpointId` string, uuid, required: Identifier of the user-provided endpoint used by this gateway.
          - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
          - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
          - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
        - TatumManagedEndpointConfig
          - `endpointId` 'tatum', required: Special value "tatum", which represents the default Tatum-managed endpoint.
          - `apiKey` string, required: API key for this endpoint.
          - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
          - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
          - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
    - `endpointRouting` string, required: The strategy used for routing traffic across configured endpoints. - "priority-failover": Traffic is routed to the highest-priority healthy endpoint first. If it becomes unavailable, traffic automatically fails over to the next endpoint based on priority. - "load-distribution": Traffic is distributed across all enabled endpoints according to their defined weights (typically weighted round-robin).

## Response `201`

The created gateway

- Gateway
  - `version` unknown, required
  - `id` string, uuid, required: Unique identifier of the gateway. This UUID is used to reference and manage the gateway.
  - `url` string, required: The primary URL that clients use to send requests to the gateway.
  - `displayName` string, required: Human-readable name of the gateway. Displayed in dashboards, APIs, and management interfaces.
  - `chain` string, required: Blockchain this gateway is connected to. Examples: "Ethereum", "Polygon", "Solana", etc.
  - `network` string, required: Network of the blockchain. Examples: "ethereum-mainnet", "polygon-mumbai", etc.
  - `interface` string, required: Interface or protocol used by this gateway. Examples include "ethereum-mainnet-json-rpc", "polygon-mumbai-json-rpc", etc.
  - `isActive` boolean, required: Indicates whether the gateway is currently active and processing traffic.
  - `endpointConfigs` union[], required: Configuration of endpoints associated with this gateway. Defines how individual endpoints participate in routing, including their priority, weight, and enabled status. Maximum of 10 endpoints per gateway.
    - union
      - UserEndpointConfig
        - `endpointId` string, uuid, required: Identifier of the user-provided endpoint used by this gateway.
        - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
        - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
        - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
      - TatumManagedEndpointConfig
        - `endpointId` 'tatum', required: Special value "tatum", which represents the default Tatum-managed endpoint.
        - `apiKey` string, required: API key for this endpoint.
        - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
        - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
        - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
  - `endpointRouting` string, required: The strategy used for routing traffic across configured endpoints. - "priority-failover": Traffic is routed to the highest-priority healthy endpoint first. If it becomes unavailable, traffic automatically fails over to the next endpoint based on priority. - "load-distribution": Traffic is distributed across all enabled endpoints according to their defined weights (typically weighted round-robin).
  - `enabledPowerups` object, required: Optional performance and reliability features enabled for the gateway.
    - `rpc-accelerator` boolean: Enables RPC acceleration for faster response times.
    - `health-checks` boolean: Enables continuous health monitoring of endpoints.
    - `mev-protection` boolean: Enables MEV (Maximal Extractable Value) protection for supported networks.
    - `use-boost` boolean: Enables usage of boost for MEV protection.
    - `intelligent-data-routing` boolean: Enables intelligent routing based on real-time performance and availability.
  - `methodRoutingOverrides` GatewayMethodRoutingConfig[]: Override configurations for specific methods of this gateway.
    - `methods` string[], required: List of methods to which this routing configuration applies.
    - `isActive` boolean, required: Indicates whether the gateway is currently active and processing traffic.
    - `endpointConfigs` union[], required: Configuration of endpoints associated with this gateway. Defines how individual endpoints participate in routing, including their priority, weight, and enabled status. Maximum of 10 endpoints per gateway.
      - union
        - UserEndpointConfig
          - `endpointId` string, uuid, required: Identifier of the user-provided endpoint used by this gateway.
          - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
          - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
          - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
        - TatumManagedEndpointConfig
          - `endpointId` 'tatum', required: Special value "tatum", which represents the default Tatum-managed endpoint.
          - `apiKey` string, required: API key for this endpoint.
          - `weight` integer, required: Weight of the endpoint for load-based routing. Used when routing strategy is "Load Distribution". Higher values mean the endpoint receives a larger share of traffic.
          - `priority` integer, required: Priority of the endpoint for failover routing. Used when the routing strategy is set to "Priority Failover". Lower numbers indicate higher priority (1 = highest, 100 = lowest).
          - `enabled` boolean, required: Indicates whether this endpoint configuration is enabled. Disabled endpoints will not receive any traffic.
    - `endpointRouting` string, required: The strategy used for routing traffic across configured endpoints. - "priority-failover": Traffic is routed to the highest-priority healthy endpoint first. If it becomes unavailable, traffic automatically fails over to the next endpoint based on priority. - "load-distribution": Traffic is distributed across all enabled endpoints according to their defined weights (typically weighted round-robin).
  - `ownerId` string: Identifier of the owner of this gateway. If not set, the gateway is an official Tatum gateway.
  - `createdAt` string, date-time, required: Date and time when the gateway was created.
  - `updatedAt` string, date-time, required: Date and time when the gateway was last updated.

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden

---

[API](https://skmtc.dev/tatum/apis/gateway-manage-api.md) - [All operations](https://skmtc.dev/tatum/apis/gateway-manage-api/llms.txt) - [OpenAPI document](https://skmtc.dev/tatum/apis/gateway-manage-api/revisions/e0d2d0fa4ba4?raw)
