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

Actualizar un registro de la zona DNS

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

operationIdputDomainZdns

Actualiza un registro existente de la zona DNS para el dominio especificado. El ID del registro puede encontrarse realizando una solicitud GET sobre la zona DNS del dominio. Si el registro no existe, se añadirá en su lugar

Parámetros de ruta

domain string obligatorio

Nombre de dominio cuyo registro DNS se desea actualizar

Ejemplo: example.fr

Cuerpo de la solicitud

  • id integer

    ID del registro a actualizar

    Ejemplo: 234851

    obligatorio
  • type string

    Tipo de registro DNS

    Ejemplo: A

    obligatorio
  • name string

    Nombre del registro

    Ejemplo: @

    obligatorio
  • value string

    Valor del registro

    Ejemplo: 192.0.2.1

    obligatorio
  • ttl integer

    Tiempo de vida (TTL) en segundos

    Ejemplo: 86400

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

Respuestas

200

Registro DNS actualizado correctamente

{
  "code": 200,
  "info": "Updated record",
  "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: Updated record

  • 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

{
  "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
PUT /domain/{domain}/zdns
LWS_AUTH_LOGIN='…'LWS_AUTH_PASS='…'curl -X PUT \  "https://api.lws.net/v1/domain/example.fr/zdns" \  -H "X-Auth-Login: $LWS_AUTH_LOGIN" \  -H "X-Auth-Pass: $LWS_AUTH_PASS" \  -H "Content-Type: application/json" \  -d '{"id":234851,"type":"A","name":"@","value":"192.0.2.1","ttl":86400}'
$lwsAuthLogin = '…';$lwsAuthPass = '…';$ch = curl_init("https://api.lws.net/v1/domain/example.fr/zdns");curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");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, '{"id":234851,"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.put(    "https://api.lws.net/v1/domain/example.fr/zdns",    headers={        "X-Auth-Login": LWS_AUTH_LOGIN,        "X-Auth-Pass": LWS_AUTH_PASS,    },    json={"id": 234851, "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/example.fr/zdns", {  method: "PUT",  headers: {    "X-Auth-Login": LWS_AUTH_LOGIN,    "X-Auth-Pass": LWS_AUTH_PASS,    "Content-Type": "application/json",  },  body: JSON.stringify({"id":234851,"type":"A","name":"@","value":"192.0.2.1","ttl":86400}),});const data = await res.json();
lwsAuthLogin := "…"lwsAuthPass := "…"body := strings.NewReader(`{"id":234851,"type":"A","name":"@","value":"192.0.2.1","ttl":86400}`)req, _ := http.NewRequest("PUT",    "https://api.lws.net/v1/domain/example.fr/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)