manu-sapiens's picture
removing check on Data. Added support for Patches. Added serial openapi patch
74bd902
const axios = require('axios');
const yaml = require('js-yaml');
async function testUrl(apiUrl) {
try {
const result = await axios.get(apiUrl);
console.log(`SUCCESS: FETCH ${apiUrl}`);
let schemaText = result.data;
console.log(`SUCCESS: READ DATA from ${apiUrl}`);
let parsedSchema;
if (apiUrl.endsWith('.yaml') || apiUrl.endsWith('.yml')) {
parsedSchema = yaml.load(schemaText);
console.log(`SUCCESS: RESOLVE FROM YAML ${apiUrl}`);
} else {
if (typeof schemaText === 'string') {
try {
schemaText = JSON.parse(schemaText);
console.log(`SUCCESS: PARSE JSON from ${apiUrl}`);
} catch (error) {
console.error(`FAILURE: PARSE JSON from ${apiUrl} with error = ${error}`);
throw error;
}
}
parsedSchema = schemaText;
console.log(`SUCCESS: RESOLVE FROM JSON ${apiUrl}`);
}
console.log(`Parsed schema from ${apiUrl}:`, parsedSchema);
} catch (error) {
console.error(`Failed to load spec from ${apiUrl}`, error);
}
}
// Replace with the URL you want to test
testUrl('https:api.elevenlabs.io/openapi.json');
testUrl('https:api.replicate.com/openapi.json');