更新配置文件
您有两个选项来更新配置文件:
您可以发出PATCH请求来更新概要文件的部分(但不是全部)属性
您可以发出PUT请求来完全替换概要文件的内容
补丁配置文件
您可以使用以下端点来更改概要文件的部分属性,但不是全部属性:
补丁/ api / v2 / user_profiles吗?标识符={identifier_query}
补丁/ api / v2 / user_profiles / {profile_id}
如果没有通过标识符查询或配置文件id找到该配置文件,则请求返回404错误。
可编辑属性
您可以更新以下配置文件属性:
的名字
属性
看到更新属性对象.
您还可以使用PATCH请求向概要文件添加标识符。但是,您不能更新或删除现有标识符。看到更新标识符.
以下配置文件属性是只读的:
源
类型
user_id
这些属性在PATCH请求中被忽略。如果这些属性是可编辑的,更新它们将在Zendesk中创建一个不同的配置文件,可能还会创建一个不同的用户。亚博使用PUT端点创建新的概要文件。看到创建概要文件.
有关配置文件属性的详细信息,请参见剖面图的解剖.
更新属性对象
类中包含新的或更新的属性属性
对象。例子:
{
“配置文件”:{
“属性”:{
“comm_pref”:“电子邮件”,
“加入”:“2018”
}
}
}
的属性
对象不会覆盖属性
对象。如果请求对象中的属性在概要文件对象中不存在,则会添加该属性。概要文件对象中的其他属性不受影响。
如果请求对象中的属性存在于概要文件对象中,则在概要文件对象中更新该属性的值。
更新标识符
不能使用PATCH请求更新现有标识符。尝试更新一个标识符(例如更新电子邮件地址)会添加一个新的标识符,而不是更新现有的标识符。如果标识符为a标准标识符类型如电子邮件
或phone_number
, Zendesk用户记录中也添加了一个新身份。亚博
如果要更改标识符,则必须完全替换概要文件的内容。看到更换配置文件.
例如,如果您希望删除标识符以遵守数据隐私法律,则必须将现有概要文件替换为不包括标识符的更新版本。看到遵守隐私和数据保护法律.
例子
数据
配置文件修改
- 更新
的名字
从" sunine_user "到"Jane Doe" - 更新
saddle_height
从“85厘米”到“87厘米”
- 更新
请求路径参数:
标识符=coolbikes:骑手:电子邮件:(电子邮件保护).com
请求正文profile.json文件:
{
“配置文件”:{
“名称”:“简”,
“属性”:{
“saddle_height”:“87厘米”
}
}
}
curl请求
Python的请求
进口json
进口请求
identifier_query=“coolbikes:骑手:电子邮件:(电子邮件保护)'
与开放(“profile.json”,模式=“r”)作为f:
配置文件=json.负载(f)
url=“https://coolbikes.亚博zendesk.com/api/v2/user_profiles”
参数个数={“标识符”:identifier_query}
头={“内容类型”:“application / json”}
凭证='(电子邮件保护)',“t1retube5”
响应=请求.补丁(url,参数个数=参数个数,json=配置文件,头=头,身份验证=凭证)
如果响应.status_code! =200:
打印(f”{响应。status_code}:{响应.text}')
其他的:
打印(响应.json())
响应
状态200
{
配置文件”:{
“id”:“01 e06hxmj8rj6c0mr142d6fbsa”,
“user_id”:“81123613”,
“源”:“coolbikes”,
“类型”:“骑士”,
“名称”:“简”,
“属性”:{
“favorite_color”:“红色”,
“saddle_height”:“87厘米”
},
“created_at”:“2020 - 02 - 03 - t22:14:48z”,
“updated_at”:“2020 - 03 - 11 - t01:20:28z”,
“标识符”:[
{
“类型”:“电子邮件”,
“价值”:"(电子邮件保护)"
}
]
}
}
更换配置文件
您可以使用以下端点来替换配置文件的内容:
把/ api / v2 / user_profiles吗?标识符={identifier_query}
把/ api / v2 / user_profiles / {profile_id}
把/ api / v2 /用户/ {user_id} /配置文件?标识符= {identifier_query}
这些也是创建概要文件的端点。看到创建概要文件.
您必须使用标识符查询或配置文件的id唯一地标识该配置文件。如果使用标识符查询没有找到匹配项,API将创建一个单独的配置文件。
如果找到概要文件,API将替换概要文件内容,而不是概要文件记录。例如,概要文件保留它的概要文件id
而且created_at
日期。与概要文件关联的事件不受影响。
由于概要文件内容被替换,新版本中没有包含的任何数据都会丢失。您可以发出一个初步的GET请求,以获取现有的概要文件并将数据合并到新的概要文件中。还要考虑修补配置文件而不是替换它。看到补丁配置文件.
例子
数据
配置文件修改
请求路径参数:
标识符=coolbikes:骑手:电子邮件:(电子邮件保护).com
请求正文profile.json文件:
{
“配置文件”:{
“名称”:“简”,
“标识符”:[
{
“类型”:“电子邮件”,
“价值”:"(电子邮件保护)"
}
],
“属性”:{
“favorite_color”:“红色”,
“saddle_height”:“85厘米”
}
}
}
curl请求
Python的请求
进口json
进口请求
identifier_query=“coolbikes:骑手:电子邮件:(电子邮件保护)'
与开放(“profile.json”,模式=“r”)作为f:
配置文件=json.负载(f)
url=“https://coolbikes.亚博zendesk.com/api/v2/user_profiles”
参数个数={“标识符”:identifier_query}
头={“内容类型”:“application / json”}
凭证='(电子邮件保护)',“t1retube5”
响应=请求.把(url,参数个数=参数个数,json=配置文件,头=头,身份验证=凭证)
如果响应.status_code! =201:
打印(f”{响应。status_code}:{响应.text}')
其他的:
打印(响应.json())
响应
状态201
{
配置文件”:{
“id”:“01 e06hxmj8rj6c0mr142d6fbsa”,
“user_id”:“81123613”,
“源”:“coolbikes”,
“类型”:“骑士”,
“名称”:“简”,
“属性”:{
“favorite_color”:“红色”,
“saddle_height”:“85厘米”
},
“created_at”:“2020 - 02 - 03 - t14:25:44z”,
“updated_at”:“2020 - 03 - 11 - t22:20:28z”,
“标识符”:[
{
“类型”:“电子邮件”,
“价值”:"(电子邮件保护)"
}
]
}
}