For the Freelancehunt Radar system, I implemented a separate server circuit for data retrieval through the official API of the platform.
This mechanism works with JSON responses from the API and transforms them into the internal structure of the system.
What data is processed:
new projects;
descriptions and budgets;
categories and skills;
clients;
number of bids;
project statuses;
correspondence;
messages;
my applications;
project feed;
profiles;
reviews;
skill and category directories.
How the system works:
Freelancehunt API
→ receiving JSON
→ parsing the response
→ transforming nested fields
→ normalization
→ removing duplicates
→ updating existing records
→ saving in SQLite
→ filtering and scoring
I implemented:
HTTP client for Freelancehunt API v2;
Bearer authorization;
control of allowed API requests;
pagination;
automatic synchronization;
handling API limits;
re-updating projects;
deduplication by ID;
local caching;
storing original API responses;
scoring projects by relevance.
The system automatically collects new projects, evaluates them, and displays suitable options in the Radar interface.
This mechanism works with JSON responses from the API and transforms them into the internal structure of the system.
What data is processed:
new projects;
descriptions and budgets;
categories and skills;
clients;
number of bids;
project statuses;
correspondence;
messages;
my applications;
project feed;
profiles;
reviews;
skill and category directories.
How the system works:
Freelancehunt API
→ receiving JSON
→ parsing the response
→ transforming nested fields
→ normalization
→ removing duplicates
→ updating existing records
→ saving in SQLite
→ filtering and scoring
I implemented:
HTTP client for Freelancehunt API v2;
Bearer authorization;
control of allowed API requests;
pagination;
automatic synchronization;
handling API limits;
re-updating projects;
deduplication by ID;
local caching;
storing original API responses;
scoring projects by relevance.
The system automatically collects new projects, evaluates them, and displays suitable options in the Radar interface.