# Search broker servers

URL: https://docs.fxapis.com/api-reference/accounts/search-broker-servers

> Search broker servers. MT5 servers matching what someone typed — a broker's name (vantage), the start of a server name (JustMarkets-De), with or without…

`GET https://api.fxapis.com/v1/brokers/servers`

MT5 servers matching what someone typed — a broker's name (`vantage`), the start of a server name (`JustMarkets-De`), with or without dashes and spaces. Built for a typeahead in your connect form: call it as the person types (debounced, from 2 characters) and let them pick.

Servers accounts on fxapis have logged in to come first (`proven: true`), then names starting with what was typed, then the kind asked for (`demo`/`live`), then the broker's main server. With fewer than five matches for 3+ characters, the broker search is asked once and its servers added, so a broker nobody here has used yet is found too — that call can take a second or two.

**A server that is not listed can still be connected**: always let people use exactly what they typed. Without `q`, the servers used most here.

Authentication: `Authorization: Bearer <API key>`.

#### Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `q` | query | string | no |  |
| `limit` | query | integer | no |  |

#### Responses

- `200`
- `401`

Failures return `{ "error": { "code", "message" } }`; every code is listed at https://docs.fxapis.com/errors.

#### 200 response fields

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `data` | object[] | no |  |
| `data[].name` | string | yes | Exactly as MetaTrader shows it — send this as `server`. Example: `"JustMarkets-Demo"` |
| `data[].company` | null \| string | yes | The broker's legal name, when known. Example: `"JustMarkets Ltd"` |
| `data[].kind` | "demo" \| "live" \| "contest" \| "unknown" | yes | From the server's name; `unknown` when the name does not say. |
| `data[].proven` | boolean | yes | Accounts on fxapis have logged in to this server. |