POST
/
v1
/
products
curl --request POST \
  --url https://api.base39.io/v1/products \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "slug": "consignado",
  "status": "active",
  "name": "Empréstimo consignado",
  "description": "<string>",
  "settings": {
    "steps": {
      "title": "<string>",
      "type": "signature",
      "methodData": {
        "schema": {
          "type": "operator",
          "role": "approver"
        }
      },
      "needs": [
        "<string>"
      ],
      "hooks": {
        "onFailure": [
          "void_loan"
        ]
      },
      "onStart": [
        "mark_loan_as_pending"
      ]
    },
    "loans": {
      "concurrency": [
        {
          "quantityAllowed": 123,
          "status": [
            "open"
          ]
        }
      ],
      "conditions": [
        {
          "title": "<string>",
          "content": "<string>"
        }
      ],
      "maxAge": 65,
      "minAge": 18,
      "minimumWage": 2500
    },
    "invoices": {
      "payOff": {
        "fine": {
          "amount": 0.02,
          "daysToStart": 1
        },
        "interest": {
          "amount": 0.01,
          "daysToStart": 1
        },
        "allowOverduePayment": true,
        "daysUntilDue": {
          "type": "absolute",
          "amount": 1
        },
        "updateInvoiceItemOnInsert": true
      }
    },
    "products": {
      "eligibility": {
        "type": "static",
        "options": {
          "url": "<string>",
          "headers": {},
          "metadata": {}
        }
      },
      "offer": {
        "type": "online",
        "options": {
          "monthlyFee": 1.99,
          "numberOfInstallments": [
            12,
            24
          ],
          "daysUntilDisbursement": 7,
          "monthsUntilFirstDueDate": 1,
          "creditOperationType": "CCB",
          "rebates": [
            {
              "feeType": "registration",
              "amountType": "absolute",
              "amount": 250,
              "description": "Tarifa de cadastro"
            }
          ],
          "insurance": {
            "amount": 0,
            "fee": 1.73,
            "type": "required",
            "number": "123456",
            "insurer": "Cia de Seguros"
          }
        }
      },
      "documents": {
        "toCreate": [
          {
            "purpose": "account_requirement",
            "method": "google",
            "methodData": {
              "template": "<string>"
            }
          }
        ],
        "toRequest": [
          {
            "purpose": "account_requirement",
            "name": "crédito consignado",
            "owner": "customer",
            "expireInDays": 30
          }
        ]
      },
      "disbursement": "custom"
    }
  },
  "metadata": {}
}'
{
  "id": "prod_5f92f01728e009f403d8502e",
  "slug": "consignado",
  "status": "active",
  "name": "Empréstimo consignado",
  "description": "<string>",
  "settings": {
    "steps": {
      "title": "<string>",
      "type": "signature",
      "methodData": {
        "schema": {
          "type": "operator",
          "role": "approver"
        }
      },
      "needs": [
        "<string>"
      ],
      "slug": "<string>",
      "hooks": {
        "onFailure": [
          "void_loan"
        ]
      },
      "onStart": [
        "mark_loan_as_pending"
      ]
    },
    "loans": {
      "concurrency": [
        {
          "quantityAllowed": 123,
          "status": [
            "open"
          ]
        }
      ],
      "conditions": [
        {
          "title": "<string>",
          "content": "<string>"
        }
      ],
      "maxAge": 65,
      "minAge": 18,
      "minimumWage": 2500
    },
    "invoices": {
      "payOff": {
        "fine": {
          "amount": 0.02,
          "daysToStart": 1
        },
        "interest": {
          "amount": 0.01,
          "daysToStart": 1
        },
        "allowOverduePayment": true,
        "daysUntilDue": {
          "type": "absolute",
          "amount": 1
        },
        "updateInvoiceItemOnInsert": true
      }
    },
    "products": {
      "eligibility": {
        "type": "static",
        "options": {
          "url": "<string>",
          "headers": {},
          "metadata": {}
        }
      },
      "offer": {
        "type": "online",
        "options": {
          "monthlyFee": 1.99,
          "numberOfInstallments": [
            12,
            24
          ],
          "daysUntilDisbursement": 7,
          "monthsUntilFirstDueDate": 1,
          "creditOperationType": "CCB",
          "rebates": [
            {
              "feeType": "registration",
              "amountType": "absolute",
              "amount": 250,
              "description": "Tarifa de cadastro"
            }
          ],
          "insurance": {
            "amount": 0,
            "fee": 1.73,
            "type": "required",
            "number": "123456",
            "insurer": "Cia de Seguros"
          }
        }
      },
      "documents": {
        "toCreate": [
          {
            "purpose": "account_requirement",
            "method": "google",
            "methodData": {
              "template": "<string>"
            }
          }
        ],
        "toRequest": [
          {
            "purpose": "account_requirement",
            "name": "crédito consignado",
            "owner": "customer",
            "expireInDays": 30
          }
        ]
      },
      "disbursement": "custom"
    }
  },
  "metadata": {},
  "createdAt": "2023-08-25T22:38:41.134Z",
  "updatedAt": "2023-08-25T22:38:41.134Z",
  "deleted": false
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string

Chave única de idempotência para evitar duplicação de requisições.

Query Parameters

expand
string

Expande as referências.

Pode ser um valor único ou uma lista separada por vírgula (csv) de referências retornadas neste endpoint.

fields
string[]

Uma lista separada por vírgulas de atributos a serem incluídos na resposta. Isso pode ser usado para solicitar campos que normalmente não são retornados em uma resposta padrão.

Esteja ciente de que especificar este parâmetro terá o efeito que nenhum dos campos padrão seja retornado na resposta, a menos que seja explicitamente especificado.

Body

application/json

Criar um produto

Response

201 - application/json

Retorna o objeto Product se a criação for bem-sucedida. Retorna um erro se os parâmetros de criação forem inválidos.

Este objeto representa um produto.