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