贝宝(PayPal)付款API的通用格式 [英] Swagger Format for PayPal Payment API

查看:158
本文介绍了贝宝(PayPal)付款API的通用格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是OpenAPI的新手,我需要一些帮助来为PayPal的

I'm new to OpenAPI and I need some help to create a basic swagger file for PayPal's payment API to create a payment from our platform. Note: OAuth is already configured.

下面是一个基本的swagger文件,但我不知道在何处添加

Below is a basic swagger file but I don't know where to add the paymet request information (i.e. intent, payer, transactions etc.) into:

{
  "swagger": "2.0",
  "info": {
    "description": "this is a payment request to through PayPal",
    "title": "Swagger PayPal Payment",
    "version": "1.0.0"
  },
    "host": "api.sandbox.paypal.com",
    "basePath": "/v1/payments", //
    "schemes": [ "https" ],
  "paths": {
    "/payment":
    {
      "post": {
        "summary": "Creates a payment"
        "description": "Creates a payment request to Paypal",
        "parameters": {

        },
        //"intent": "sale",
        //"payer":
        //{
        //  "payment_method": "paypal"
        //},
        //"transactions": [
        //  {
        //    "amount": {
        //      "total": "9.00",
        //      "currency": "EUR"
        //    }
        //  }
        //],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  }
}

在editor.swagger上测试文件,我在交易,付款人和意图上收到"OBJECT_ADDITIONAL_PROPERTIES"错误.

Testing the file on editor.swagger, I get an "OBJECT_ADDITIONAL_PROPERTIES" error on transactions, payer, and intent.

推荐答案

JSON有效负载定义为

JSON payload is defined as a body parameter (parameter with in: body), and this parameter needs a schema that defines the JSON object properties. You would typically define object schemas in the global definitions section and reference them using $ref.

此处是YAML版本,以提高可读性.要将其转换为JSON,请将其粘贴到 http://editor.swagger.io 并使用File> Download JSON

Here is the YAML version for readability. To convert it to JSON, paste it into http://editor.swagger.io and use File > Download JSON.

swagger: "2.0"
info:
  description: this is a payment request to through PayPal
  title: Swagger PayPal Payment
  version: "1.0.0"

host: api.sandbox.paypal.com
basePath: /v1/payments
schemes: [ https ]

paths:
  /payment:
    post:
      summary: Creates a payment
      description: Creates a payment request to Paypal
      parameters:
        - in: body
          name: payment
          required: true
          schema:
            $ref: "#/definitions/Payment"   # <--------
      responses:
        "200":
          description: OK

definitions:

  # Request body object
  Payment:
    type: object
    properties:
      intent:
        type: string
      payer:
        $ref: "#/definitions/Payer"
      transactions:
        type: array
        items:
          $ref: "#/definitions/Transaction"

  Payer:
    type: object
    properties:
      payment_method:
        type: string
        example: paypal

  Transaction:
    type: object
    properties:
      ... # TODO

这篇关于贝宝(PayPal)付款API的通用格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆