Page Menu
Home
GRNET
Search
Configure Global Search
Log In
Files
F401862
api.md
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Thu, Feb 20, 1:39 PM
Size
3 KB
Mime Type
text/plain
Expires
Sat, Feb 22, 1:39 PM (19 h, 10 m)
Engine
blob
Format
Raw Data
Handle
191841
Attached To
rWEBDNS WebDNS (edet4)
api.md
View Options
#
WebDNS
API
##
General
To
access
WebDNS
API
you
must
have
an
API
`
token
`
.
If
you
are
a
WebDNS
user
you
can
generate
your
token
by
clicking
on
the
`
API
Token
`
link
in
the
navigation
bar
.
*
All
API
request
should
be
routed
under
the
`
/
api
/
`
prefix
.
*
The
API
token
needs
to
be
present
as
a
`
?
token
`
URL
parameter
in
all
requests
.
*
When
sending
data
(
POST
/
PUT
)
make
sure
to
correctly
set
the
content
encoding
header
(
`
Content
-
Enconding
:
application
/
json
`
).
##
Debug
API
###
GET
`
/
ping
`
```
bash
curl
-
X
GET
https
:
//webdns/api/ping
{
"ok"
:
true
,
"response"
:
"pong"
}
```
###
GET
`
/
whoami
`
```
bash
curl
-
X
GET
https
:
//webdns/api/whoami
{
"ok"
:
true
,
"response"
:
{
"id"
:
1
,
"email"
:
"user@example.com"
}
}
```
##
Domains
API
###
GET
`
/
domains
`
```
bash
curl
-
X
GET
https
:
//webdns/api/domains
{
"ok"
:
true
,
"response"
:
[
{
"name"
:
"example.com"
,
"slave"
:
false
,
"group"
:
"group1"
}
]
}
```
##
Records
API
###
GET
`
/
domain
/<
name
>/
list
`
```
bash
curl
-
X
GET
https
:
//webdns/api/domain/example.com/list
{
"ok"
:
true
,
"response"
:
[
{
"name"
:
"example.com"
,
"content"
:
"ns1.example.com webdns@example.com 2016050301 10800 3600 604800 3600"
,
"type"
:
"SOA"
,
"ttl"
:
null
,
"prio"
:
null
,
"disabled"
:
false
},
{
"name"
:
"example.com"
,
"content"
:
"ns1.example.com"
,
"type"
:
"NS"
,
"ttl"
:
null
,
"prio"
:
null
,
"disabled"
:
false
},
{
"name"
:
"www.example.com"
,
"content"
:
"192.0.0.1"
,
"type"
:
"A"
,
"ttl"
:
null
,
"prio"
:
null
,
"disabled"
:
false
},
{
"name"
:
"www.example.com"
,
"content"
:
"2001:db8::1"
,
"type"
:
"AAAA"
,
"ttl"
:
null
,
"prio"
:
null
,
"disabled"
:
false
}
```
###
POST
`
/
domain
/<
name
>/
bulk
`
The
`
bulk
`
API
allows
multiple
operations
to
be
perfomed
as
a
single
transactional
operation
.
There
a
three
supported
operations
and
they
are
applied
in
the
following
order
:
*
`
deletes
`
*
`
upserts
`
*
`
additions
`
`
additions
`
is
an
array
of
hashes
.
Each
hash
represents
a
record
to
be
added
.
`
name
`
,
`
type
`
,
`
content
`
and
`
prio
`
fields
are
supported
.
`
deletes
`
is
an
array
of
hashes
.
Each
hash
represents
a
single
record
to
be
deleted
.
The
fields
musts
match
**
exactly
one
**
record
.
`
upserts
`
is
an
array
of
hashes
.
Each
hash
represents
a
records
to
be
added
,
just
like
an
`
addition
`
.
What
'
s
different
about
`
upserts
`
is
that
,
before
adding
the
records
,
all
records
matching
the
hash
'
s
`
name
`
and
`
type
`
are
deleted
.
####
Fields
*
`
name
`
:
Record
name
.
Should
be
expanded
to
contain
the
full
domain
name
.
*
`
type
`
:
Capitilized
record
type
(
`
'A'
`
,
`'
AAAA
'`
,
etc
)
*
`
prio
`
:
Record
priority
,
if
supported
.
*
`
content
`
:
Record
content
.
When
this
is
a
CNANE
**
do
not
**
include
the
trailing
dot
.
```
bash
curl
-
X
POST
https
:
//webdns/api/domain/example.com/bulk -H 'Content-Type: application/json' -d '{
"upserts"
:
[
{
"name"
:
"mail.example.com"
,
"type"
:
"A"
,
"content"
:
"1.2.3.4"
}
],
"additions"
:
[
{
"name"
:
"www.example.com"
,
"type"
:
"A"
,
"content"
:
"1.2.3.4"
}
]
}
'
```
Event Timeline
Log In to Comment