
06-07-2004, 04:18 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
I am building a registration site using eNom's API. I am trying to get email forwarding to work.
The commands 'forwards' and 'purchase services' work great for setting the forwarding addresses, but they do not seem to enable forwarding.
Here is what I mean:
If you log into enom.com and view a domain's details, there is an 'email settings' section. Click 'Change' and select Email Forwarding. It now appears on the details page. How do I make that selection via the API? I've tried:
SetDomainSubServices
PurchaseServices
Forwarding
EnableServices
and I tried just adding the MXE record with SetHosts. I cannot get that setting to show up on eNom's site. Any suggestions?
Thanks in advance
Curt
email: wht at kaffer dot com
|

06-07-2004, 06:30 AM
|
|
Retired Moderator
|
|
Join Date: Jul 2002
Location: Kuwait
Posts: 10,572
|
|
Moved To Programming Discussion Forum
|

06-07-2004, 06:51 AM
|
|
Community Guide
|
|
Join Date: Jul 2003
Location: Kuwait
Posts: 5,100
|
|
Well EnableServices is not the right command. With it, the only service you can enable is IDProtect.
Forwarding is when you have enabled Mail Forwarding and want to add an address to be forwarded. Also, this is is the command that is used on eNom's website :
Quote:
|
On the e-mail settings page,the save changes button calls the Forwarding command.
|
From the API documentation
Make sure you are passing the correct type (and number of arguments). For every address n you would need a forwardto n. Also address n is the username, not the entire email address. The forwardto n is the full email address (with the @ and the domain).
Also, you didn't say what error you are getting, so I can't help you in any detail.
__________________
In order to understand recursion, one must first understand recursion.
If you feel like it, you can read my blog
Signal > Noise
|

06-07-2004, 06:55 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
I am not getting an error. As I said in my post, I am trying to enable mail forwarding in such a way that it shows up on the domain details page in enom. I cannot find a command that allows that. I HAVE found that the API documentation is not very complete, which is why I tried some commands that would not seem to fit.
So my question from my original post remains:
"If you log into enom.com and view a domain's details, there is an 'email settings' section. Click 'Change' and select Email Forwarding. It now appears on the details page. How do I make that selection via the API?"
|

06-07-2004, 07:01 AM
|
|
Community Guide
|
|
Join Date: Jul 2003
Location: Kuwait
Posts: 5,100
|
|
Maybe you didn't understand my response?
If you look at the API, on the page for Forwarding (page 64 on my PDF version), it clearly states that :
So it would seem that this is the command to use. Also, I would like to know what you found incomplete about the API documentation ... since I'm also using it in a few applications and haven't found it lacking.
Also, how are you checking for errors?
__________________
In order to understand recursion, one must first understand recursion.
If you feel like it, you can read my blog
Signal > Noise
|

06-07-2004, 07:01 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
Some more info:
the command getdomaininfo (which is almost useless unless you use XML) returns the settings for email forwarding ONLY if it is set as active.
get forwarding returns the settings for email forwarding as well, not matter the setting.
I have found that email forwarding will work with only the forwarding command, but I am trying to enable it in such a way that the getdomaininfo command returns the forwarding values.
There is a direct correlation between that and the enom domain details site. enabling email forwarding via the site results in the settings being returned by getdomaininfo. If it isn't set on the enom site, those values aren't returned. My question is, how do I set it via the API, not the site.
Hope that clarifies things.
|

06-07-2004, 07:04 AM
|
|
Community Guide
|
|
Join Date: Jul 2003
Location: Kuwait
Posts: 5,100
|
|
Well to set it, you can use SetDomainSubServices, then check the domaininfo.
__________________
In order to understand recursion, one must first understand recursion.
If you feel like it, you can read my blog
Signal > Noise
|

06-07-2004, 07:09 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
To answer your questions re: documentation/API being poor:
The documention and the API interface is quite inconsistent. The default setting is text, not XML, but that is not what is used in the examples and XML is the only way to get many values from the commands. This is not documented.
The use of upper and lower case is very inconsistent for both parameter names & values.
The names of identical parameters in different commands do no match.
getextendinfo command doesn't return the correct value for useDNS.
Why is there UseDNS, nsstatus and useourDNS when they are all supposed to server the same purpose (as far as I can tell--if they are different, the docs don't explain it)?
I guess the documentation isn't the main problem, but the implementation of the API in general.
|

06-07-2004, 07:17 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
Quote:
|
Well to set it, you can use SetDomainSubServices, then check the domaininfo.
|
That doesn't seem to work for me. I tried that early on and it failed. I just tried again. My enom response shows:
["emailforwarding"]=> string(1) "1"
but the information still doesn't show up in getdomaininfo or on the domain details site in enom.
Does it work for you?
|

06-07-2004, 08:16 AM
|
|
Community Guide
|
|
Join Date: Jul 2003
Location: Kuwait
Posts: 5,100
|
|
Before each example, there is a line like such :
Quote:
|
The following query sets the subservices of a domain and sends the response in XML format:
|
The API is not case-sensitive. I have always used all lowercase parameter names and values.
You'd have to give me an example of identical parameters in different commands not matching.
I don't know about useDNS not returning correct values. You'd have to show examples.
UseDNS means that the domain is using eNom's DNS Servers. Its a flag that is returned by some commands.
CheckNSStatus is if you want to see if a nameserver is available. You have to register a name server before you can use it (if you are using your own nameservers). Also, from time to time they may take nameservers offline for maintainance, etc.
useourDNS?? Where did you find this? I can't seem to locate it in my API.
As you can see, its not the same purpose 
__________________
In order to understand recursion, one must first understand recursion.
If you feel like it, you can read my blog
Signal > Noise
|

06-07-2004, 08:42 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
Quote:
The API is not case-sensitive. I have always used all lowercase parameter names and values.
You'd have to give me an example of identical parameters in different commands not matching.
I don't know about useDNS not returning correct values. You'd have to show examples.
UseDNS means that the domain is using eNom's DNS Servers. Its a flag that is returned by some commands.
CheckNSStatus is if you want to see if a nameserver is available. You have to register a name server before you can use it (if you are using your own nameservers). Also, from time to time they may take nameservers offline for maintainance, etc.
useourDNS?? Where did you find this? I can't seem to locate it in my API.
As you can see, its not the same purpose
|
First, we have let this go completely off topic. Second, I do not understand why you are being confrontational.
The RETURN values from the API have various cases.
The INPUT values are generally not case sensitive, though setdomainsubservices seems to be case sensitive for the ActivateForwarding parameter.
CheckNSStatus is a command, and one that I didn't mention, so I don't know why you are bringing it up.
you have not seen useourDNS because you are not familiar with the API beyond the poor documentation. Your ignorance helps me prove my point that it is poorly documented. If you look at the result of the command getextend info, you will find it is a returned value.
This is my final post regarding the poor enom API docs on this thread. If you would like to open a new thread I might contribute, but this is a waste of time right now and is completely unrelatted to my initial question.
|

06-07-2004, 09:26 AM
|
|
Community Guide
|
|
Join Date: Jul 2003
Location: Kuwait
Posts: 5,100
|
|
Quote:
|
you have not seen useourDNS because you are not familiar with the API beyond the poor documentation. Your ignorance helps me prove my point that it is poorly documented. If you look at the result of the command getextend info, you will find it is a returned value.
|
I think you might be looking at the old version of the API docs.
On the version that I have, dated Feb. 4, 2004, there is no useourdns return value for getextendinfo. Here is the complete listing of return values :
Quote:
RegistrarHold
Expiration
MaxExtension
CCAuthorized
Price
Balance
AvailableBalance
DefPeriod
AllowDNS
ShowPopups
AutoRenew
RegLock
AutoPakRenew
UseDNS
ResellerStatus
RenewalSetting
RenewalBCC
RenewalURLForward
RenewalEmailForward
HostNameX
AddressX
RecordTypeX
DefaultHostRecordOwn
AcceptTerms
URL
Command
ErrCount
Err(x)
Done
|
Also, I was not being confrontational, I was responding to your points as you listed them -- I apologize if you recieved my response in such a manner, it was not my intention.
Let me know if you still need my help. You my pm me your exact problem and I will see what I can do.
__________________
In order to understand recursion, one must first understand recursion.
If you feel like it, you can read my blog
Signal > Noise
|

06-07-2004, 09:32 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
My docs are dated 3/1/2004 and I think you missed my point.
The docs don't list that as a return parameter but it is returned by the API. I use that as a way to illustrate that the docs are not complete.
My exact problem is outlined in my previous posts.
Last edited by kaffer; 06-07-2004 at 09:39 AM.
|

06-07-2004, 10:13 AM
|
|
Newbie
|
|
Join Date: Jun 2004
Posts: 11
|
|
OK, so it is off topic.
I just ran into a perfect example of how bad the API docs are.
Look at GetHosts. The returned parameters, according to the docs, are:
RegistrarHold
Name
Type
MXPref
Address
Command
ErrCount
Err(x)
Done
Are those the params returned? NO!! Not if you use the DEFAULT response type of text. There is NO param returned called 'Name' The param that is returned is called 'HostName'
Compare this to GetRegHosts, which has HostName and RecordType. Ignore the fact that GetHosts is not documented correctly at all and ponder why they would have one command return Type and another return RecordType. Ugh.
|

06-07-2004, 03:00 PM
|
|
Retired Moderator
|
|
Join Date: Jul 2002
Location: Kuwait
Posts: 10,572
|
|
try emailing enom development team and explaining it, might help them to sort things out 
|
| Thread Tools |
Search this Thread |
|
|
|
| Display Modes |
Linear Mode
|
| Postbit Selector |
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
|
|
|
| Login: |
|
|
| Advertisement: |
|
|
| Web Hosting News: |
|
|
|