Esta é uma API de configuração dos domínios DNS que serão atualizados pelo serviço de SDWAN quando houver uma alteração de status de uma tabela de roteamento dentro de uma política de roteamento.
API de listagem de zonas DNS
Exemplo de requisição
GET /api/sdwan/dns/zones HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
response = sdk.sdwan.get_dns_zones()
print(response.payload)
const response = sdk.sdwan.getDnsZones();
console.log(response.payload);
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"dns_zones": [
{
"id": 1,
"enabled": true,
"domain": "foo.com.br",
"server": "192.168.121.33",
"ttl": 300,
"authenticated": true,
"created_at": "2018-12-13T12:20:02.932000+00:00",
"updated_at": "2018-12-13T12:20:02.932000+00:00",
},
{
"id": 2,
"enabled": false,
"domain": "bar.com.br",
"server": "192.168.127.10",
"ttl": 300,
"authenticated": false,
"created_at": "2018-12-13T14:15:02.932000+00:00",
"updated_at": "2018-12-13T14:15:02.932000+00:00",
},
]
}
[
DnsZone(
id=1,
enabled=True,
domain="foo.com.br",
server="192.168.121.33",
ttl=300,
authenticated=True,
created_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00')),
updated_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00')),
),
DnsZone(
id=2,
enabled=False,
domain="bar.com.br",
server="192.168.127.10",
ttl=300,
authenticated=False,
created_at=DateTime(2018, 12, 13, 14, 15, 2, tzinfo=Timezone('+00:00')),
updated_at=DateTime(2018, 12, 13, 14, 15, 2, tzinfo=Timezone('+00:00')),
),
]
[
{
id: 1,
enabled: true,
domain: "foo.com.br",
server: "192.168.121.33",
ttl: 300,
authenticated: true,
createdAt: "2018-12-13T12:20:02.000Z",
updatedAt: "2018-12-13T12:20:02.000Z"
},
{
id: 2,
enabled: false,
domain: "bar.com.br",
server: "192.168.127.10",
ttl: 300,
authenticated: false,
createdAt: "2018-12-13T14:15:02.000Z",
updatedAt: "2018-12-13T14:15:02.000Z"
}
];
API de consulta de uma zona DNS
id
Exemplo de requisição
GET /api/sdwan/dns/zones/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
response = sdk.sdwan.get_dns_zone(id=1)
print(response.payload)
const response = sdk.sdwan.getDnsZone({ id: 1 });
console.log(response.payload);
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": 1,
"enabled": true,
"domain": "foo.com.br",
"server": "192.168.121.33",
"ttl": 300,
"authenticated": true,
"created_at": "2018-12-13T12:20:02.932000+00:00",
"updated_at": "2018-12-13T12:20:02.932000+00:00"
}
DnsZone(
id=1,
enabled=True,
domain="foo.com.br",
server="192.168.121.33",
ttl=300,
authenticated=True,
created_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00')),
updated_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00'))
),
{
id: 1,
enabled: true,
domain: "foo.com.br",
server: "192.168.121.33",
ttl: 300,
authenticated: true,
createdAt: "2018-12-13T12:20:02.000Z",
updatedAt: "2018-12-13T12:20:02.000Z"
}
API de criação de uma zona DNS
Exemplo de requisição
POST /api/sdwan/dns/zones HTTP/1.1
Host: api.exemplo.com
Content-Type: application/json
Accept: application/json
Authorization: Bearer <Access-Token>
{
"enabled": true,
"domain": "foo.com.br",
"server": "192.168.121.33",
"ttl": 300,
"authenticated": true,
"auth_key": "iEUIf892js910iw9301aikfkasf99101kd",
"apply": true,
}
from itflex_sdk.sdwan.types import CreateDnsZoneRequest
request = CreateDnsZoneRequest(
enabled=True,
domain="foo.com.br",
server="192.168.121.33",
ttl=300,
authenticated=True,
auth_key="iEUIf892js910iw9301aikfkasf99101kd",
apply=True,
)
response = sdk.sdwan.create_dns_zone(request)
print(response.payload)
const dnsZone = sdk.sdwan.types.DnsZone();
dnsZone.enabled: true;
dnsZone.domain: "foo.com.br";
dnsZone.server: "192.168.121.33";
dnsZone.ttl: 300;
dnsZone.authenticated: true;
dnsZone.authKey: "iEUIf892js910iw9301aikfkasf99101kd";
dnsZone.apply: true;
const response = sdk.sdwan.createDnsZone(dnsZone);
console.log(response.payload);
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": 1,
"enabled": true,
"domain": "foo.com.br",
"server": "192.168.121.33",
"ttl": 300,
"authenticated": true,
"created_at": "2018-12-14T09:20:02.932000+00:00",
"updated_at": "2018-12-14T09:20:02.932000+00:00"
}
DnsZone(
id=1,
enabled=True,
domain="foo.com.br",
server="192.168.121.33",
ttl=300,
authenticated=True,
created_at=DateTime(2018, 12, 14, 9, 20, 2, tzinfo=Timezone('+00:00')),
updated_at=DateTime(2018, 12, 14, 9, 20, 2, tzinfo=Timezone('+00:00'))
)
{
id: 1,
enabled: true,
domain: "foo.com.br",
server: "192.168.121.33",
ttl: 300,
authenticated: true,
createdAt: "2018-12-14T09:20:02.000Z",
updatedAt: "2018-12-14T09:20:02.000Z"
}
API de edição de uma zona DNS
id
Exemplo de requisição
PUT /api/sdwan/dns/zones/3 HTTP/1.1
Host: api.exemplo.com
Content-Type: application/json
Accept: application/json
Authorization: Bearer <Access-Token>
{
"enabled": true,
"server": "192.168.121.33",
"ttl": 310,
"authenticated": true,
"auth_key": "iEUIf892js910iw9301aikfkasf9911234",
"apply": true,
}
from itflex_sdk.sdwan.types import UpdateDnsZoneRequest
request = UpdateDnsZoneRequest(
id=1,
enabled=True,
server="192.168.121.33",
ttl=310,
authenticated=True,
auth_key="iEUIf892js910iw9301aikfkasf9911234",
apply=True,
)
response = sdk.sdwan.update_dns_zone(request)
print(response.payload)
const dnsZone = {
id: 1,
enabled: true,
server: "192.168.121.33",
ttl: 310,
authenticated: true,
auth_key: "iEUIf892js910iw9301aikfkasf9911234",
apply: true,
}
const response = sdk.sdwan.updateDnsZone(dnsZone);
console.log(response.payload);
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": 1,
"enabled": true,
"domain": "foo.com.br",
"server": "192.168.121.33",
"ttl": 310,
"authenticated": true,
"created_at": "2018-12-14T09:20:02.932000+00:00",
"updated_at": "2018-12-14T10:30:02.932000+00:00"
}
DnsZone(
id=1,
enabled=True,
domain="foo.com.br",
server="192.168.121.33",
ttl=310,
authenticated=True,
created_at=DateTime(2018, 12, 14, 9, 20, 2, tzinfo=Timezone('+00:00')),
updated_at=DateTime(2018, 12, 14, 10, 30, 2, tzinfo=Timezone('+00:00'))
)
{
id: 1,
enabled: true,
domain: "foo.com.br",
server: "192.168.121.33",
ttl: 310,
authenticated: true,
createdAt: "2018-12-14T09:20:02.000Z",
updatedAt: "2018-12-14T10:30:02.000Z"
}
API de exclusão de uma zona DNS
id
Exemplo de requisição
DELETE /api/sdwan/dns/zones/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
response = sdk.sdwan.delete_dns_zone(id=1)
const response = sdk.sdwan.deleteDnsZone({ id: 1 });
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
API de aplicação de uma zona DNS existente
id
/apply
Exemplo de requisição
POST /api/sdwan/dns/zones/1/apply HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
response = sdk.sdwan.apply_dns_zone(id=1)
const response = sdk.sdwan.applyDnsZone({ id: 1 });
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
API de aplicação das zonas DNS existentes
Exemplo de requisição
POST /api/sdwan/dns/zones/apply HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
response = sdk.sdwan.apply_dns_zones()
const response = sdk.sdwan.applyDnsZones();
Exemplo de resposta
HTTP/1.1 200 OK
Content-Type: application/json
Parâmetros da url
Campo | Descrição |
---|---|
id | int Identificador da zona DNS. |
Requisição
Campo | Descrição |
---|---|
enabled | boolrequerido Flag se a config de zona está habilitada. |
domain | stringrequerido único Endereço do domínio que será atualizado. Não editável. |
server | stringrequerido Endereço do servidor de atualização da zona DNS. Pode ser um endereço de IP ou hostname. |
ttl | intrequerido Tempo de expiração do apontamento DNS dado em segundos. Valor padrão: 300 Valor mínimo: 1 Valor máximo: 86400 |
authenticated | boolrequerido Flag para dizer se atualização da zona DNS será autenticada. |
auth_key | string Chave de autenticação para atualização da zona DNS. Requerido se o valor do campo |
apply | boolean Flag que habilita a aplicação do provisionamento da zona DNS. |
Resposta
Campo | Descrição |
---|---|
id | int Identificador da zona DNS. |
enabled | bool Flag se a config de zona está habilitada. |
domain | string Endereço do domínio que será atualizado. |
server | string Endereço do servidor de atualização da zona DNS. |
ttl | int Tempo de expiração do apontamento DNS dado em segundos. |
authenticated | bool Flag para dizer se atualização da zona DNS será autenticada. |
auth_key | string Chave de autenticação para atualização da zona DNS. |
created_at | string Data de criação Formato: |
updated_at | string Data da última edição Formato: |