| 602 | } | 602 | } |
| 603 | | 603 | |
| 604 | setAdditionalHeaders(request, args, baseUrl); | 604 | setAdditionalHeaders(request, args, baseUrl); |
| | 605 | |
| | 606 | // Check key permissions |
| | 607 | const permissionResponse = await fetch(`${baseUrl}/v1/auth/permission`, { |
| | 608 | headers: args.headers |
| | 609 | }); |
| | 610 | |
| | 611 | if (permissionResponse.ok) { |
| | 612 | const permissionJson = await permissionResponse.json(); |
| | 613 | |
| | 614 | if (permissionJson['permission'] !== 'admin') { |
| | 615 | return response.status(403).send({ error: true }); |
| | 616 | } |
| | 617 | } else { |
| | 618 | console.log('API Permission error:', permissionResponse.status, permissionResponse.statusText); |
| | 619 | return response.status(permissionResponse.status).send({ error: true }); |
| | 620 | } |
| | 621 | |
| 605 | const fetchResponse = await fetch(`${baseUrl}/v1/download`, args); | 622 | const fetchResponse = await fetch(`${baseUrl}/v1/download`, args); |
| 606 | | 623 | |
| 607 | if (!fetchResponse.ok) { | 624 | if (!fetchResponse.ok) { |