Discovery Endpoints [API][DFC]

Proposal / Discussion

OFN’s Discovery is awful. By making key data available on our API for CRUD, we open up the possibilities of diverse and much better discovery in other places, while still having OFN to support the back-end operations, e-commerce etc. Possible use cases:

  • Having a discovery entry focused on regenerative / agro-ecological credentials of Producers (as per Aus project that is funding the first tranche of this work)
  • Creating and OFN Global map / search that show Producers and Hubs from all our instances
  • etc

There are a range of technical directions and possibilities that are being explored in the Aus Discovery Project, but we can identify some initial core needs from the OFN API that will enable us to move forward. Prioritising READ to start with:

  • READ Enterprises with various parameters (e.g. by Group, Producer Property, postcode, State TBC)
  • Likely separate endpoints for Groups and Producer Properties i.e. not just parameters on Enterprises
  • Order cycles / Sales sessions - get list of open OCs that producer is involved in? Upgrade OC open webhook to DFC-compliance, build DFC-close webhook? TBD

Tech Pathway - REST API or DFC?

It is very likely that implementing the required endpoints for this project would be easiest and quickest in REST API. However, as an ‘organisation / community’ we are quite heavily invested in DFC being a thing and working. We believe that there is enough there, and @maikel has ideas/plans around robustness and room to move that mean we can progress this without being vulnerable to or blocked by DFC.

So it seems like it would be a missed opportunity to not try and make this Discovery site a ‘DFC-product’ that uses DFC to integrate information from different sources. This seems like the right direction for our broader project vision of interoperability and also positions this new product as a potential front-end for more things we might want to showcase. So we’re going to have a crack.

Testing

There will be automated testing, and will also be generating JSON output from new endpoints that can be checked. As the Discovery Prototype develops we will have more ‘live / user’ testing as we use the endpoints in n8n integrations to link to the new prototype

Github

See epic #11242 - [Draft][API] Discovery Endpoints

Clockify

Please use the project codes in Clockify for all dev, code review AND testing [trialling new direct costs approach]

  • On Global Clockify, please use project #11242 Discovery Endpoints.
  • On Aus Clockify, please use TASK #11242 Discovery Endpoints, inside Project ‘Macdoch Regen Portal’

Slack - #11242-discovery-endpoints