Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Array that contains another objects being serialized to [Object] #49

Open
outerlook opened this issue Oct 27, 2022 · 1 comment
Open

Comments

@outerlook
Copy link

outerlook commented Oct 27, 2022

Hi! I don't know if this should be supported, I don't know openAPI well yet. But I'm getting an error when it tries to serialize an array of objects, like using this spec:

{

    "/transactions/{transaction_id}/capture": {
      "post": {
        "summary": "Capturando uma transação posteriormente",
        "description": "Essa rota é utilizada para capturar uma transação, após aprovada, utilizando o token ou o ID da transação.",
        "operationId": "capturando-uma-transacao-posteriormente",
        "parameters": [
          {
            "name": "transaction_id",
            "in": "path",
            "description": "Id ou o token da transação a ser capturada",
            "required": true,
            "schema": { "type": "string" }
          },
          {
            "name": "amount",
            "in": "query",
            "description": "Valor a ser capturado. Deve ser passado em centavos. Ex: R$ 10.00 = 1000.",
            "required": true,
            "schema": { "type": "integer", "format": "int32" }
          },
          {
            "name": "split_rules",
            "in": "query",
            "description": "Regras de divisão da transação",
            "schema": {
              "items": {
                "properties": {
                  "recipient_id": {
                    "type": "string",
                    "description": "Id do recebedor"
                  },
                  "liable": {
                    "type": "boolean",
                    "description": "Se o recebedor é responsável ou não pelo chargeback. Default `true` para todos os recebedores da transação."
                  },
                  "charge_processing_fee": {
                    "type": "boolean",
                    "description": "Se o recebedor será cobrado das taxas da criação da transação. Default `true` para todos os recebedores da transação."
                  },
                  "percentage": {
                    "type": "integer",
                    "description": "Qual a porcentagem que o recebedor receberá. Deve estar entre 0 e 100. Se amount já está preenchido, não é obrigatório",
                    "format": "int32"
                  },
                  "amount": {
                    "type": "integer",
                    "description": "Qual o valor da transação o recebedor receberá. Se percentage já está preenchido, não é obrigatório",
                    "format": "int32"
                  },
                  "charge_remainder": {
                    "type": "boolean",
                    "description": "Se o recebedor deverá pagar os eventuais restos das taxas, calculadas em porcentagem. Sendo que o default vai para o primeiro recebedor definido na regra."
                  }
                },
                "required": ["recipient_id"],
                "type": "object"
              },
              "type": "array"
            }
          },
          {
            "name": "metadata",
            "in": "query",
            "description": "Metadata de informações adicionais, caso queira incluir, i.e: Id do pedido, nome do produto, etc.",
            "schema": { "type": "string", "format": "json" }
          }
        ],
        "responses": {
          "200": {
            "description": "200",
          }
        },
        "deprecated": false
      }
    }
  }
}

the split_rules item get in query string as:

{
    "url": "/transactions/18929604/capture?amount=10695&split_rules=%5Bobject+Object%5D&split_rules=%5Bobject+Object%5D",
}

Is the schema wrong, misusage or a nasty bug?

@outerlook
Copy link
Author

Just realized it would be closed by #44

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant