API to Spreadsheet Help (Help me Organise a database)

Job ID: 37451307

Budget: $30 – $250 AUD

I need a spreadsheet that regularly updates every second Tuesday with information about "RESIDENTIAL_MORTGAGES" products from a banking API. The spreadsheet should include detailed information about each product, including rates and comparison rates.

Goal
Create an automated system to fetch and update a google sheets spreadsheet with detailed information about "RESIDENTIAL_MORTGAGES" products from a banking API. The update should occur every second Tuesday.

Required Data Fields
The spreadsheet should include the following fields for each product:

Name: The display name of the product.
Description: A brief description of the product.
Brand: The brand associated with the product.
logo: of bank/brand in relation to the product
IsTailored: A boolean indicating if the product is tailored to specific circumstances.
Links: Relevant links for the product.
LastUpdated: The last update date of the product's information.
BankingProductEligibility: Details about the eligibility criteria for the product.
BankingProductFee: Information about any fees associated with the product.
BankingProductLendingRateV2: Details about lending rates, including type, rate, comparison rate, frequency of calculation and application, interest payment due, repayment type, loan purpose, tiers, additional value, additional information, and additional information URI.
Special Consideration for Rates
Since some products have varying rates or comparison rates, the spreadsheet should be formatted to accommodate these unique situations. This may involve creating multiple rows for a single product or additional columns to capture different rates.
Comparison Rate
Interest Rate
UPFRONT FEES
ONGOING FEES
DISCHARGE FEE
EXTRA REPAYMENTS
REDRAW FACILITY
OFFSET ACCOUNT
MAXIMUM LOAN TO VALUE RATIO
MINIMUM BORROWING AMOUNT
MAXIMUM BORROWING AMOUNT
TYPE OF MORTGAGE
REPAYMENT TYPES
AVAILABILITY
REPAYMENT OPTIONS
SPECIAL OFFERS


A Python script should be written to:
- Fetch the list of 'productId' from https://api.anz/cds-au/v1/banking/products. There are 122 financial institutions on here.
- Fetch detailed information for each productId from https://api.anz/cds-au/v1/banking/products/{productId}.
- Extract and process the required information.
- Structure the data into a spreadsheet format.
- The script should be scheduled to run automatically every second Tuesday. This can be achieved through Windows Task Scheduler or a cron job in Linux/macOS environments.

Error Handling and Data Integrity
- Implement error handling in the script for scenarios such as API downtime or rate limits.
- Ensure accurate and complete data fetching and recording.

Security and Compliance
Ensure that the handling of data complies with relevant data protection and privacy regulations.
Deliverables
A Python script for data extraction and processing.
An automated task setup for script execution.
A template or initial version of the spreadsheet with the required structure.
Related categories: PHP Python Excel Web Scraping Software Architecture