问:这个API文档,我有点看不懂,既然是API接口,没有 PHP,demo,也没有案例,我怎么调用模板?还有我的是触发邮件,没法调用模板,我怎么使用?,请问咱这边的EDM没办法使用API吗?那这个EDM的API不是形同虚设吗?
问:怎么一直没有人给我答复?你们的EDM营销不是支持API接口调用吗,那里面的只是一个开发文档而已,只有一个提交接口,没有调用接口啊,没有PHP的demo,也没有例子或者案例,我怎么调用模板,、能给处理一下吗?
答:您好,一般情况下您只需要调用 API发信 接口 按照说明组装数据get方式提交即可 参数中的模板ID 在您模板管理列表 中有显示模板ID传入需要发送的模板ID即可,调用的模板必须为审核通过后才可发送, /api/v1/gettmp 接口也返回您所有模板信息也可以查看,非常感谢您长期对我司的支持!
问:有没有例子,给个组装好的get例子,你们这个API接口文档我有点看不懂啊,组装好的get例子发给我一下,我的邮箱 @qq.com
答:您好,https://edm.myhost.net/help/detail/10/14.html 说明中的参数就是组装好的实列。
这是必须的参数
sig 算法: md5(email md5(key) otime Action) 32位MD5,其中email表示EMD登陆邮箱,key表示在EDM管理中心设置的密匙,otime为时间戳 您程序只需要实现sig算法然后拼接get方法提交即可。比如您要创建一封邮件 url 为 https://api.myhost.net/api/v1/createoncejob您需要的参数 email=(EDM账号)&otime=(时间戳)&sig=(计算的sig)&tmpid=(模板ID)&sendemail=(收信地址)&fromdomain=(发信域名)&smtpuser=(SMTP用户)&repy=(回信地址)&fromcompany=(显示昵称)
组装后如下:
https://api.myhost.net/api/v1/createoncejob?email=&otime=&sig=98e9561d9db414a1eaa323cdfa1c91f2&tmpid=12&sendemail=&fromdomain=myhost.cn&smtpuser=noreply2&repy=&fromcompany=EDM
php测试代码
<?php$apiurl = \”https://api.myhost.net/api/v1/\”;$edmuser = \”\”;$key = \”dasf2das\”;$action = \”createoncejob\”;$otime = time();$sig = md5($edmuser.md5($key).$otime.$action);$tmpid = 12;$sendemail = \”@qq.com\”;$fromdomain = \”myhost.net\”;$smtpuser = \”xxxx\”;$repy= \”\”;$fromcompany = \”hhhh\”;
$geturl = $apiurl.$action.\”?email=\”.$edmuser.\”&otime=\”.$otime.\”&sig=\”.$sig.\”&tmpid=\”.$tmpid.\”&sendemail=\”.$sendemail.\”&fromdomain=\”.$fromdomain.\”&smtpuser=\”.$smtpuser.\”&repy=\”.$repy.\”&fromcompany=\”.$fromcompany;
$ch = curl_init();$timeout = 5;curl_setopt ($ch, CURLOPT_URL, $geturl);curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);$file_contents = curl_exec($ch);curl_close($ch);
echo $file_contents;?>
问: 麻烦给个附件,给标注一下可以吗,我是新手,第一次使用你们的EDM,API接口,和别人的不一样,,都哪里需要修改成我的,例如我的模板ID 要发送到的邮箱地址,我的发信地址
答:您好,
<?php$apiurl = \”https://api.myhost.net/api/v1/\”;$edmuser = \”\”; #EDM登陆账号$key = \”dasf2das\”; #API密钥,在EDM管理–系统管理–其他设置 API配置中的KEY$action = \”createoncejob\”; #API动作,check 测试AIP;getgrpid 获取组ID;gettmp 获取模板ID;createoncejob 创建发信任务$otime = time(); #获取当前时间戳$sig = md5($edmuser.md5($key).$otime.$action); #组装sig$tmpid = 12; #模板ID,可在模板管理中查看$sendemail = \”@qq.com\”; #收信邮箱地址$fromdomain = \”myhost.net\”;#发信域名$smtpuser = \”xxxx\”; #发信smtp 不加域名,如(notice)$repy= \”\”; #回信地址(收件方回复邮件的接收地址)$fromcompany = \”hhhh\”; #发信人昵称
$geturl = $apiurl.$action.\”?email=\”.$edmuser.\”&otime=\”.$otime.\”&sig=\”.$sig.\”&tmpid=\”.$tmpid.\”&sendemail=\”.$sendemail.\”&fromdomain=\”.$fromdomain.\”&smtpuser=\”.$smtpuser.\”&repy=\”.$repy.\”&fromcompany=\”.$fromcompany;
$ch = curl_init();$timeout = 5;curl_setopt ($ch, CURLOPT_URL, $geturl);curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);$file_contents = curl_exec($ch);curl_close($ch);echo $file_contents;
?>
问:smtpuser(必填)
发信的SMTP用户 这个发信的SMTP用户填什么?
问:还有在哪获取时间戳,新手请理解
答:您好,smtpuser 是您自定义的(为英文、数字与下划线或中划线,需英文开头,不超过25个字符) php 时间戳使用 time() 函数获取,非常感谢您长期对我司的支持!
问:把PHP文件修改好了 上传到服务器 直接浏览这个文件就可以了是吧?
答:您好,直接访问即可,可以打印出接口返回信息,非常感谢您长期对我司的支持!
问: 你看我提交的 老是提示时间戳超时怎么弄
答:您好,请检查您的服务器时间,同步为北京时间再试,程序服务器时间与API接口时间不能相差10秒,非常感谢您长期对我司的支持!
问:这个时间戳怎么改啊,老是提示
下面是我组装的地址,直接浏览就提示时间戳超时
https://api.myhost.net/api/v1/createoncejob?email=edm@amtyy.cn&otime=&sig=98e9561d9db414a1eaa323cdfa1c91f2&tmpid=1044&sendemail=@qq.com&fromdomain=wxylgzsa.xyz&smtpuser=noreply2&repy=@qq.com&fromcompany=EDM
问:我没上传服务器,我是直接组装的get 你看下我组装的,时间戳对不对
问:可以给个详细的使用方法介绍吗 谢谢了
问:不是7*24小时在线吗?大哥,,,这个直接组装的 浏览老是出现 时间戳超时啊 怎么解决啊
答:您好,不要把数据生成好后再去访问,时间戳需要和时间同步不然超时会无法提交,您使用提供给您的php代码直接测试可以在最后输出您当前时间 echo $otime;,非常感谢您长期对我司的支持!
问:https://api.myhost.net/api/v1/createoncejob?email=edm@amtyy.cn&otime=&sig=98e9561d9db414a1eaa323cdfa1c91f2&tmpid=1044&sendemail=@qq.com&fromdomain=wxylgzsa.xyz&smtpuser=noreply2&repy=@qq.com&fromcompany=EDM
edm@amtyy.cn 这是我的EDM登陆账号wxylgzsa.xyz 这是发信域名1044 这是模板ID@qq.com 这是收信地址@qq.com 这是回信地址4b8rdUaLw 这是KEY
现在怎么测试? 可以给我组装一下吗
问:问题是PHP代码 ,我把这个文件放到哪里,要怎么运行测试,你都没说啊,
比如把这个文件,放到服务器里,然后输入我的域名 这个文件这样运行?
答:您好,是的 放到你的服务器里,然后输入你的域名 这个文件这样运行