Create Opportunity Endpoint
Last updated
app.post('/test-interface/datasets/:testDatasetIdentifier/opportunities', (req, res) => {
const opportunityType = req.body['@type'];
const criteria = req.body['test:testOpportunityCriteria'];
switch (opportunityType) {
case 'ScheduledSession':
switch (criteria) {
case 'https://openactive.io/test-interface#TestOpportunityBookable':
createTestOpportunityBookableScheduledSession(req, res);
break;
case 'https://openactive.io/test-interface#TestOpportunityBookableCancellable':
createTestOpportunityBookableCancellableScheduledSession(req, res);
break;
default:
res.sendStatus(404);
break;
}
break;
case 'Slot': {
const facilityUseType = req.body.facilityUse['@type'];
switch (facilityUseType) {
case 'IndividualFacilityUse':
switch (criteria) {
case 'https://openactive.io/test-interface#TestOpportunityBookable':
createTestOpportunityBookableIfuSlot(req, res);
break;
case 'https://openactive.io/test-interface#TestOpportunityBookableCancellable':
createTestOpportunityBookableCancellableIfuSlot(req, res);
break;
default:
res.sendStatus(404);
break;
}
break;
default:
res.sendStatus(404);
break;
}
}
default:
res.sendStatus(404);
break;
}
});