Python client for the most movic's B2B API

pymasmovil的Python项目详细描述


Más Móvil Python API客户端

这个PythonAPI客户机提供对Más Móvil的B2B REST API的访问。在

安装

要求

  • Python 3.8+

使用

登录

要进行身份验证,您需要指定需要设置为具有以下名称的环境变量的凭据:

'MM_BASEURL': 'https://<host>/cableOperadores/services/apexrest/api''MM_USER': 'user''MM_PASSWORD': 'pwd''MM_DOMAIN': 'domain'

MM_BASEURL必须指向MásMóvili的API环境,无论是测试还是生产。Pymasmovil只会像/v0/accounts那样向它追加API路由来执行请求。在测试的情况下,请与他们核实,因为每个客户的情况肯定会发生变化。在

MM_USERMM_PASSWORD必须替换为实际的用户凭据,MM_DOMAIN必须根据需要调用的MM环境(测试/生产)指向“test”或“login”。在

会话创建

当我们使用Session.create方法创建会话时,登录完成:

^{pr2}$

这将返回验证所有后续请求所需的API密钥。这就是为什么Session实例必须传递给其他所有对象方法。在

账户

frompymasmovil.models.accountimportAccountaccount_id='0017E000017pEo3QAE'account=Account.get(session,account_id)

要创建新帐户,我们需要使用Account.create将帐户数据作为关键字参数传递。下面列出了Account属性。注意它们都是弦。在

town, surname, stair, roadType, roadNumber, roadName, region, province, postalCode, phone, name, id, flat, email, door, donorCountry, documentType, documentNumber, corporateName, buildingPortal

对于将参数验证留给API的客户端,没有强制的属性。在

frompymasmovil.models.accountimportAccountaccount=Account.create(session,town='Barcelona',surname='Garcia',phone='616010101')

订单项

订单项的访问方式与帐户相同:

frompymasmovil.models.order_items.pyimportOrderItemorder_item_id='8028E34500215wgQAA'order_item=OrderItem.get(session,order_item_id)

目前,订单项可以按照帐户创建示例创建,但其属性的结构要复杂一些。在

由于GET /order-item/:id响应和POST /accounts/:id/order-items请求除了一些属性外不匹配,因此订单项创建被设计为根据POST正文推断出的属性合理地构建一个OrderItem实例。MásMóvil的API并不像restapi那样返回整个资源。这就是为什么OrderItemcreate输入数据结构不会直接匹配OrderItem属性。在

最小结构表示为变量sample-order-item-post-request

frompymasmovil.models.order_items.pyimportOrderItemorder_item_data={'lineInfo':[{'name':'Antonio','surname':'Garcia','phoneNumber':'616010101','documentType':'NIF','iccid_donante':'8934046318031035245','iccid':'8934046318031035250',}]}order_item=OrderItem.create(session,order_item_data)

发展

Python版本

我们使用Pyenv修复Python版本,使用virtualenv开发包。在

您需要:

  • 安装并配置^{}
  • 安装并配置^{}
  • Python安装所需版本:
$ pyenv install 3.8.2
  • 创建virtualenv:
$ pyenv virtualenv 3.8.2 pymasmovil

Python包要求

在虚拟环境中安装Python包:

$ pyenv exec pip install -r requirements.txt

释放

更新变更日志.md遵循以下步骤:

  1. 添加合并合并请求中丢失的所有条目。在
  2. 复制[Unreleased]标头。在
  3. 将第二个Unreleased替换为后跟当前日期的版本号。复制早期版本中的完全格式。在

然后,您可以发布包并将其发布到PyPi:

  1. 更新setup.py中与您在变更日志中指定的版本相匹配的VERSION变量。在
  2. 打开包含这些更改的合并请求以供团队批准
  3. 合并它,在合并提交上添加一个git标记并推送它。在
  4. 一旦管道成功通过,就去批准publish步骤。在

许可证

待定

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

推荐PyPI第三方库


热门话题
java不兼容类型:MainActivity无法转换为LifecycleOwner   java安卓是一种更有效的读取大文本文件的方法   java导出LWJGL本地人与项目?(IntelliJ IDEA)   JDK更新后,JavaJShell不再在下一行打印输出   父类对象上的继承Java比较子属性   Java:有没有一个容器可以有效地结合HashMap和ArrayList?   安卓 Java对象指针   java在annotationdriven Spring MVC应用程序中实现大气   java 安卓源代码构建应用找不到安卓supportv4。罐子   文件系统上的抽象层和Java中的jar/zip   java在水平滚动视图中添加多个图像?   java如何从firebase实时数据库中获取字符串数组   WIndows 10工作站上的java未满足链接错误   java命令在终端中工作,但在使用过程中出现“无结束引号”错误。执行官