FilOzone / FilOzone/synapse-sdk
Add provider filtering and matching endpoint to Synapse API
- Dominant language
- TypeScript
- Stars
- 25
- Forks
- 32
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 22
Description
### Feature Request: Provider Filtering/Matching Endpoint for Synapse
**Background**
Related to [issue FilOzone/filecoin-services#119](https://github.com/FilOzone/filecoin-services/issues/119): transitioning to a unified service provider registry. To improve discoverability for clients/service creators, Synapse should offer an API endpoint for filtering and matching service providers.
**Proposal**
Introduce an endpoint (e.g., `synapse.providerFiltering` or `synapse.matchProviders`) that allows users (client, service creator, dapp buidler, onramps..) to easily search and filter the service provider pool based on product properties and location.
**Initial Filtering Criteria:**
- Product type
- Location
- Product properties (e.g., sector size, piece size, publisher presence)
**Expected Output:**
- Returns a list/JSON of matched service providers, including their unique ID, metadata, and relevant service product.
- No ranking/sorting to start with; could consider randomizing the ordering but also okay to leave it to the SDK user?
**Reputation/Scoring Integration (Future Expansion Consideration):**
-When there exists scoring/reputation services, we can consider adding reputation or scoring metrics to provider matching and filtering/sorting results.
Contributor guide
Research direction
No files, tests, or existing entry points are named. Start by locating the Synapse SDK's provider and API entry points, then clarify the provider registry and filtering contract; done means a defined endpoint that filters by product type, location, and product properties and returns matched providers with IDs, metadata, and relevant products.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, backend-api-design, search
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100