Skip to content

staff.gateways ​

13 methods on staff.gateways. Each returns the answer's data and throws NoviqaError on a failed answer.

list ​

GET/admin/v1/gateways

List gateways

Every liquidity provider connection, by priority (lower first, then id). Not paged. The password is never returned (has_password says whether one is stored) and sealed parameters (FIX SSL Private Key) read as ********. Datafeeds and gateways are platform-wide (no group scope). Every change writes a config line to the journal and raises the configuration version, so the service that runs the connection picks it up and reconnects.

More details

Rights: the staff member needs every one of: config.gateways.

Returns
Promise<Gateway[]>
The answer's data.
Errors
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.list()
bash
curl -X GET "$NOVIQA_API_URL/admin/v1/gateways" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": [
    {
      "allow_import_balances": true,
      "collect_transactions_days": 1,
      "created_at": "2026-09-25T10:15:00Z",
      "enabled": true,
      "gateway_login": "string",
      "gateway_password": "string",
      "gateway_server": "string",
      "groups": [
        {}
      ],
      "has_gateway_password": true,
      "has_password": true,
      "id": 1,
      "import_symbol_settings": true
    }
  ],
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.list(options?: RequestOptions): Promise<models.Gateway[]>

create ​

POST/admin/v1/gateways

Create a gateway

Starts from the defaults (module fix44, enabled, reconnect 5 s, 3 attempts per series, 60 s pause between series, the module's parameter list) and applies the body over them. Required: name (1-64 letters, digits, spaces or . _ & # -, unique) and server (host:port). A params list replaces the whole list, so send every parameter you keep. While enabled, SenderCompID and TargetCompID must have a value. Limits: priority 0-1000, login 64 and password 128 characters, reconnect 1-600 s, attempts 1-1000, series pause 0-86400 s; FIX Quantity Mode Units or Lots; Limit Orders Coverage Mode Gateway, Limit or Market; Order Placement Timeout 1-3600 s; Trading Calendar Holidays entries like +25DEC or -06JAN separated by ;; FIX SSL Certificate and FIX SSL Private Key set together and forming a pair (the key is stored sealed and needs SECRET_KEY). Translates and symbol masks follow the datafeed rules; the symbol list never limits which orders a gateway takes (routing decides). Unknown fields are refused. Answers the stored gateway at version 1. Datafeeds and gateways are platform-wide (no group scope). Every change writes a config line to the journal and raises the configuration version, so the service that runs the connection picks it up and reconnects.

More details

Rights: the staff member needs every one of: config.gateways.

Request body
allow_import_balancesboolean
accept the provider's balance on account import
collect_transactions_daysinteger
days of transactions kept for monitoring, 0 = off
created_atstring
UTC time, RFC 3339.
enabledboolean
gateway_loginstring
gateway_passwordstring
write-only: never returned, stored sealed
gateway_serverstring
GatewayServer, GatewayLogin and GatewayPassword name a separate connection (e.g. a gateway server distinct from the liquidity provider dial-out) the module may need; stored like Server/Login/Password, not read by execution yet.
groupsGatewayGroup_input[]
per-group symbol masks, narrower than Symbols
has_gateway_passwordboolean
read-only
has_passwordboolean
read-only
idinteger
import_symbol_settingsboolean
apply the provider's symbol settings (digits, sizes) on import
loginstring
modestring
Active (we dial the provider) or Passive (it dials us)
modulestring
fix44
namestring
paramsFeedParam_input[]
the module's settings
passwordstring
write-only: never returned, stored sealed
priorityinteger
lower first when a route names no order
profilingboolean
keep detailed session profiling, once that is built
reconnect_attemptsinteger
attempts in one series
reconnect_secinteger
wait between connection attempts
series_pause_secinteger
wait after a series that never logged on
serverstring
host:port of the provider
sslboolean
secure connection: turns on FIX SSL Enabled even when no parameter sets it
symbolsstring[]
masks of the symbols it serves settings and quotes for; never gates orders
timeout_secinteger
seconds to wait for a connection to answer before giving up
translatesFeedTranslate_input[]
our symbol <-> the provider's name, digits and markup
updated_atstring
UTC time, RFC 3339.
versioninteger
Returns
Promise<Gateway>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.csrf_invalid: request refused: reload the page and try again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
409conflict: already exists
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.create({
  enabled: false,
  login: "hs-orders",
  module: "fix44",
  name: "Prime LP",
  password: "S3cret#Pass",
  priority: 1,
  server: "fix.example.com:9880",
  symbols: [
    "Forex\\*"
  ],
  translates: []
})
bash
curl -X POST "$NOVIQA_API_URL/admin/v1/gateways" \
  -H "Authorization: Bearer $NOVIQA_TOKEN" \
  -H "Content-Type: application/json" \
  --data-raw '{
  "enabled": false,
  "login": "hs-orders",
  "module": "fix44",
  "name": "Prime LP",
  "password": "S3cret#Pass",
  "priority": 1,
  "server": "fix.example.com:9880",
  "symbols": [
    "Forex\\*"
  ],
  "translates": []
}'
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "allow_import_balances": true,
    "collect_transactions_days": 1,
    "created_at": "2026-09-25T10:15:00Z",
    "enabled": true,
    "gateway_login": "string",
    "gateway_password": "string",
    "gateway_server": "string",
    "groups": [
      {
        "group": "real\\standard",
        "symbols": [
          "string"
        ]
      }
    ],
    "has_gateway_password": true,
    "has_password": true,
    "id": 1,
    "import_symbol_settings": true
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.create(body: models.Gateway, options?: RequestOptions): Promise<models.Gateway>

modules ​

GET/admin/v1/gateways/modules

List gateway modules

The kinds of provider connection (fix44 only) with the parameters a new gateway starts with and the parameters that must have a value before it can be enabled.

More details

Rights: the staff member needs every one of: config.gateways.

Returns
Promise<FeedModule[]>
The answer's data.
Errors
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.modules()
bash
curl -X GET "$NOVIQA_API_URL/admin/v1/gateways/modules" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": [
    {
      "certificate": "string",
      "description": "string",
      "label": "string",
      "module": "string",
      "params": [
        {}
      ],
      "required": [
        "string"
      ],
      "signed_by": "string"
    }
  ],
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.modules(options?: RequestOptions): Promise<models.FeedModule[]>

updateOrder ​

PUT/admin/v1/gateways/order

Reorder gateways

Sets the priorities 1, 2, ... in the order of ids (used first when a routing rule names no order). ids must list every gateway exactly once. Versions do not change. Answers the whole list in its new order (parameters as stored; sealed values read as sealed:...). Datafeeds and gateways are platform-wide (no group scope). Every change writes a config line to the journal and raises the configuration version, so the service that runs the connection picks it up and reconnects.

More details

Rights: the staff member needs every one of: config.gateways.

Request body
idsinteger[]
Returns
Promise<Gateway[]>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.csrf_invalid: request refused: reload the page and try again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.updateOrder({
  ids: [
    2,
    1
  ]
})
bash
curl -X PUT "$NOVIQA_API_URL/admin/v1/gateways/order" \
  -H "Authorization: Bearer $NOVIQA_TOKEN" \
  -H "Content-Type: application/json" \
  --data-raw '{
  "ids": [
    2,
    1
  ]
}'
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": [
    {
      "allow_import_balances": true,
      "collect_transactions_days": 1,
      "created_at": "2026-09-25T10:15:00Z",
      "enabled": true,
      "gateway_login": "string",
      "gateway_password": "string",
      "gateway_server": "string",
      "groups": [
        {}
      ],
      "has_gateway_password": true,
      "has_password": true,
      "id": 1,
      "import_symbol_settings": true
    }
  ],
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.updateOrder(body: http.orderBody, options?: RequestOptions): Promise<models.Gateway[]>

statuses ​

GET/admin/v1/gateways/statuses

Every gateway's connection status

The latest report of execution about each gateway, in list order. A disabled gateway reads disabled, one no execution copy reports on reads stopped, and one reported online whose session stopped answering reads stopped with a last_error.

More details

Rights: the staff member needs every one of: config.gateways.

Returns
Promise<GatewayStatus[]>
The answer's data.
Errors
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.statuses()
bash
curl -X GET "$NOVIQA_API_URL/admin/v1/gateways/statuses" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": [
    {
      "answer_ms": 1,
      "bytes_in": 1,
      "bytes_out": 1,
      "fills": 1,
      "gateway_id": 1,
      "instance": "string",
      "instruments": 1,
      "last_error": "string",
      "last_logon": "2026-09-25T10:15:00Z",
      "logons": 1,
      "orders": 1,
      "outbox": 1
    }
  ],
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.statuses(options?: RequestOptions): Promise<models.GatewayStatus[]>

retrieve ​

GET/admin/v1/gateways/{id}

Get a gateway

One gateway with its parameters (sealed ones as ********), symbol masks and translates.

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
Returns
Promise<Gateway>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.retrieve(1)
bash
curl -X GET "$NOVIQA_API_URL/admin/v1/gateways/1" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "allow_import_balances": true,
    "collect_transactions_days": 1,
    "created_at": "2026-09-25T10:15:00Z",
    "enabled": true,
    "gateway_login": "string",
    "gateway_password": "string",
    "gateway_server": "string",
    "groups": [
      {
        "group": "real\\standard",
        "symbols": [
          "string"
        ]
      }
    ],
    "has_gateway_password": true,
    "has_password": true,
    "id": 1,
    "import_symbol_settings": true
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.retrieve(id: number, options?: RequestOptions): Promise<models.Gateway>

update ​

PATCH/admin/v1/gateways/{id}

Change a gateway

Send version (the one you last read) and the fields to change; id, has_password, created_at and updated_at cannot be sent. params, symbols and translates replace the whole list; a sealed parameter sent back as ******** keeps its stored value. password "" removes the password; leaving it out keeps it. The create rules apply to the result. A change that changes nothing answers the gateway as it is. Answers the saved gateway with its new version. Datafeeds and gateways are platform-wide (no group scope). Every change writes a config line to the journal and raises the configuration version, so the service that runs the connection picks it up and reconnects.

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
Request body
allow_import_balancesboolean
accept the provider's balance on account import
collect_transactions_daysinteger
days of transactions kept for monitoring, 0 = off
created_atstring
UTC time, RFC 3339.
enabledboolean
gateway_loginstring
gateway_passwordstring
write-only: never returned, stored sealed
gateway_serverstring
GatewayServer, GatewayLogin and GatewayPassword name a separate connection (e.g. a gateway server distinct from the liquidity provider dial-out) the module may need; stored like Server/Login/Password, not read by execution yet.
groupsGatewayGroup_input[]
per-group symbol masks, narrower than Symbols
has_gateway_passwordboolean
read-only
has_passwordboolean
read-only
idinteger
import_symbol_settingsboolean
apply the provider's symbol settings (digits, sizes) on import
loginstring
modestring
Active (we dial the provider) or Passive (it dials us)
modulestring
fix44
namestring
paramsFeedParam_input[]
the module's settings
passwordstring
write-only: never returned, stored sealed
priorityinteger
lower first when a route names no order
profilingboolean
keep detailed session profiling, once that is built
reconnect_attemptsinteger
attempts in one series
reconnect_secinteger
wait between connection attempts
series_pause_secinteger
wait after a series that never logged on
serverstring
host:port of the provider
sslboolean
secure connection: turns on FIX SSL Enabled even when no parameter sets it
symbolsstring[]
masks of the symbols it serves settings and quotes for; never gates orders
timeout_secinteger
seconds to wait for a connection to answer before giving up
translatesFeedTranslate_input[]
our symbol <-> the provider's name, digits and markup
updated_atstring
UTC time, RFC 3339.
versioninteger
Returns
Promise<Gateway>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.csrf_invalid: request refused: reload the page and try again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
409conflict: already exists
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.update(1, {
  reconnect_attempts: 5,
  series_pause_sec: 120,
  version: 2
})
bash
curl -X PATCH "$NOVIQA_API_URL/admin/v1/gateways/1" \
  -H "Authorization: Bearer $NOVIQA_TOKEN" \
  -H "Content-Type: application/json" \
  --data-raw '{
  "reconnect_attempts": 5,
  "series_pause_sec": 120,
  "version": 2
}'
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "allow_import_balances": true,
    "collect_transactions_days": 1,
    "created_at": "2026-09-25T10:15:00Z",
    "enabled": true,
    "gateway_login": "string",
    "gateway_password": "string",
    "gateway_server": "string",
    "groups": [
      {
        "group": "real\\standard",
        "symbols": [
          "string"
        ]
      }
    ],
    "has_gateway_password": true,
    "has_password": true,
    "id": 1,
    "import_symbol_settings": true
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.update(id: number, body: models.Gateway, options?: RequestOptions): Promise<models.Gateway>

delete ​

DELETE/admin/v1/gateways/{id}

Delete a gateway

Removes the gateway; execution disconnects it. Datafeeds and gateways are platform-wide (no group scope). Every change writes a config line to the journal and raises the configuration version, so the service that runs the connection picks it up and reconnects.

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
Returns
Promise<null>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.csrf_invalid: request refused: reload the page and try again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.delete(1)
bash
curl -X DELETE "$NOVIQA_API_URL/admin/v1/gateways/1" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": null,
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.delete(id: number, options?: RequestOptions): Promise<null>

activate ​

POST/admin/v1/gateways/{id}/activate

Switch a gateway on or off

Sets enabled whatever version you last read (it runs the same checks as a change). Answers the saved gateway. Datafeeds and gateways are platform-wide (no group scope). Every change writes a config line to the journal and raises the configuration version, so the service that runs the connection picks it up and reconnects.

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
Request body
enabledboolean
Returns
Promise<Gateway>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.csrf_invalid: request refused: reload the page and try again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
409conflict: already exists
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.activate(1, {
  enabled: true
})
bash
curl -X POST "$NOVIQA_API_URL/admin/v1/gateways/1/activate" \
  -H "Authorization: Bearer $NOVIQA_TOKEN" \
  -H "Content-Type: application/json" \
  --data-raw '{
  "enabled": true
}'
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "allow_import_balances": true,
    "collect_transactions_days": 1,
    "created_at": "2026-09-25T10:15:00Z",
    "enabled": true,
    "gateway_login": "string",
    "gateway_password": "string",
    "gateway_server": "string",
    "groups": [
      {
        "group": "real\\standard",
        "symbols": [
          "string"
        ]
      }
    ],
    "has_gateway_password": true,
    "has_password": true,
    "id": 1,
    "import_symbol_settings": true
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.activate(id: number, body: http.activeBody, options?: RequestOptions): Promise<models.Gateway>

fixlog ​

GET/admin/v1/gateways/{id}/fixlog

Latest FIX messages of a gateway

Asks the execution copy running the gateway's session for its latest FIX messages, oldest first, passwords blanked (waits up to 5 seconds). invalid_input when no execution copy runs the session now. Messages are only kept when the FIX Trade Log Enabled parameter is Y.

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
linesinteger · query
How many of the latest messages; default 200.
Returns
Promise<FixLog>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.fixlog(1, {
  lines: 1
})
bash
curl -X GET "$NOVIQA_API_URL/admin/v1/gateways/1/fixlog?lines=1" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "gateway_id": 1,
    "lines": [
      "string"
    ]
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.fixlog(id: number, query?: { lines? }, options?: RequestOptions): Promise<models.FixLog>

restart ​

POST/admin/v1/gateways/{id}/restart

Reconnect a gateway

Raises the gateway's version, which makes execution drop and reopen its session. Refused (invalid_input) while the gateway is disabled. Writes a journal line. Answers the gateway with its new version.

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
Returns
Promise<Gateway>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.csrf_invalid: request refused: reload the page and try again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.restart(1)
bash
curl -X POST "$NOVIQA_API_URL/admin/v1/gateways/1/restart" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "allow_import_balances": true,
    "collect_transactions_days": 1,
    "created_at": "2026-09-25T10:15:00Z",
    "enabled": true,
    "gateway_login": "string",
    "gateway_password": "string",
    "gateway_server": "string",
    "groups": [
      {
        "group": "real\\standard",
        "symbols": [
          "string"
        ]
      }
    ],
    "has_gateway_password": true,
    "has_password": true,
    "id": 1,
    "import_symbol_settings": true
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.restart(id: number, options?: RequestOptions): Promise<models.Gateway>

status ​

GET/admin/v1/gateways/{id}/status

Gateway connection status

The latest report of execution about one gateway: state, the execution copy running it, counters since the session started, last logon and last error (see the list of statuses for the rules).

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
Returns
Promise<GatewayStatus>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.status(1)
bash
curl -X GET "$NOVIQA_API_URL/admin/v1/gateways/1/status" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "answer_ms": 1,
    "bytes_in": 1,
    "bytes_out": 1,
    "fills": 1,
    "gateway_id": 1,
    "instance": "string",
    "instruments": 1,
    "last_error": "string",
    "last_logon": "2026-09-25T10:15:00Z",
    "logons": 1,
    "orders": 1,
    "outbox": 1
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.status(id: number, options?: RequestOptions): Promise<models.GatewayStatus>

test ​

POST/admin/v1/gateways/{id}/test

Test a gateway connection

Asks execution to try a logon with the stored settings without enabling the gateway, and waits up to 15 seconds. ok false with message is a failed logon; invalid_input means no execution copy answered. Writes a journal line with the result.

More details

Rights: the staff member needs every one of: config.gateways.

Parameters
idinteger · pathrequired
Numeric id.
Returns
Promise<ConnectionResult>
The answer's data.
Errors
400invalid_input: invalid input
401auth.session_expired: session expired, sign in again
403auth.csrf_invalid: request refused: reload the page and try again
403auth.invalid_terminal: this terminal cannot be used here
403auth.otp_enrol_required: your group requires one-time codes: set them up to continue
403auth.password_change_required: you must change your password first
403forbidden: you do not have access to this action
404not_found: not found
500internal: something went wrong
ts
import { staff } from "@/lib/noviqa"

const data = await staff.gateways.test(1)
bash
curl -X POST "$NOVIQA_API_URL/admin/v1/gateways/1/test" \
  -H "Authorization: Bearer $NOVIQA_TOKEN"
json
{
  "success": true,
  "code": "ok",
  "message": "done",
  "data": {
    "message": "string",
    "millis": 1,
    "ok": true
  },
  "request_id": "5b7f2c1e"
}
ts
staff.gateways.test(id: number, options?: RequestOptions): Promise<models.ConnectionResult>