抖音开放平台Logo
开发者文档
控制台
  • 接入前准备
  • 通用接口
  • 代运营
  • 订单查询
  • 团购核销
  • 三方码
  • 团购退款
  • 团购对账
  • 商品发布
  • 门店相关接口
  • 商品查询
  • 查询商品品类
  • 资质搜索
  • 商品审核结果同步
  • 查询商品草稿数据列表
  • 查询商品线上数据列表
  • 查询商品线上数据
  • 查询商品模板接口
  • 查询商品草稿数据
  • 会员接入
  • 招商入驻
  • 组合券包
  • KA核销对账
  • 餐饮
  • 大交通
  • 酒旅
  • 综合
  • 历史版本文档(不推荐)
  • 查询商品模板接口

    收藏
    我的收藏
    用于创建商品前查询商品模板信息。

    接口信息

    接口说明

    查询商品模板,创建商品时的属性列表需与该接口保持一致,否则无法识别。根据商品类目及商品类型获取商品模版信息。

    基本信息

    名称描述
    HTTP URL
    https://open.douyin.com/goodlife/v1/goods/template/get/
    HTTP Method
    GET
    Scope
    life.capacity.goods.query
    权限要求
    - 需要申请权限 ,路径:抖音开放平台-开发者平台/服务商平台>控制台>应用详情>解决方案 - 需要商家授权,路径:抖音来客>店铺管理>服务应用授权

    请求参数

    请求头
    access-token必填String
    示例:clt.943da17996fb5cebfbc70c044c3fc25a57T54DcjT6HNKGqnUdxzy1KcxFnZ
    content-type必填String
    固定值"application/json"
    Rpc-Transit-Life-AccountString

    来客商户根账户ID

    Query展开全部子属性
    category_id必填String
    三级品类id
    product_type必填Enum
    商品类型
    展开子属性
    open_biz_typeEnum
    开平业务类型
    展开子属性
    product_sub_typeEnum
    商品子类型
    展开子属性
    请求示例
    curl --location --request GET 'https://open.douyin.com/goodlife/v1/goods/template/get/?category_id=5xK7Zg3GAf&template_type=1&product_sub_type=1&open_biz_type=1&Base={"LogID":"6Xn8rEPbrt","Caller":"HRA6hEU4Oo","Addr":"9L6f9w6SwW","Client":"sBLF1yEeSX","TrafficEnv":{"Open":false,"Env":"dT79lxkRRd"},"Extra":{"w1s4Thxld1":"19wCCg8YXt"}}&product_type=1' \ --header 'content-type: application/json' \ --header 'access-token: 0801121846735352506a356a6' \

    响应参数

    Body展开全部子属性
    BaseResp必填Struct
    展开子属性
    extra必填Struct
    扩展信息
    展开子属性
    dataStruct
    响应信息
    展开子属性
    响应示例
    正常响应示例异常响应示例
    { "data": { "spu_attrs": [ { "is_multi": false, "is_required": false, "value_type": "MbWZYwMUwL", "value_demo": "ZcOxlfFsnJ", "desc": "mq8hzCP22h", "key": "DMY5wmSMaL", "name": "wnSksfJFBE" } ], "calendar_attrs": [ { "key": "gebgglbcjs", "name": "nIwQu1xLuu", "is_multi": false, "is_required": false, "value_type": "6RVLCIxG83", "value_demo": "Nc0mpfJd4U", "desc": "40xd30DSME" } ], "error_code": 0, "description": "", "product_attrs": [ { "is_required": false, "value_type": "noTfgOETpT", "value_demo": "oB4JJ3YJ9P", "desc": "k9tK49cnw1", "key": "GPyjrbMME1", "name": "6xRG4Awhsh", "is_multi": false } ], "sku_attrs": [ { "key": "Pd5jdPzw3x", "name": "UopE0SrKMz", "is_multi": false, "is_required": false, "value_type": "HXqnBAhHjz", "value_demo": "5kXNwI4ews", "desc": "jFQ6GEF0mJ" } ] }, "extra": { "error_code": 0, "description": "", "sub_error_code": 0, "sub_description": "", "logid": "202503241431485E0DCB2218BBC3C4562D", "now": 1742797908 }, "BaseResp": { "Extra": { "S6vGVUTyTs": "zTUDrhWUaB" }, "StatusMessage": "HiHdZcC3Tw", "StatusCode": 2954543391753793000 } }
    切换单列布局

    错误码

    HTTP 状态码错误码错误码描述排查建议
    2002190002
    access_token无效
    调用接口重新生成access_token
    2002190004
    应用未获得该能力, 请去https://open.douyin.com/申请
    应用申请接口权限
    2002190008
    access_token过期,请刷新或重新授权
    规范token刷新机制,检查是否有测试环境在同步刷新token
    2002119001
    参数不合法
    更换参数
    2002119002
    系统繁忙,请稍候再试
    重试
    2002119003
    请求太过频繁,请稍后再试
    重试
    2002119005
    应用未获商家授权
    联系合作商家在商家后台发起授权,并在服务商后台同意授权
    2003000001
    根据实际业务错误返回
    对照接口文档规范参数并重试
    2004000001
    根据实际业务错误返回
    补充参数
    2004000002
    根据实际业务错误返回
    对照接口文档规范参数并重试
    2005000001
    根据实际业务错误返回
    联系抖音处理
    2002100001
    未知错误
    重试接口,重试3次仍报错联系抖音生活服务技术支持
    2002100004
    系统繁忙,此时请开发者稍候再试
    重试接口,重试3次仍报错联系抖音生活服务技术支持
    2002100005
    参数不合法
    更换参数
    2003000001
    以实际错误信息为准
    2005000001
    服务器打瞌睡了,请稍后再试。

    attr_key_value_map 的格式

    根据「查询商品模板」查出的模板,可以看到该行业该类型下的商品对应的可传的相关属性,技术需要关心的字段主要是以下几个:
      1.key - 属性主键,attr_key_value_map 的 key 是什么
      2.is_required - 是否必传
      3.is_multi - 是否列表,需要和 value_type 组合起来看。例如:
      a.value_type=STRING(表示字符串,具体参见下文),is_multi=true,则表示 value 是一个字符串列表(也就是 list)类型;
      b.value_type=IMAGE(表示图片控件,具体参见下文),is_multi=true,则表示 value 是一个图片控件结构体列表(也就是 list)类型;
      4.value_type - attr_key_value_map 的 value 类型,枚举可参见后文的表格。
    attr_key_value_map 的类型是 map<string,string>,如果 value_type 为其他值类型需转换为 string
      5.value_type 为整数/浮点数:转为十进制格式的 string
      6.value_type 为布尔值:转为"true"或"false"
      7.value_type 为结构体或结构体列表:需要使用 json 序列化
    ID
    枚举值
    含义
    说明
    结构定义(thrift 格式)
    2
    INT64
    整数
    i64
    3
    BOOL
    布尔值
    bool
    4
    STRING
    字符串
    string
    6
    DOUBLE
    浮点数
    double
    100
    IMAGE
    图片控件(ImageStruct)
    url、名称
    struct ImageStruct {
    1: optional string name
    3: optional string url
    }
    101
    USE_TIME
    使用时间控件(UseTimeStruct)
    全天/仅指定时间可用;时间段(比如12:-14:)
    enum UseTimeTypeEnum {
    ALL_DAY = 1 // 全天可用
    SPECIFIC_TIME = 2 // 仅指定时间可用
    }
    struct TimePeriodStruct {
    2: required string use_start_time // 开始时间 00:00:00
    3: required string use_end_time // 结束时间 00:00:00
    4: optional bool end_time_is_next_day // 是否跨天
    }
    struct UseTimeStruct {
    1: required UseTimeTypeEnum use_time_type // 1全天可用,2仅指定时间可用
    2: optional list<TimePeriodStruct> time_period_list // 时间段
    }
    103
    USE_DATE
    可使用日期(UseDateStruct)
    指定日期/指定天数;购买后多少天有效;可用开始时间;可用结束时间;
    enum UseDateTypeEnum {
    SPECIFIC_DATE = 1 // 指定日期
    RELATIVE_DATE = 2 // 指定天数
    }
    struct UseDateStruct {
    1: required UseDateTypeEnum use_date_type // 1指定日期 2指定天数;
    2: optional i32 day_duration // 购买后X天有效,use_date_type=2时有效
    3: optional string use_start_date // yyyy-MM-dd 开始日期,use_date_type=1时有效
    4: optional string use_end_date // yyyy-MM-dd 结束日期,use_date_type=1时有效
    }
    104
    CAN_NO_USE_DATE
    不可使用日期(CanNoUseDateStruct)
    开关;指定周几不可用;指定节假日不可用;指定日期不可用;节假日具体日期
    enum HolidayEnum {
    NEW_YEAR = 1 // 元旦
    SPRING_FESTIVAL = 2 // 春节
    TOMB_SWEEPING_DAY = 3 // 清明
    MAY_DAY = 4 // 劳动节
    DRAGON_BOAT_FESTIVAL = 5 // 端午节
    MID_AUTUMN_FESTIVAL = 6 // 中秋节
    NATIONAL_DAY = 7 // 国庆节
    VALENTINE_DAY = 8 // 情人节
    CHRISTMAS = 9 // 圣诞节
    }
    enum DayOfWeekEnum {
    MONDAY = 1
    TUESDAY = 2
    WEDNESDAY = 3
    THURSDAY = 4
    FRIDAY = 5
    SATURDAY = 6
    SUNDAY = 7
    }
    struct CanNoUseDateStruct {
    1: required bool enable // 开关,启用需要为true
    2: optional list < DayOfWeekEnum &rt days_of_week // 指定周几不可用
    3: optional list < HolidayEnum &rt holidays // 指定节假日不可用
    4: optional list < string &rt date_list // yy-MM-dd 指定日期,不可用
    5: optional map < HolidayEnum, string &rt holiday_dates // 节假日不可用具体日期,例如:"holiday_dates":{"1":"2021.01.01-2021.01.03","7":"2021.10.01-2021.10.07"}
    }
    105
    APPOINTMENT
    预约控件(AppointmentStruct)
    是否需要预约;提前X天;提前X小时;第三方预约入口;第三方已预约订单查看入口;需预约日期类型(1-指定周期、2-指定日期);需周几;需预约日期
    enum AheadTimeTypeEnum {
    DAY = 1
    HOUR = 2
    MINUTE = 3
    }
    struct AppointmentStruct {
    1: optional bool need_appointment // 是否需要预约
    2: optional i32 ahead_day_num // 需要提前X天电话预约
    3: optional string external_link // 第三方提供预约入口,需要过机审。
    4: optional string order_appointment_time_url // 第三方提供的查看已预约订单入口,需要过机审
    5: optional AheadTimeTypeEnum ahead_time_type // 提前预约时间类型, need_appointment = true时该字段必填
    6: optional i32 ahead_hour_num // 需要提前X小时电话预约
    7: optional i32 ahead_minute_num // 需要提前X分钟电话预约
    }
    106
    NOTE
    富文本控件(NoteStruct)
    类型(文本/图片);内容
    enum OtherNoteTypeEnum {
    TEXT = 1 // 文本
    IMG = 2 // 图片
    }
    struct NoteStruct {
    1: optional OtherNoteTypeEnum note_type
    2: optional string content
    }
    107
    LIMIT_USE_RULE
    限制使用规则控件(LimitUseRuleStruct)
    是否限制、每人单次消费最多使用代金劵张数
    struct LimitUseRuleStruct {
    1: required bool is_limit_use // 是否限用
    2: optional i32 use_num_per_consume // 每人单次消费最多使用代金劵张数
    }
    108
    CUSTOMER_RESERVED_INFO
    用户留资规则控件(CustomerReservedInfoStruct)
    是否留资;可以留电话;可以留姓名;可以留身份证;手机号是否必传;是否每张券都要留资;留资原因
    struct CustomerReservedInfoStruct {
    1: required bool allow //是否留资
    2: optional bool allow_tel //可以留电话
    3: optional bool allow_name // 可以留姓名
    4: optional bool allow_identity // 可以留身份证
    5: optional bool require_for_tel //手机号是否必传 【默认非必传】
    10: optional bool need_for_all // 是否每张券都需要留资
    }
    109
    REAL_NAME_INFO
    实名信息控件(RealNameInfoStruct)
    是否实名;场景
    enum RealNameInfoSceneEnum {
    NAME_AND_TEL = 3 // 出行人姓名与手机号码
    ONLY_ONE_INFO = 2 // 仅填写一位游客信息
    EVERY_ONE_INFO = 1 // 每张门票都要填写用户信息
    }
    struct RealNameInfoStruct {
    1: required bool enable
    2: required RealNameInfoSceneEnum scene // 场景(1/2/3)
    }
    111
    HIGHLIGHT
    商品亮点标签控件(HighlightStruct)
    Content、Priority
    struct HighlightStruct{
    1: required string Content
    2: required i64 Priority
    }
    112
    FACILITY
    酒店设施控件(FacilityStruct)
    value、name、icon
    struct FacilityStruct {
    1: required string value, // 设施ID 1 - 空调; 2 - 电视; 3 - 阳台; 4 - 窗户; 5 - 独立卫浴; 6 - 浴缸; 7 - 吹风机; 8 - 衣架; 9 - 热水; 10 - 洗衣机; 11 - 基本厨具; 12 - 冰箱; 13 - 免费Wifi; 14 - 电热水壶; 15 - 暖气; 16 - 智能马桶; 17 - 微波炉; 18 - 门禁系统; 19 - 智能门锁; 20 - 私家花园; 21 - 私家泳池; 22 - 观景露台; 23 - 免费停车; 24 - 行李寄存
    2: optional string name, // 设施名称,code != -1 时展示name,其他情况下展示code对应的名称。长度不超过6字符
    }
    114
    NOTIFICATION
    使用规则控件(NotificationStruct)
    标题;内容
    struct NotificationStruct {
    1: required string title,
    2: required string content,
    }
    116
    ADD_BED_RULE
    加床规则控件(AddBedRuleStruct)
    是否支持加床;加床规则(文本)
    struct AddBedRuleStruct {
    1: required bool can_add_bed (go.tag = 'json:\"can_add_bed\"'), //是否支持加床
    2: optional string add_bed_rule (go.tag = 'json:\"add_bed_rule\"'), //加床规则,文本,最多200个
    }
    117
    DATE_RULE
    使用日期规则控件(DateRuleStruct)
    指定周几不可用;指定日期不可用;是否节日不可用
    struct UnavailableDateStruct{
    1: optional list < string &rt date_list // yyyy-MM-dd 指定日期,不可用
    2: optional list < i64 &rt weekday_list // 1-7对应周一至周日
    3: optional bool not_available_on_holidays // 节假日不可用
    }
    struct DateRuleStruct{
    1: optional UnavailableDateStruct unavailable_date
    }
    118
    BREAKFAST
    加早规则控件(BreakfastRule)
    是否支持加早;加早规则自定义文本
    struct BreakfastRule {
    1: required bool can_add_breakfast (go.tag = 'json:\"can_add_breakfast\"'), //是否支持加早
    2: optional string add_breakfast_rule (go.tag = 'json:\"add_breakfast_rule\"'), //加早规则,文本,最多200个
    }
    121
    COMMODITY
    商品搭配控件(ItemGroupStruct)
    商品组名
    总数
    选几
    菜品
    - 菜名
    - 单价
    - 总数
    - 单位
    struct ItemStruct {
    1: required string name // 菜名
    2: required i64 price // 价格
    3: required i32 count // 总数
    4: optional string unit // 单位
    }
    struct ItemGroupStruct {
    1: required string group_name // 商品组名
    2: optional i32 total_count // 总数
    3: required i32 option_count // 选几
    4: required list item_list // 菜品
    }
    122
    LIMIT_RULE
    限制购买规则控件(LimitRuleStruct)
    是否限购;每人最多购买X张
    struct LimitRuleStruct {
    1: required bool is_limit // 是否限购
    2: optional i32 total_buy_num // 每人最多购买X张
    }
    123
    PREORDER_RULE
    预约规则(PreOrderRuleStruct)
    time_type必须传2
    其中:
    time_type传了1 必须传soonest_order_time或latest_order_time(即传其中之一即可);
    time_type传了2 必须传soonest_order_sec_offset或latest_order_sec_offset(即传其中之一即可);
    same_day_order_time生效需要can_full_day_order传false
    struct PreOrderRuleStruct {
    1: required i64 time_type // 1-绝对时间 2-提前时间
    2: optional i64 soonest_order_time // 最早预约时间
    3: optional i64 soonest_order_sec_offset // 最早预约提前时间(单位:秒)
    4: optional i64 latest_order_time // 最晚预约时间
    5: optional i64 latest_order_sec_offset // 最晚预约提前时间(单位:秒)
    6: optional string start_time // 开始销售时间 e.g.: 08:00:00
    7: optional string end_time // 结束销售时间 e.g.: 19:00:00
    8: optional bool can_full_day_order // 当日是否全天可约
    9: optional i64 same_day_order_time // 当日预约提前时间(单位:秒). i.e. 20:00点前预约,值为 72000
    }
    126
    CUSTOM_POLICY
    自定义规则控件(CustomPolicyStruct)
    自定义规则控件
    struct CustomPolicyStruct {
    1: required i64 policy_rule_type // 规则类型
    2: optional string policy_value // 规则值
    3: optional NoteStruct note //规则描述
    }
    127
    CHARGE_POLICY
    费用控件(ChargePolicyStruct)
    加早、加床费用,支持添加费用类型,填写名称、单位和价格,价格支持选择免费
    struct ChargePolicyItem {
    1: required string item // 费用项名称
    3: required i64 qty //数量
    4: required string unit //单位
    5: required i64 amount // 金额(分)
    }
    130
    limit_buy_rule
    限购规则(LimitBuyRuleStruct)
    enum SubjectTypeEnum {
    UID = 1, // UID
    CONTACT_TEL = 2, // 联系人手机号
    IDCARD = 3, // 身份证
    DEVICEID = 4, // 设备ID
    CONSUMER_TEL = 5, // 消费者手机号(游玩类)
    }
    enum RangeTypeEnum {
    USE_DATE = 1, // 使用日期
    ORDER_DATE = 2, // 下单日期
    LIFE_LONG = 3, // 终身
    ORDER = 4, // 订单
    }
    struct LimitRuleItem {
    1: required SubjectTypeEnum subject_type // 限购主体
    2: required RangeTypeEnum range_type // 限购范围
    3: required i32 limit_num // 限购数量
    4: required string unit // 限购单位
    }
    // 限制购买规则
    struct LimitBuyRuleStruct {
    1: required bool enable_limit, // 是否启用限制购买
    2: optional list<limitruleitem> rule_list // 限购规则
    }
    133
    APPLICATION_SCOPE
    适用范围(ApplicationScopeStruct)
    enum ApplicationScopeTypeEnum {
    ALL = 1, // 全场适用
    ONLY_SPECIAL = 2, // 仅特殊消费适用
    EXCLUDE_SPECIAL = 3, // 排除特殊消费
    }
    struct ApplicationScopeStruct {
    1: required ApplicationScopeTypeEnum application_scope_type, // 适用范围类型
    2: optional string special_consumption_desc, // 特殊消费描述
    }
    136
    SALE_SPECS
    销售规格(SaleSpecsStruct)
    /******销售规格*****/
    struct SaleSpecsStruct {
    1: required list<salespec> sale_specs
    }
    struct SaleSpec {
    1: optional string spec_key
    2: required string spec_name
    3: required string spec_value
    4: optional i32 sequence
    }
    139
    ORDER_SETTLE_RULE
    结算规则(OrderSettleRuleStruct)
    enum OrderSettleTypeEnum {
    BY_ORDER = 1, // 整单结算
    BY_TIMES = 2, // 按使用次数结算
    }
    type OrderSettleRuleStruct struct {
    1: required OrderSettleTypeEnum order_settle_type // 结算类型
    }
    145
    PLAY_DAYS_AVAILABLE
    可游玩天数(PlayDaysAvailableStruct)
    allow_the_same_day 为 false,specific_time 字段必填
    enum CommonTimeTypeEnum{
    Minute = 1, // 分钟
    Hour = 2, // 小时
    Day = 3, // 天
    }
    // 通用时长控件
    struct CommonTimeStruct{
    1: required i32 time // 时长
    2: required CommonTimeTypeEnum time_type // 时间单位
    }
    struct PlayDaysAvailableStruct{
    1: optional bool allow_the_same_day // 仅当日有效
    2: optional CommonTimeStruct specific_time // 指定日期起天数
    }
    146
    TICKETS_RULE
    票务规则(TicketsRuleStruct)
    // 券码类型
    enum CodeSourceType {
    SYSTEM = 1 // 抖音码
    THIRD = 2 // 三方码
    THIRD_RESERVE = 3 // 预导码
    }
    // 凭证方式枚举
    enum VoucherMethodEnum{
    IdCard = 1 // 身份证号码
    No = 2 // 券号
    Code = 3 // 券码
    }
    // 票务规则(TicketsRuleStruct)
    struct TicketsRuleStruct{
    1: required list<vouchermethodenum> voucher_method // 凭证方式
    2: optional CodeSourceType code_source_type // 券码类型
    3: optional string code_service_provider // 券码服务商账号
    4: optional string voucher_copy_description // 凭证文案说明
    }
    174
    ATTACH_ITEM_DETAIL
    附赠项目
    // 附赠项目
    struct AttachItemDetailStruct {
    1: optional list<AttachItem> attach_item_list // 附赠项目明细列表
    }
    struct AttachItem {
    1: string item_name // 项目名称
    2: i32 item_count // 项目份数
    3: i32 item_total_price // 总价值
    }
    176
    DOUYIN_MOVIE_LIMIT
    电影适用影片字段
    type DouyinMovieLimitStruct struct {
    LimitType CommonLimitTypeEnum
    MovieList []*DouyinMovieInfoStruct
    }
    const (
    CommonLimitTypeEnum_Unlimited CommonLimitTypeEnum = 1 //不限制影片
    CommonLimitTypeEnum_LimitedAvailable CommonLimitTypeEnum = 2 //限制影片可用
    CommonLimitTypeEnum_LimitedNotAvailable CommonLimitTypeEnum = 3 //限制影片不可用
    )
    type DouyinMovieInfoStruct struct {
    MovieName string //电影名称
    ChineseMovieCode *string //专资码
    }
    177
    QUALIFICATION_INFO
    商品资质信息类型(qualification_identity)
    type QualificationIdentityEnum int64
    const (
    // 营业性演出准予许可证
    QualificationIdentityEnum_Organizer QualificationIdentityEnum = 1
    // 演出主办方授权书
    QualificationIdentityEnum_TicketAagent QualificationIdentityEnum = 2
    )
    配合资质ID使用:
    "key": "host_approval_qual","name": "主办批文资质"
    "key": "ticket_agent_qual","name": "票务代理资质"
    对应资质中心查询的资质的枚举:
    主办方资质要传“营业性演出准予许可决定” 5006
    票务代理资质要传 “营业性演出准予许可决定” 5006 和 “演出主办方授权书” 5005
    9
    BREAK_RULES_DEPOSIT
    违章押金(break_rules_deposit)
    单位固定为"元",demo如下:
    {"num":1,"unit":"元"}
    // 通用数量(带单位)控件(CommonQuantityStruct)
    struct CommonQuantityStruct {
    1: required string num // 数值
    2: required string unit // 单位
    }(assembly_type = '9') 单位固定"元"
    7
    APPLICABLE_MODELS
    适用车型(applicable_models)
    demo:{"key":6,"value":"皮卡"}
    / 通用枚举控件 value必须非空字符串
    // key等于0时为用户自定义,value也必须非空字符串
    struct CommonEnumStruct{
    1: required i64 key
    2: required string value
    }
    1:全车型
    2:轿车
    3:SUV/MPV
    4:7座SUV
    5:5座SUV
    6:皮卡
    7:仅MPV
    8:仅SUV
    9:仅油车
    10:仅电车

    备注

    /** 预约方式 */ enum BookingType { ONLINE = 1 // 线上预约 BOTH = 2 // 可线上/线下预约 THIRD = 3 // 第三方预约 MERCHANT = 4 // 商家端预约 } /**提供发票方式*/ enum BillPolicyTypeEnum{ //商家提供 MERCHANT = 1 //商家提供 //平台提供 PLATFORM = 2 //平台提供 //服务商提供 SUPPLIER = 3 //服务商提供 //旅行社提供 TRAVELAGENCY = 4 //旅行社提供 // 酒店提供 HOTEL = 5 // 酒店提供 // 景区提供 SCENICAREA = 6 // 景区提供 }