bunq python开发包

bunq-sdk的Python项目详细描述


bunq python sdk

简介

嗨,开发者!

欢迎使用bunq python sdk!

我们很高兴介绍另一个独特的产品:全套银行服务! 现在你可以构建更大更好的应用程序,并将它们与你的免费银行集成!

在您深入了解这个全新的sdk之前,请考虑:

给我们你的反馈,创建拉式请求,构建你自己的bunq应用程序,最重要的是: 玩得高兴!

这个sdk位于beta中。我们不能保证持续的可用性或稳定性。 多亏你的反馈,我们会改进的。

安装

pip install bunq_sdk --upgrade

用法

创建api上下文

为了开始使用bunq api进行调用,必须首先注册api密钥和设备, 并创建会话。在sdk中,我们将这些操作分组并称之为“创建api上下文”。这个 可以使用以下代码段创建上下文:

apiContext = context.ApiContext(ENVIRONMENT_TYPE, API_KEY,
  DEVICE_DESCRIPTION);
apiContext.save(API_CONTEXT_FILE_PATH)
context.BunqContext.loadApiContext(apiContext)

除了context.BunqContext.loadApiContext(apiContext)之外,此代码段应为每个api密钥调用一次。

示例

^{}

安全注意事项

存储上下文详细信息(即bunq.conf)的文件是帐户的密钥。任何人 对它的访问可以使用您的帐户执行任何公共api操作。因此,我们建议 选择一个真正安全的地方存放。

进行api调用

每个端点都有一个类。每个类对每个支持的操作都有函数。这些 动作可以是creategetupdatedeletelist

有时api调用有依赖关系,例如MonetaryAccount。改变货币 帐户还始终需要对User的引用。当 执行API调用。看一下doc.bunq.com的全文 文档。

创建对象

通过api创建对象需要一个ApiContext、一个requestMap和所有 依赖项(例如访问货币帐户所需的用户ID)。可选,自定义标题 可以传递给请求。

payment_id = endpoint.Payment.create(
	amount=Amount(amount_string, self._CURRENCY_EURL),
    counterparty_alias=Pointer(self._POINTER_TYPE_EMAIL, recipient),
    description=description
    )

示例

^{}

读取对象

通过api读取对象需要一个ApiContext,所有依赖项的标识符(例如 访问货币帐户所需的用户ID)和要读取的对象的标识符(ID或 uuid)可选地,自定义头可以传递给请求。

这种类型的调用总是返回一个模型。

monetary_account = generated.MonetaryAccountBank.get(
    _MONETARY_ACCOUNT_ITEM_ID
)

示例

^{}

更新对象

通过api更新对象的方式与创建对象的方式相同,只不过要更新标识符的对象 需要(id或uuid)。

endpoint.Card.update(
	card_id=int(card_id),
	monetary_account_current_id=int(account_id)
	)

示例

^{}

删除对象

通过api删除对象需要一个ApiContext,所有依赖项的标识符(例如 访问货币帐户)和要删除的对象的标识符(id或uuid),自定义头可以是 传递给请求。

Session.delete(self._SESSION_ID)

示例

列出对象

通过api列出对象需要一个ApiContext和所有依赖项的标识符(例如需要用户id 用于访问货币账户)。也可以将自定义头传递给请求。

users = generated.User.list(api_context)

示例

^{}

运行样本

要了解sdk是如何工作的,可以使用位于https://github.com/bunq/tinker_python的python修补程序

运行测试

有关测试用例的信息可以在README.md 位于test

例外情况

sdk可以引发多个异常。关于这些的概述请例外 看看EXCEPTIONS.md

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Kafka在producer上流式传输自定义头   java ExecutorService:不需要输出   java并发读取不可修改的映射   如何匹配Java计算机的给定输出猜你的数字游戏;二进制搜索   java使用数据库创建新对象   javascript如何用spring mvc上传图像我尝试了这种方法,如何解决这个问题   java如何使用Quarkus Panache仅选择某些字段?   java如何通知其他对象(如何“关闭”队列)ArrayBlockingQueue中将不再有元素,   java使用JavaFX MediaPlayer从MP3读取ID3v2标记   当我们在Android上打开应用程序时,java仅在第三次显示toast   apache spark java。RuntimeException:java。lang.Integer不是bigint:java架构的有效外部类型。伊奥。IOException   模拟插座。用于测试Java的getOutputStream()   java在git对分期间,只运行失败的测试安全吗?或者我们应该运行所有测试?   java Android MediaPlayer音量非常低(已调整音量)   java组织。冬眠服务UnknownServiceException:请求的未知服务[org.hibernate.ogm.service.impl.OgmConfigurationService]   java扫描程序没有停止   java无法在JBoss EAP 6.2上调用远程EJB