创建和更新卡片产品
了解什么是卡片产品,以及如何创建和更新它。
概述
卡产品 定义了 Marqeta 卡的行为和功能。它规定了卡片的属性,并提供了关于其使用方式的信息。同时,我们还可以指定卡片可以使用的具体渠道,例如在 ATM 机、销售点(POS)以及电子商务网站上使用。
除了卡产品对象外,我们也可以在卡对象中定义属性。如果存在多个定义,卡对象中的定义将优先于卡产品对象中的定义。
在本课程中,我们将学习如何创建和更新一个卡产品。
创建卡产品
我们可以通过向 {BASE_URL}/cardproducts 端点发送 POST 请求来创建一个卡产品。可以在请求体中提供卡产品的基本信息,如果使用 config 对象,还可以提供配置信息。这些信息定义了卡产品的功能和行为。
请求参数
| 参数 | 类型 | 必填/可选 | 描述 |
|---|---|---|---|
| name | 字符串 | 必填 | 卡产品的名称,长度:1–40 个字符 |
| start_date | 日期时间 | 必填 | 卡产品的激活日期,格式:yyyy-DD-mm 注意:如果开始日期已过且 active = False,则卡片不会被激活。 |
| token | 字符串 | 可选 | 卡产品的唯一标识符,长度:1–36 个字符 注意:若未指定,系统将自动生成。该值一旦设置便无法更改。 |
| active | 布尔值 | 可选 | 卡产品的状态,默认值:True |
| end_date | 日期时间 | 可选 | 卡产品保持有效的截止日期,格式:yyyy-DD-mm |
| config | 对象 | 可选 | 包含卡产品特性的配置对象 |
注意: 有关
config对象的详细信息,请参阅本课程的附录章节。
第4–5行: 输入 name 和 start_date 参数的值。
第8行: 将 ecommerce 属性设为 True,表示允许用户在线购物时使用该卡。
第9行: 将 atm 属性设为 True,表示允许用户在 ATM 机取现,并在 POS 系统中接收资金。
注意: 您也可以填写表格中列出的其他可选参数。
点击下方代码窗口中的“运行”按钮查看输出结果。
1url = '{{BASE_URL}}cardproducts' 2 3data = json.dumps({ 4 "name": "", 5 "start_date": "", 6 "config": { 7 "poi": { 8 "ecommerce": True, 9 "atm": True, 10 }, 11 } 12}) 13 14response = requests.post(url, headers=headers, data=data) 15 16printResponse(response)
代码成功执行后,输出将显示包含所有请求字段的完整卡产品对象。其中 token 字段被提取并保存为 CARD_PRODUCT_TOKEN。后续课程中我们将使用此值执行多项操作。
若执行失败,将显示相应的错误信息。
更新卡产品
我们可以通过向 {BASE_URL}/cardproducts/{token} 端点发送 PUT 请求来更新卡产品。路径参数({token})指代要更新的卡产品的令牌。同时,还需在请求体中指定需要更新的字段。
路径参数
| 参数 | 类型 | 必填/可选 | 描述 |
|---|---|---|---|
| token | 字符串 | 必填 | 要更新的卡产品的令牌 |
注意: 要了解可更新的字段,请参考上方创建卡产品的输入参数表。请注意,除
token外,其余字段均可更新,如表中所示。
在下面的代码中,我们将修改某个卡产品的 name。
注意: 您可以选择修改卡产品创建表中列出的任意属性。
第1行: token 使用了创建卡产品时保存的 CARD_PRODUCT_TOKEN 值。如果您想更新其他卡产品对象,也可以自行更改。
第6行: 输入 name 参数的新值(即卡产品的新名称)。
点击下方代码窗口中的“运行”按钮查看输出结果。
1token = '{{CARD_PRODUCT_TOKEN}}' 2 3url = '{{BASE_URL}}cardproducts/' + token 4 5data = json.dumps({ 6 "name": "" 7}) 8 9response = requests.put(url, headers=headers, data=data) 10 11printResponse(response)
代码成功执行后,输出将显示与给定 token 对应的完整卡产品对象,包含所有请求字段,包括刚刚更新的字段。
若执行失败,将显示相应的错误信息。