Forums

Forums -> API -> Setting Sub Domains with "set_dns" - Not Working
j_w_blaine_us posted:
0
When I try to set a sub domain using the set_dns command, it wipes out all my sub domain records.

This is the url I've been using to try this:
https://api.dynadot.com/api3.html?key=MY_KEY&command=set_dns&domain=MY_DOMAIN&main_record_type=a&main_record=IP_ADDRESS&sub_record_type0=a&sub_record0=SUB_IP_ADDRESS
ReplyQuote7/1/2013 11:34
teamdynadot posted:
We'll ask a tech to look into this tomorrow.  Thank you.
ReplyQuote7/7/2013 14:52
teamdynadot posted:
Thank you for your patience.  The issue should now be resolved.
ReplyQuote7/8/2013 17:13
Thanks. It sort of works now. When using "set_dns" to change a subdomain it'll now apply the changes to the subdomain you specify but will wipe out all the other DNS settings for that domain that you don't specify - including the MX records. I found this out the hard way when someone told me they got a returned email when they sent me an email to one of my domains that I have custom MX records set.

Can you get "set_dns" to apply changes only to the settings you specify without wiping out the rest of the DNS settings for that domain?

Thanks again!
ReplyQuote7/17/2013 07:56
teamdynadot posted:
Yes, certainly.  I've forwarded the request to our engineers.  Thank you for letting us know.
ReplyQuote7/18/2013 17:32
teamdynadot posted:
Thanks for your patience.  This is actually how the set_dns command is intended to function.  The system will read any subdomain records not included as blank and will set them as such.
ReplyQuote7/21/2013 12:11
But it's also wiping out the MX records. It seems a little extraneous to include all dns settings (including MX records) in one call to only change one part of the dns settings.
ReplyQuote7/23/2013 08:21
teamdynadot posted:
I understand your point, but MX records are part of the DNS page and so they are included in the 'set_dns' command.
ReplyQuote7/24/2013 14:24
I'm not sure if you're following the issue I'm trying to point out.

If I want to change just one parameter and don't specify all parameters, it will wipe out all the other parameters that I don't specify.

For example, lets say I have a dns that looks like this:

Domain Record | type | IP
mydomain.com | A | 0.0.0.1

Sub Record | type | IP
test1.mydomain.com | A | 0.0.0.2
test2.mydomain.com | A | 0.0.0.3

Now lets say I want to just change the IP address of sub record 0 (test1) to 0.0.0.4.

If I use the following query string, it'll wipe out all the other settings in the dns: (i've broken the url in multiple lines for readability)
https://api.dynadot.com/api3.html?
 key=MY_KEY&
 command=set_dns&
 domain=mydomain.com&
 sub_record0=0.0.0.4

In order for it to change what I want and keep all the other settings in the dns record, the query string has to have all the settings for the dns record that you want to keep.

Staying with the current example, I'd have to do this to get it to not wipe out the other settings:
https://api.dynadot.com/api3.html?key=MY_KEY&
 command=set_dns&
 domain=mydomain.com&
 main_record_type=a&
 main_record=0.0.0.1&
 subdomain0=test1&
 sub_record_type0=a&
 sub_record0=0.0.0.4&
 subdomain1=test2&
 sub_record_type1=a&
 sub_record1=0.0.0.3

This is unnecessarily extraneous, and makes it easy to accidentally wipe out your dns records.

It'd be ideal to only have to include the parameter you want to change in the query string, and not have to include all the other parameters that you don't want to change in the dns record.
ReplyQuote9/13/2013 13:34
teamdynadot posted:
Yes, we do understand your point, but this was an intentional decision.  We can throw it back up for discussion.  Do other users here feel the same way?
ReplyQuote9/15/2013 17:11
try
ReplyQuote9/27/2013 03:52