# 发布草稿

调试工具

接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南

接口英文名:freepublish_submit

本接口用于将图文草稿提交发布。

开发者需要先将图文素材以草稿的形式保存,选择要发布的草稿 media_id 进行发布。

# 1. 调用方式

# HTTPS 调用

POST https://api.weixin.qq.com/cgi-bin/freepublish/submit?access_token=ACCESS_TOKEN

# 云调用

  • 本接口不支持云调用

# 第三方调用

  • 本接口支持第三方平台代商家调用。

  • 该接口所属的权限集 id 为:7

  • 服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。

# 2. 请求参数

# 查询参数 Query String parameters

参数名类型必填说明
access_tokenstring接口调用凭证,可使用 access_tokenauthorizer_access_token

# 请求体 Request Payload

参数名类型必填示例说明
media_idstringMEDIA_ID要发布的草稿的media_id

# 3. 返回参数

# 返回体 Response Payload

参数名类型说明
errcodenumber错误码
errmsgstring错误信息
publish_idstring发布任务的id
msg_data_idstring消息的数据ID

# 4. 注意事项

请注意:正常情况下调用成功时,errcode将为0,此时只意味着发布任务提交成功,并不意味着此时发布已经完成,所以,仍有可能在后续的发布过程中出现异常情况导致发布失败,如原创声明失败、平台审核不通过等。

# 发布结果的事件推送

由于发布任务提交后,发布任务可能在一定时间后才完成,因此,发布接口调用时,仅会给出发布任务是否提交成功的提示,若发布任务提交成功,则在发布任务结束时,会向开发者在公众平台填写的开发者URL(callback URL)推送事件。

推送的XML结构成功时示例:

<xml> 
  <ToUserName><![CDATA[gh_4d00ed8d6399]]></ToUserName>  
  <FromUserName><![CDATA[oV5CrjpxgaGXNHIQigzNlgLTnwic]]></FromUserName>  
  <CreateTime>1481013459</CreateTime>
  <MsgType><![CDATA[event]]></MsgType>
  <Event><![CDATA[PUBLISHJOBFINISH]]></Event>
  <PublishEventInfo>
    <publish_id>2247503051</publish_id>
    <publish_status>0</publish_status>
    <article_id><![CDATA[b5O2OUs25HBxRceL7hfReg-U9QGeq9zQjiDvy
WP4Hq4]]></article_id>
    <article_detail>
      <count>1</count>
      <item>
        <idx>1</idx>
        <article_url><![CDATA[ARTICLE_URL]]></article_url>
      </item>
    </article_detail>
  </PublishEventInfo>
</xml>

原创审核不通过时示例:

<xml> 
  <ToUserName><![CDATA[gh_4d00ed8d6399]]></ToUserName>  
  <FromUserName><![CDATA[oV5CrjpxgaGXNHIQigzNlgLTnwic]]></FromUserName>  
  <CreateTime>1481013459</CreateTime>
  <MsgType><![CDATA[event]]></MsgType>
  <Event><![CDATA[PUBLISHJOBFINISH]]></Event>
  <PublishEventInfo>
    <publish_id>2247503051</publish_id>
    <publish_status>2</publish_status>
    <fail_idx>1</fail_idx>
    <fail_idx>2</fail_idx>
  </PublishEventInfo>
</xml>

返回参数说明

参数 说明
ToUserName 公众号的ghid
FromUserName 公众号群发助手的openid,为mphelper
CreateTime 创建时间的时间戳
MsgType 消息类型,此处为event
Event 事件信息,此处为PUBLISHJOBFINISH
publish_id 发布任务id
publish_status 发布状态,0:成功, 1:发布中,2:原创失败, 3: 常规失败, 4:平台审核不通过, 5:成功后用户删除所有文章, 6: 成功后系统封禁所有文章
article_id 当发布状态为0时(即成功)时,返回图文的 article_id,可用于“客服消息”场景
count 当发布状态为0时(即成功)时,返回文章数量
idx 当发布状态为0时(即成功)时,返回文章对应的编号
article_url 当发布状态为0时(即成功)时,返回图文的永久链接
fail_idx 当发布状态为2或4时,返回不通过的文章编号,第一篇为 1;其他发布状态则为空

# 5. 代码示例

请求示例

{
  "media_id": "MEDIA_ID"
}

返回示例

{
  "errcode": 0,
  "errmsg": "ok",
  "publish_id": "100000001"
}

# 6. 错误码

以下是本接口的错误码列表,其他错误码可参考 通用错误码

错误码错误描述解决方案
0ok成功
48001api unauthorizedapi 功能未授权,请确认公众号/服务号已获得该接口,可以在「公众平台官网 - 开发者中心页」中查看接口权限
53503该草稿未通过发布检查检查下草稿信息
53504需前往公众平台官网使用草稿需前往公众平台官网使用草稿
53505请手动保存成功后再发表请前往公众平台官网手动保存成功后再发表

# 7. 适用范围

本接口在不同账号类型下的可调用情况:
公众号服务号
  • ✔:该账号可调用此接口
  • 其他未明确声明的账号类型,如无特殊说明,均不可调用此接口;