Upload fine-tune file on API OpenAI

I’m trying to upload a fine-tune file in API Open AI with php and cURL.

This is the php script.

<?php 

// API KEY per l'autenticazione 
$api_key = "......"; 

// ID dell'organizzazione 
//Accesso OpenAI con account Google globalplaninvest@gmail.com 
$org_id = "org-......"; 

//Caricamento del file di addestramento nell'API Open AI 

echo "Id training file: ".load_training_file_on_Open_AI_API($api_key, $org_id)."<br>"; 

function load_training_file_on_Open_AI_API($api_key, $org_id) { 
	$url = "https://api.openai.com/v1/files"; 

	// Percorso alla cartella del file JSON di addestramento $
	jsonFileFolderPath = 'https://planimmobili.com/OpenAI/'; 

	// Nome file di addestramento 
	$jsonFileName = "PlanBuy_Chat_Model_Dataset.jsonl"; 

	// Percorso del file JSON di addestramento 
	$jsonFilePath = $jsonFileFolderPath.$jsonFileName; 
	echo "url jsonFilePath: ".$jsonFilePath."<br>"; //debug 

	// Carica il contenuto del file JSON 
	$jsonData = file_get_contents($jsonFilePath); //test file 
	echo "result from da jsonData: ".$jsonData."<br>>"; 

	//Headers di autenticazione per accesso API 
	$headers = array ( "Authorization: Bearer {$api_key}", "OpenAI-Organization: {$org_id}" ); 

	// Parametri per la restituzione dell'output 
	$data = array ( 'purpose' => 'fine-tune', 'file' => $jsonFilePath ); 

	// Inizializzazione sessione cURL 
	$ch = curl_init($url); 
	
	// SESSIONE CURL 
	curl_setopt($ch, CURLOPT_URL, $url); 
	curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
	curl_setopt($ch, CURLOPT_POST, 1); 
	curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); 
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

	// Esecuzione della richiesta HTTP e restituzione del risultato 
	$result = curl_exec($ch); 

	// Gestione dell'errore sella sessione cURL 
	if (curl_errno($ch)) { 
		echo 'Errore risposta cURL:' . curl_error($ch); 
	} 
	
	//chiusura sessione cURL 
	curl_close($ch); 
	
	// Decodifica della risposta 
	JSON $response = json_decode($result, true); 
	
	// Visualizza l'intero oggetto JSON decodificato 
	echo "Oggetto json decodificato: "; // debug 
	var_dump($response); //debug 
	
	// Estrazione di una specifica chiave 
	if (isset($response["id"])) { 
		echo "ID del file: " . $response["id"]; 
	} 
	else { 
		echo "Errore nel caricamento del file."; 
	} 

	return addslashes($response["id"]); 
} 

?>

This is the server return:

url jsonFilePath: @PlanBuy_Chat_Model_Dataset.jsonl

result from da jsonData:

Oggetto json decodificato:
array(1) { [“error”]=> array(4) { [“message”]=> string(123) “Additional properties are not allowed ('{“purpose”:“fine-tune”,“file”:”@PlanBuy_Chat_Model_Dataset.jsonl"}’ was unexpected)" [“type”]=> string(21) “invalid_request_error” [“param”]=> NULL [“code”]=> NULL } }

Errore nel caricamento del file.

Id training file:

Someone can help me?

Thank you so much.