Skip to content

[WIP] Implement Multi-Coin Market Data Route for CoinGecko Mock API#7

Draft
Vuk7912 wants to merge 8 commits into
Merango:61533bb5-fa6e-4c8a-b1fa-ab748d46e7c1from
Vuk7912:feature-multi-coin-market-data-route-1749230032
Draft

[WIP] Implement Multi-Coin Market Data Route for CoinGecko Mock API#7
Vuk7912 wants to merge 8 commits into
Merango:61533bb5-fa6e-4c8a-b1fa-ab748d46e7c1from
Vuk7912:feature-multi-coin-market-data-route-1749230032

Conversation

@Vuk7912
Copy link
Copy Markdown

@Vuk7912 Vuk7912 commented Jun 6, 2025

Implement Multi-Coin Market Data Route for CoinGecko Mock API

Description

Task

Create a new route for fetching market data for multiple cryptocurrencies

Acceptance Criteria

  • Endpoint accepts a list of coin IDs
  • Returns market data for each valid coin ID
  • Handles partial success (some valid, some invalid coin IDs)
  • Implements input validation
  • Provides meaningful error messages
  • Supports caching to improve performance
  • Matches CoinGecko API response structure

Summary of Work

This pull request adds a new endpoint to the CoinGecko mock API for retrieving market data for multiple cryptocurrencies. The implementation will support fetching market information for a list of specified coin IDs, enhancing the API's flexibility and usability.

Changes Made

  • Create new route handler in src/routes/market-data.ts
  • Add input validation for coin ID list
  • Implement data retrieval logic for multiple coins
  • Create mock data generation utility for market data
  • Add error handling for invalid coin IDs
  • Implement caching mechanism for market data responses

Tests

  • Verify route returns correct data for valid coin IDs
  • Test error handling for empty coin ID list
  • Validate response structure matches expected format
  • Check caching functionality for repeated requests
  • Test performance with multiple coin ID queries
  • Validate input validation for coin ID formats

Signatures

Staking Key

3oBzgQ4y8YtmkxYGkse1fKKefi25twpMKU9BBdsYtjDQ: MEXvEu8z1oERU6gyYYzcUnmUxsM2DijnVwxacCjM3Hp3Bo3X3ZSJmM71FCvpBcEXHq4VRFDfvYDignvrueQJGty2v3dUY5GKUVyJ3AUEygvXkfZH6vSoHg1wSqk3M1zGCnRhgPML6xN19jiREUJTGKQqCuBuvbsTG7ve3PjMK3LjjBT3rdZ9JTEsVdGnMNw884VLNssqX1ijqBN9gX7JtTLEM9jgyQcNZ6d9HrSeRYJ8nGA9xPkNdXkB9gGAEZWkDedMhKdAkqWGFhTZYyKGnsardCAwjoCnAGFBFKefTakdJGipWwSMcsFVDJaBNuzQEVavio1uh6eS3aXbGqJJPbZeVdMVPVrt4zTcAGwoLkJcudiP81dVi4njNdrHNMQxYRYW1v6w9YiuKNyUtuL413PyJSucQC

Public Key

4WA5vRJLthsg6sJqVc6DQuRkGzvoxZ11SkqzwbqxCo2V: Qif8ekKA8BuBHy1MtP4WGoGkwvpcDStZadyZaYiTJs7ugZ4TRcXai3ohQ8NcS6TcSVmjwx1qfu7ohtmdmwJSo57Jzg7kj5UHPpsaojrdM28kHKa4zSwaTLK6XZLATu9Xrjvdey9EztMYBD66MfG3CKpQd58RFoDYSNHc582nJYFxuYpUCrkNNXv9VbuTRnfJkZnQHq6cZfmTWCeXT3z54Ud1X9ZrnvLN2zz38d1P7bKYQskWPGk8qtZgiTJiXuD6T3yHphNryonBDKDtnSGoiFqfPkydcM6hcP1PWTr6SPVK98TQPfQpHEvxDvNYW2ygzXXVeVrqngaVY6zmNuxGfEuNib3ytPJ298bedfMLRwpZcQws4U6JNNhCjWbiQWLnnkf12iPiDMCSBGtoGuGJKJpHVJuPFA

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

Successfully merging this pull request may close these issues.

1 participant