Have you doing this without specifying the 'masters' attribute at all?
Native zones don't support masters, so it's possible that supplying
the attribute, even with an empty list, is causing a failure.

On Sun, Jun 14, 2020 at 9:29 AM Tomasz Chmielewski via Pdns-users
<pdns-users@mailman.powerdns.com> wrote:
>
> Using 4.2.1, I'm getting "HTTP/1.1 422 Unprocessable Entity" when trying
> to create a zone as described on
> https://doc.powerdns.com/md/httpapi/README/
> What am I doing wrong?
>
> '{"name":"example.org.", "kind": "Native", "masters": [], "nameservers":
> ["ns1.example.org.", "ns2.example.org."]}' validates fine with jq:
>
> # echo '{"name":"example.org.", "kind": "Native", "masters": [],
> "nameservers": ["ns1.example.org.", "ns2.example.org."]}' | jq
> {
>    "name": "example.org.",
>    "kind": "Native",
>    "masters": [],
>    "nameservers": [
>      "ns1.example.org.",
>      "ns2.example.org."
>    ]
> }
>
>
>
> # curl -X POST --data '{"name":"example.org.", "kind": "Native",
> "masters": [], "nameservers": ["ns1.example.org.", "ns2.example.org."]}'
> -v -H 'X-API-Key: my-key'
> http://10.58.150.164:8081/api/v1/servers/localhost/zones
> Note: Unnecessary use of -X or --request, POST is already inferred.
> *   Trying 10.58.150.164:8081...
> * TCP_NODELAY set
> * Connected to 10.58.150.164 (10.58.150.164) port 8081 (#0)
> > POST /api/v1/servers/localhost/zones HTTP/1.1
> > Host: 10.58.150.164:8081
> > User-Agent: curl/7.68.0
> > Accept: */*
> > X-API-Key: my-key
> > Content-Length: 113
> > Content-Type: application/x-www-form-urlencoded
> >
> * upload completely sent off: 113 out of 113 bytes
> * Mark bundle as not supporting multiuse
> < HTTP/1.1 422 Unprocessable Entity
> < Access-Control-Allow-Origin: *
> < Connection: close
> < Content-Length: 50
> < Content-Security-Policy: default-src 'self'; style-src 'self'
> 'unsafe-inline'
> < Content-Type: application/json
> < Server: PowerDNS/4.2.1
> < X-Content-Type-Options: nosniff
> < X-Frame-Options: deny
> < X-Permitted-Cross-Domain-Policies: none
> < X-Xss-Protection: 1; mode=block
> <
> * Closing connection 0
> {"error": "Creating domain 'example.org.' failed"}
>
>
> This logs:
>
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8 Request details:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8  POST params:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   {"name":"example.org.", "kind":
> "Native", "masters": [], "nameservers": ["ns1.example.org.",
> "ns2.example.org."]}:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8  Headers:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   accept: */*
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   content-length: 113
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   content-type:
> application/x-www-form-urlencoded
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   host: 10.58.150.164:8081
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   user-agent: curl/7.68.0
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   x-api-key: my-key
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8  Full body:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   {"name":"example.org.", "kind":
> "Native", "masters": [], "nameservers": ["ns1.example.org.",
> "ns2.example.org."]}
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8 Handling request
> "/api/v1/servers/localhost/zones"
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8 Result for
> "/api/v1/servers/localhost/zones": 422, body length: 50
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8 Response details:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8  Headers:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   access-control-allow-origin: *
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   Connection: close
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   Content-Length: 50
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   Content-Security-Policy:
> default-src 'self'; style-src 'self' 'unsafe-inline'
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   Content-Type: application/json
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   Server: PowerDNS/4.2.1
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   X-Content-Type-Options: nosniff
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   X-Frame-Options: deny
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8
> X-Permitted-Cross-Domain-Policies: none
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   X-XSS-Protection: 1; mode=block
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8  Full body:
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8   {"error": "Creating domain
> 'example.org.' failed"}
> Jun 14 13:19:59 dns1 pdns_server[25635]: [webserver]
> a5b403b9-83a9-45b9-a638-0f2b4ce1f4d8 10.58.150.164:39182 "POST
> /api/v1/servers/localhost/zones HTTP/1.1" 422 423
>
>
>
> Tomasz
> _______________________________________________
> Pdns-users mailing list
> Pdns-users@mailman.powerdns.com
> https://mailman.powerdns.com/mailman/listinfo/pdns-users
_______________________________________________
Pdns-users mailing list
Pdns-users@mailman.powerdns.com
https://mailman.powerdns.com/mailman/listinfo/pdns-users

Reply via email to