67 lines
1.6 KiB
Python
67 lines
1.6 KiB
Python
from wecom_sdk.schemas.base import BaseSchema
|
|
from typing import List, Optional
|
|
|
|
class TextAttr(BaseSchema):
|
|
value: str
|
|
|
|
class WebAttr(BaseSchema):
|
|
url: str
|
|
title: str
|
|
|
|
class MiniProgramAttr(BaseSchema):
|
|
appid: str
|
|
pagepath: str
|
|
title: str
|
|
|
|
class ExternalAttr(BaseSchema):
|
|
type: int
|
|
name: str
|
|
text: Optional[TextAttr] = None
|
|
web: Optional[WebAttr] = None
|
|
miniprogram: Optional[MiniProgramAttr] = None
|
|
|
|
class ExternalProfile(BaseSchema):
|
|
external_attr: List[ExternalAttr]
|
|
|
|
class ExternalContact(BaseSchema):
|
|
external_userid: str
|
|
name: str
|
|
position: Optional[str] = None
|
|
avatar: Optional[str] = None
|
|
corp_name: Optional[str] = None
|
|
corp_full_name: Optional[str] = None
|
|
type: int
|
|
gender: int
|
|
unionid: Optional[str] = None
|
|
external_profile: Optional[ExternalProfile] = None
|
|
|
|
class Tag(BaseSchema):
|
|
group_name: str
|
|
tag_name: str
|
|
tag_id: Optional[str] = None
|
|
type: int
|
|
|
|
class WechatChannels(BaseSchema):
|
|
nickname: str
|
|
source: int
|
|
|
|
class FollowUser(BaseSchema):
|
|
userid: str
|
|
remark: Optional[str] = None
|
|
description: Optional[str] = None
|
|
createtime: int
|
|
tags: Optional[List[Tag]] = None
|
|
remark_corp_name: Optional[str] = None
|
|
remark_mobiles: Optional[List[str]] = None
|
|
oper_userid: str
|
|
add_way: int
|
|
state: Optional[str] = None
|
|
wechat_channels: Optional[WechatChannels] = None
|
|
|
|
class ContactResponse(BaseSchema):
|
|
errcode: int
|
|
errmsg: str
|
|
external_contact: ExternalContact
|
|
follow_user: List[FollowUser]
|
|
next_cursor: Optional[str] = None
|