{
  "openapi": "3.0.1",
  "info": {
    "title": "iDinheiro Scraper: Brazil Loans, Credit Cards & Rates",
    "description": "Scrape iDinheiro.com.br, Brazil's comparador financeiro: loans and credit cards. Get lender, ranking, monthly interest rate (taxa de juros), CET, annual rate, reais amount range, Reclame Aqui rating, annual fee (anuidade), minimum income and partner flag. Filter and export JSON, CSV, Excel.",
    "version": "0.1",
    "x-build-id": "gSXeViiIhkTki0qGk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapers_lat~idinheiro-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapers_lat-idinheiro-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/scrapers_lat~idinheiro-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapers_lat-idinheiro-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/scrapers_lat~idinheiro-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapers_lat-idinheiro-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "maxRecords": {
            "title": "Max records",
            "minimum": 1,
            "maximum": 1000000,
            "type": "integer",
            "description": "Maximum number of loan-rate records to collect across all pages. Optional."
          },
          "startUrls": {
            "title": "iDinheiro Comparison Pages",
            "type": "array",
            "description": "iDinheiro loan or credit-card ranking pages to scrape. Loan pages list lenders with their interest rates (taxa de juros) and released-amount ranges; credit-card pages list cards with annual fee (anuidade), minimum income (renda minima) and benefits. One record is produced per product. Leave empty to use the default best-online-loans ranking. Example loan pages: emprestimos/melhores-empresas-de-emprestimo-online, emprestimos/melhor-banco-para-emprestimo, emprestimos/emprestimo-na-hora-via-pix. Example card page: cartao-de-credito/melhores-cartoes-de-credito.",
            "items": {
              "type": "string"
            }
          },
          "lenders": {
            "title": "Filter by lender / provider",
            "type": "array",
            "description": "Only return products whose lender or institution name matches one of these (case-insensitive substring). Example: [\"Creditas\", \"Nubank\"]. Leave empty to return every lender on the page.",
            "items": {
              "type": "string"
            }
          },
          "maxInterestRateMonthly": {
            "title": "Max monthly interest rate (%)",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Only return products whose headline monthly interest rate (taxa de juros ao mês) is at or below this percent. Products without a stated rate are excluded when this is set. Leave empty for no rate filter."
          },
          "minRating": {
            "title": "Minimum Reclame Aqui rating (0-10)",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Only return lenders whose Reclame Aqui rating is at or above this value (0-10). Lenders without a rating are excluded when this is set. Leave empty for no rating filter."
          },
          "onlyPartners": {
            "title": "Only partner / sponsored products",
            "type": "boolean",
            "description": "When on, return only products flagged as a commercial partner (isPartner = true). Useful for affiliate and comparison sites.",
            "default": false
          },
          "maxAnnualFee": {
            "title": "Max credit-card annual fee (anuidade, BRL)",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Credit cards only. Only return cards whose annual fee (anuidade) is at or below this value in reais. Cards without a stated fee are excluded when set. Leave empty for no fee filter."
          },
          "onlyNoAnnualFee": {
            "title": "Only fee-free credit cards (sem anuidade)",
            "type": "boolean",
            "description": "Credit cards only. When on, return only cards with no annual fee (anuidade gratis / sem anuidade).",
            "default": false
          },
          "sortBy": {
            "title": "Sort order",
            "enum": [
              "rank",
              "rateAsc",
              "ratingDesc",
              "maxAmountDesc",
              "annualFeeAsc"
            ],
            "type": "string",
            "description": "How to order the returned products.",
            "default": "rank"
          },
          "withSummary": {
            "title": "AI: product summary",
            "type": "boolean",
            "description": "Add an AI-written consumer summary of each loan product weighing rate/CET, pros and cons (paid add-on, opt-in). Requires a paid Apify plan. Billed per record only when produced.",
            "default": false
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}