POST
/api/v1/proxies
Proxy anlegen
Anfrage#
POSIX-Shell · curl
curl --fail-with-body --request POST \
"$ADBR_API_URL/api/v1/proxies" \
-H "Authorization: Bearer $ADBR_API_TOKEN" \
-H "Content-Type: application/json" \
--data @request.jsonVerwende lokale Adresse und Token aus API & MCP. Ersetze Pfadplatzhalter wie {id} durch tatsächliche IDs. Erstelle request.json anhand des folgenden Körperschemas, bevor du den Befehl ausführst.
Authentifizierung und Rechte#
Authentifizierung: Bearer-Token
Scopes: proxies:write
Alle aufgeführten Scopes sind erforderlich; admin erfüllt Scope-Prüfungen. Kontorechte, Anfrageinhalt, Tresorzustand und Ressourcenrechte können weitere Voraussetzungen setzen.
Parameter#
Keine Pfad- oder Query-Parameter deklariert.
Anfragekörper#
Erforderlich.
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
group_id | string | null | Nein | |
ssh_private_key | string | null | Nein | |
ssh_key_passphrase | string | null | Nein | |
name | string | null | Nein | |
protocol | union | Ja | |
host | string | Ja | |
port | integer | Ja | |
username | string | null | Nein | |
password | string | null | Nein | |
change_ip_url | string | null | Nein | |
change_ip_cooldown_s | integer | null | Nein | |
provider | string | null | Nein | |
provider_params | object | Nein | |
ip_checker | string | null | Nein | |
remark | string | null | Nein | |
tags | array | Nein |
Vollständiges Körperschema
OpenAPI JSON
{
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"protocol",
"host",
"port"
],
"properties": {
"group_id": {
"type": [
"string",
"null"
],
"minLength": 1,
"maxLength": 64
},
"ssh_private_key": {
"type": [
"string",
"null"
],
"maxLength": 65536
},
"ssh_key_passphrase": {
"type": [
"string",
"null"
],
"maxLength": 1024
},
"name": {
"type": [
"string",
"null"
],
"maxLength": 100
},
"protocol": {
"anyOf": [
{
"type": "string",
"enum": [
"http"
]
},
{
"type": "string",
"enum": [
"https"
]
},
{
"type": "string",
"enum": [
"socks4"
]
},
{
"type": "string",
"enum": [
"socks4a"
]
},
{
"type": "string",
"enum": [
"socks5"
]
},
{
"type": "string",
"enum": [
"socks5h"
]
},
{
"type": "string",
"enum": [
"ssh"
]
}
]
},
"host": {
"type": "string",
"minLength": 1,
"maxLength": 255
},
"port": {
"type": "integer",
"minimum": 1,
"maximum": 65535
},
"username": {
"type": [
"string",
"null"
],
"maxLength": 512
},
"password": {
"type": [
"string",
"null"
],
"maxLength": 1024
},
"change_ip_url": {
"type": [
"string",
"null"
],
"maxLength": 2048
},
"change_ip_cooldown_s": {
"type": [
"integer",
"null"
],
"minimum": 0,
"maximum": 86400
},
"provider": {
"type": [
"string",
"null"
],
"maxLength": 32
},
"provider_params": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"ip_checker": {
"type": [
"string",
"null"
],
"maxLength": 32
},
"remark": {
"type": [
"string",
"null"
],
"maxLength": 1000
},
"tags": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"maxItems": 30
}
},
"additionalProperties": false
}
}
}
}Antworten#
201 · Standardantwort
OpenAPI JSON
{
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"group_id",
"ssh_key_set",
"id",
"compat_proxy_id",
"name",
"protocol",
"host",
"port",
"username",
"password_set",
"change_ip_url",
"change_ip_cooldown_s",
"provider",
"provider_params",
"ip_checker",
"remark",
"tags",
"last_check",
"last_check_at",
"profile_count",
"created_at",
"updated_at",
"row_version",
"deleted_at",
"purge_after"
],
"properties": {
"group_id": {
"type": [
"null",
"string"
]
},
"ssh_key_set": {
"type": "boolean"
},
"id": {
"type": "string"
},
"compat_proxy_id": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
},
"protocol": {
"type": "string"
},
"host": {
"type": "string"
},
"port": {
"type": "integer"
},
"username": {
"type": [
"null",
"string"
]
},
"password_set": {
"type": "boolean"
},
"change_ip_url": {
"type": [
"null",
"string"
]
},
"change_ip_cooldown_s": {
"type": [
"null",
"integer"
]
},
"provider": {
"type": [
"null",
"string"
]
},
"provider_params": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"ip_checker": {
"type": [
"null",
"string"
]
},
"remark": {
"type": [
"null",
"string"
]
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"last_check": {
"anyOf": [
{
"type": "object",
"required": [
"ok",
"checked_at",
"error_class",
"error_code",
"protocol_detected",
"ipv4",
"ipv6",
"country",
"region",
"city",
"postal_code",
"latitude",
"longitude",
"accuracy_km",
"timezone",
"utc_offset",
"languages",
"asn",
"as_org",
"latency_ms",
"geo_source",
"duplicate_profiles"
],
"properties": {
"ok": {
"type": "boolean"
},
"checked_at": {
"type": "integer"
},
"error_class": {
"type": [
"null",
"string"
]
},
"error_code": {
"type": [
"null",
"string"
]
},
"protocol_detected": {
"type": [
"null",
"string"
]
},
"ipv4": {
"type": [
"null",
"string"
]
},
"ipv6": {
"type": [
"null",
"string"
]
},
"country": {
"type": [
"null",
"string"
]
},
"region": {
"type": [
"null",
"string"
]
},
"city": {
"type": [
"null",
"string"
]
},
"postal_code": {
"type": [
"null",
"string"
]
},
"latitude": {
"type": [
"null",
"number"
]
},
"longitude": {
"type": [
"null",
"number"
]
},
"accuracy_km": {
"type": [
"null",
"number"
]
},
"timezone": {
"type": [
"null",
"string"
]
},
"utc_offset": {
"type": [
"null",
"string"
]
},
"languages": {
"type": "array",
"items": {
"type": "string"
}
},
"asn": {
"type": [
"null",
"integer"
]
},
"as_org": {
"type": [
"null",
"string"
]
},
"latency_ms": {
"type": "object",
"required": [
"tcp",
"handshake",
"first_byte"
],
"properties": {
"tcp": {
"type": [
"null",
"number"
]
},
"handshake": {
"type": [
"null",
"number"
]
},
"first_byte": {
"type": [
"null",
"number"
]
}
}
},
"geo_source": {
"type": [
"null",
"string"
]
},
"duplicate_profiles": {
"type": "integer"
}
}
},
{
"type": "null"
}
]
},
"last_check_at": {
"type": [
"null",
"integer"
]
},
"profile_count": {
"type": "integer"
},
"created_at": {
"type": "integer"
},
"updated_at": {
"type": "integer"
},
"row_version": {
"type": "integer"
},
"deleted_at": {
"type": [
"null",
"integer"
]
},
"purge_after": {
"type": [
"null",
"integer"
]
}
}
}
}
}
}default · HTTP-Fehlerhülle. Status und error.code bezeichnen den Fehler.
OpenAPI JSON
{
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}Allgemeine Authentifizierungs- und Transportfehler können zusätzlich zu den dokumentierten Antworten auftreten.
OpenAPI-Definition#
Vollständige Operationsdefinition
OpenAPI JSON
{
"summary": "Proxy anlegen",
"tags": [
"Proxys"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"protocol",
"host",
"port"
],
"properties": {
"group_id": {
"type": [
"string",
"null"
],
"minLength": 1,
"maxLength": 64
},
"ssh_private_key": {
"type": [
"string",
"null"
],
"maxLength": 65536
},
"ssh_key_passphrase": {
"type": [
"string",
"null"
],
"maxLength": 1024
},
"name": {
"type": [
"string",
"null"
],
"maxLength": 100
},
"protocol": {
"anyOf": [
{
"type": "string",
"enum": [
"http"
]
},
{
"type": "string",
"enum": [
"https"
]
},
{
"type": "string",
"enum": [
"socks4"
]
},
{
"type": "string",
"enum": [
"socks4a"
]
},
{
"type": "string",
"enum": [
"socks5"
]
},
{
"type": "string",
"enum": [
"socks5h"
]
},
{
"type": "string",
"enum": [
"ssh"
]
}
]
},
"host": {
"type": "string",
"minLength": 1,
"maxLength": 255
},
"port": {
"type": "integer",
"minimum": 1,
"maximum": 65535
},
"username": {
"type": [
"string",
"null"
],
"maxLength": 512
},
"password": {
"type": [
"string",
"null"
],
"maxLength": 1024
},
"change_ip_url": {
"type": [
"string",
"null"
],
"maxLength": 2048
},
"change_ip_cooldown_s": {
"type": [
"integer",
"null"
],
"minimum": 0,
"maximum": 86400
},
"provider": {
"type": [
"string",
"null"
],
"maxLength": 32
},
"provider_params": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"ip_checker": {
"type": [
"string",
"null"
],
"maxLength": 32
},
"remark": {
"type": [
"string",
"null"
],
"maxLength": 1000
},
"tags": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"maxItems": 30
}
},
"additionalProperties": false
}
}
}
},
"x-required-scopes": [
"proxies:write"
],
"responses": {
"201": {
"description": "Default Response",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"group_id",
"ssh_key_set",
"id",
"compat_proxy_id",
"name",
"protocol",
"host",
"port",
"username",
"password_set",
"change_ip_url",
"change_ip_cooldown_s",
"provider",
"provider_params",
"ip_checker",
"remark",
"tags",
"last_check",
"last_check_at",
"profile_count",
"created_at",
"updated_at",
"row_version",
"deleted_at",
"purge_after"
],
"properties": {
"group_id": {
"type": [
"null",
"string"
]
},
"ssh_key_set": {
"type": "boolean"
},
"id": {
"type": "string"
},
"compat_proxy_id": {
"type": [
"null",
"string"
]
},
"name": {
"type": [
"null",
"string"
]
},
"protocol": {
"type": "string"
},
"host": {
"type": "string"
},
"port": {
"type": "integer"
},
"username": {
"type": [
"null",
"string"
]
},
"password_set": {
"type": "boolean"
},
"change_ip_url": {
"type": [
"null",
"string"
]
},
"change_ip_cooldown_s": {
"type": [
"null",
"integer"
]
},
"provider": {
"type": [
"null",
"string"
]
},
"provider_params": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"ip_checker": {
"type": [
"null",
"string"
]
},
"remark": {
"type": [
"null",
"string"
]
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"last_check": {
"anyOf": [
{
"type": "object",
"required": [
"ok",
"checked_at",
"error_class",
"error_code",
"protocol_detected",
"ipv4",
"ipv6",
"country",
"region",
"city",
"postal_code",
"latitude",
"longitude",
"accuracy_km",
"timezone",
"utc_offset",
"languages",
"asn",
"as_org",
"latency_ms",
"geo_source",
"duplicate_profiles"
],
"properties": {
"ok": {
"type": "boolean"
},
"checked_at": {
"type": "integer"
},
"error_class": {
"type": [
"null",
"string"
]
},
"error_code": {
"type": [
"null",
"string"
]
},
"protocol_detected": {
"type": [
"null",
"string"
]
},
"ipv4": {
"type": [
"null",
"string"
]
},
"ipv6": {
"type": [
"null",
"string"
]
},
"country": {
"type": [
"null",
"string"
]
},
"region": {
"type": [
"null",
"string"
]
},
"city": {
"type": [
"null",
"string"
]
},
"postal_code": {
"type": [
"null",
"string"
]
},
"latitude": {
"type": [
"null",
"number"
]
},
"longitude": {
"type": [
"null",
"number"
]
},
"accuracy_km": {
"type": [
"null",
"number"
]
},
"timezone": {
"type": [
"null",
"string"
]
},
"utc_offset": {
"type": [
"null",
"string"
]
},
"languages": {
"type": "array",
"items": {
"type": "string"
}
},
"asn": {
"type": [
"null",
"integer"
]
},
"as_org": {
"type": [
"null",
"string"
]
},
"latency_ms": {
"type": "object",
"required": [
"tcp",
"handshake",
"first_byte"
],
"properties": {
"tcp": {
"type": [
"null",
"number"
]
},
"handshake": {
"type": [
"null",
"number"
]
},
"first_byte": {
"type": [
"null",
"number"
]
}
}
},
"geo_source": {
"type": [
"null",
"string"
]
},
"duplicate_profiles": {
"type": "integer"
}
}
},
{
"type": "null"
}
]
},
"last_check_at": {
"type": [
"null",
"integer"
]
},
"profile_count": {
"type": "integer"
},
"created_at": {
"type": "integer"
},
"updated_at": {
"type": "integer"
},
"row_version": {
"type": "integer"
},
"deleted_at": {
"type": [
"null",
"integer"
]
},
"purge_after": {
"type": [
"null",
"integer"
]
}
}
}
}
}
},
"default": {
"description": "HTTP error envelope. The status and error.code identify the failure.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}