Automation REST API - Upload a new config file, or edit an existing file

Sample PHP code to upload to the REST API

    $target_url = '';
    //This needs to be the full path to the file you want to send.
    $file_name_with_full_path = realpath('./schema.xml');
    // If this file exists it will be updated. If it doesn't exist, it will be created.

      if (function_exists('curl_file_create')) {
            $cFile = curl_file_create($file_name_with_full_path);
        } else { //
            $cFile = '@' . realpath($file_name_with_full_path);
    // These are the extra fields that the REST API will expect
    $post = array(
      'api_key' => 'YOUR_OPENSOLR_REST_API_KEY',
      'userfile'=> $cFile
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$target_url);
    curl_setopt($ch, CURLOPT_POST,1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    $result=curl_exec ($ch);
    curl_close ($ch);
    echo $result;

Sample HTML Form

    <form method="post" action="" enctype="multipart/form-data" />
      <label for="core_name">Core Name:</label>
      <input type="text" name="core_name" size="65" /><br />

      <label for="email">Opensolr Registration Email:</label>
      <input type="text" name="email" size="65" /><br />
      <label for="api_key">Opensolr API Key:</label>
      <input type="text" name="api_key" size="65" /><br />
      <label for="userfile">File To Upload:</label>
      <input type="file" name="userfile" /><br /><br />
      <input type="submit" value="     Upload File     ">