Wie man Bilder über API postet?

Ich dachte, ich würde einen anderen Ansatz wählen und den S3-Speicher verwenden. Ich habe die Anweisungen hier befolgt, um einen AWS S3-Bucket einzurichten. Hier sind meine Einstellungen:

Und hier ist mein Code:

	async uploadExternalImage(imageReferences: string[]): Promise<string[]> {
		const imageUrls: string[] = [];
		for (const ref of imageReferences) {
			const filePath = this.app.metadataCache.getFirstLinkpathDest(ref, this.activeFile.name)?.path;
			if (filePath) {
				const file = this.app.vault.getAbstractFileByPath(filePath) as TFile;
				if (file) {
					try {
						const url = `${this.settings.baseUrl}/uploads/generate-presigned-put.json`;
						//const imgfile = await this.app.vault.readBinary(file);
						const img = {
							type: "composer",
							file_name: file.name,
							file_size: file.stat.size,
						}
						console.log(JSON.stringify(img));
						const headers = {
							"Content-Type": "application/json",
							"Api-Key": this.settings.apiKey,
							"Api-Username": this.settings.disUser,
						};
						const response = await requestUrl({
							url: url,
							method: "POST",
							body: JSON.stringify(img),
							throw: false,
							headers: headers
						})
						console.log(response.json)
					} catch (error) {
						console.error(`Error uploading: ${error}`);
						//console.log(response.json)
					}
				} else {
					console.error('error')
				}
			} else {
				console.error('error')
			}
		}
		return imageUrls;
	}

Nun, ich erkenne, dass dies derzeit nicht funktionieren wird, da ich die Datei noch nicht hochlade. Nach dem, was ich in der Dokumentation gelesen habe, würde ich ein JSON-Objekt senden, das den Typ, den Dateinamen und die Dateigröße enthält. Die API sollte mit einem Schlüssel und einer URL antworten, die ich für die eigentliche Dateiübertragung verwenden kann. Aber zu diesem Zeitpunkt erhalte ich die folgende Fehlermeldung:

{
    "errors": [
        "Die angeforderte URL oder Ressource konnte nicht gefunden werden."
    ],
    "error_type": "not_found"
}

[
“Die angeforderte URL oder Ressource konnte nicht gefunden werden.”
]

Ich habe meinen API-Schlüssel überprüft, um sicherzustellen, dass er Berechtigungen hat, das tut er. Aber ich habe trotzdem einen neuen erstellt. Und einen globalen. Keiner davon funktioniert. Gleicher Fehlercode. Was mache ich falsch?

Bearbeitung, hier ist das img-Objekt:

{"type":"composer","file_name":"face2.jpg","file_size":17342}