Documentación de la API El alojamiento web accesible para todos Visitar LWS

Añadir un registro a una zona DNS

POST https://api.lws.net/v1/domain/{domain}/zdns

operationIdpostDomainZdns

Añade un nuevo registro a la zona DNS del dominio indicado. La propagación del registro puede tardar hasta unas horas.

Parámetros de ruta

domain string obligatorio

Nombre de dominio para el que añadir el registro DNS

Cuerpo de la solicitud

  • type string

    Tipo de campo a añadir a la zona DNS. Debe ser A, AAAA, CNAME, ANAME, MX, NS, TXT, SRV, SPF o CAA

    Ejemplo: A

    obligatorio
  • name string

    Nombre del registro a añadir a la zona DNS. Su contenido depende del tipo de registro a añadir. Por ejemplo, @ o mail para los registros A, www para los registros CNAME, @ para NS, etc.

    Ejemplo: @

    obligatorio
  • value string

    Valor del campo a añadir a la zona DNS. Puede ser una dirección IP, un nombre de dominio, un DNS, ...

    Ejemplo: 192.0.2.1

    obligatorio
  • ttl integer

    Tiempo de vida (TTL) del campo a añadir a la zona DNS. Debe ser 86400, 43200, 21600, 7200, 3600, 1800 o 900

    Ejemplo: 86400

    obligatorio
Ejemplo de solicitud
{
  "type": "A",
  "name": "@",
  "value": "192.0.2.1",
  "ttl": 86400
}

Respuestas

200

Registro DNS añadido correctamente

{
  "code": 200,
  "info": "Added a new line in the DNS Zone",
  "data": {
    "id": "568470",
    "type": "AAAA",
    "name": "@",
    "value": "2001:0db8:85a3:0000:0000:8a2e:0370:7334",
    "ttl": 86400
  }
}
Campos de la respuesta 8 Extiende ApiEnvelope
  • code integer

    Código de estado/error a nivel de aplicación (no siempre igual al código de estado HTTP)

    Ejemplo: 200

  • info string

    Mensaje legible que describe el resultado de la solicitud

    Ejemplo: Added a new line in the DNS Zone

  • data object
  • id integer

    ID del registro. Se utiliza para funciones específicas del registro como DELETE

    Ejemplo: 568470

  • type string

    Tipo de campo a añadir a la zona DNS. Debe ser A, AAAA, CNAME, ANAME, MX, NS, TXT, SRV, SPF o CAA

    Ejemplo: AAAA

  • name string

    Nombre del campo a añadir a la zona DNS. Su contenido depende del tipo de registro a añadir. Por ejemplo, @ o mail para registros A, www para registros CNAME, @ para NS, etc...

    Ejemplo: @

  • value string

    Valor del campo a añadir a la zona DNS. Puede ser una dirección IP, un nombre de dominio, un DNS, ...

    Ejemplo: 2001:0db8:85a3:0000:0000:8a2e:0370:7334

  • ttl integer

    Tiempo de vida (TTL) del campo a añadir a la zona DNS. Debe ser 86400, 43200, 21600, 7200, 3600, 1800 o 900

    Ejemplo: 86400

314

Dominio no encontrado en la cuenta

314 no es un código de estado HTTP registrado. Es específico de esta API.

{
  "code": 314,
  "info": "Provided domain has not been found on your account. You must own this domain to manage it."
}
Campos de la respuesta 2 Extiende ApiEnvelope
  • code integer

    Código de estado/error a nivel de aplicación (no siempre igual al código de estado HTTP)

    Ejemplo: 314

  • info string

    Mensaje legible que describe el resultado de la solicitud

    Ejemplo: Provided domain has not been found on your account. You must own this domain to manage it.

400

Entrada no válida; puede tratarse de campos faltantes, campos no válidos, ... Consulte los datos proporcionados para más detalles.

{
  "code": 400,
  "info": "Invalid input",
  "data": []
}
Campos de la respuesta 3 Extiende ApiEnvelope
  • code integer

    Código de estado/error a nivel de aplicación (no siempre igual al código de estado HTTP)

    Ejemplo: 400

  • info string

    Mensaje legible que describe el resultado de la solicitud

    Ejemplo: Invalid input

  • data object

    Detalles de los errores de validación

500

Error interno del servidor

{
  "code": 500,
  "info": "Internal Server Error",
  "data": "string"
}
Campos de la respuesta 3 Extiende ApiEnvelope
  • code integer

    Código de estado/error a nivel de aplicación (no siempre igual al código de estado HTTP)

    Ejemplo: 500

  • info string

    Mensaje legible que describe el resultado de la solicitud

    Ejemplo: Internal Server Error

  • data string

    Mensaje de error

502

Puerta de enlace incorrecta

{
  "code": 502,
  "info": "Invalid response from upstream server",
  "data": []
}
Campos de la respuesta 3 Extiende ApiEnvelope
  • code integer

    Código de estado/error a nivel de aplicación (no siempre igual al código de estado HTTP)

    Ejemplo: 502

  • info string

    Mensaje legible que describe el resultado de la solicitud

    Ejemplo: Invalid response from upstream server

  • data object

    Respuesta no válida devuelta por el servidor

401

No autorizado - Faltan las cabeceras de autenticación

{
  "code": 401,
  "info": "Unauthorized access to the API. Please specify X-Auth-Pass and X-Auth-Login to proceed."
}
Campos de la respuesta 2
  • code integer

    Ejemplo: 401

  • info string

    Ejemplo: Unauthorized access to the API. Please specify X-Auth-Pass and X-Auth-Login to proceed.

429

Límite de solicitudes excedido

{
  "code": 429,
  "info": "Rate limit exceeded. Please try again later."
}
Campos de la respuesta 2
  • code integer

    Ejemplo: 429

  • info string

    Ejemplo: Rate limit exceeded. Please try again later.

Mostrar los ejemplos de código y la consola de pruebas
POST /domain/{domain}/zdns
LWS_AUTH_LOGIN='…'LWS_AUTH_PASS='…'curl -X POST \  "https://api.lws.net/v1/domain/{domain}/zdns" \  -H "X-Auth-Login: $LWS_AUTH_LOGIN" \  -H "X-Auth-Pass: $LWS_AUTH_PASS" \  -H "Content-Type: application/json" \  -d '{"type":"A","name":"@","value":"192.0.2.1","ttl":86400}'
$lwsAuthLogin = '…';$lwsAuthPass = '…';$ch = curl_init("https://api.lws.net/v1/domain/{domain}/zdns");curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_HTTPHEADER, [    "X-Auth-Login: " . $lwsAuthLogin,    "X-Auth-Pass: " . $lwsAuthPass,    "Content-Type: application/json",]);curl_setopt($ch, CURLOPT_POSTFIELDS, '{"type":"A","name":"@","value":"192.0.2.1","ttl":86400}');$res = json_decode(curl_exec($ch), true);
import requestsLWS_AUTH_LOGIN = "…"LWS_AUTH_PASS = "…"res = requests.post(    "https://api.lws.net/v1/domain/{domain}/zdns",    headers={        "X-Auth-Login": LWS_AUTH_LOGIN,        "X-Auth-Pass": LWS_AUTH_PASS,    },    json={"type": "A", "name": "@", "value": "192.0.2.1", "ttl": 86400},)print(res.json())
const LWS_AUTH_LOGIN = "…";const LWS_AUTH_PASS = "…";const res = await fetch("https://api.lws.net/v1/domain/{domain}/zdns", {  method: "POST",  headers: {    "X-Auth-Login": LWS_AUTH_LOGIN,    "X-Auth-Pass": LWS_AUTH_PASS,    "Content-Type": "application/json",  },  body: JSON.stringify({"type":"A","name":"@","value":"192.0.2.1","ttl":86400}),});const data = await res.json();
lwsAuthLogin := "…"lwsAuthPass := "…"body := strings.NewReader(`{"type":"A","name":"@","value":"192.0.2.1","ttl":86400}`)req, _ := http.NewRequest("POST",    "https://api.lws.net/v1/domain/{domain}/zdns", body)req.Header.Set("X-Auth-Login", lwsAuthLogin)req.Header.Set("X-Auth-Pass", lwsAuthPass)req.Header.Set("Content-Type", "application/json")resp, err := http.DefaultClient.Do(req)