Ajax call URL 404’ing when pushed to staging server

Take a look at wp localize script. It’ll allow you to encode your url into a separate javascript object before your script is loaded. get_template_directory retrieves the absolute path to the directory of the current theme. Use it in case your WP install directory is different than your local development. The theme directory can also change if the folder is renamed or WP_CONTENT is in a different location.

<?php

// Register the script
wp_register_script( 'some_handle', 'path/to/myscript.js' );

// Localize the script with new data
$translation_array = array(
    'send_form_php' =>  get_template_directory() . '/page-templates/template-parts/template-logic/send-form.php', 
);
wp_localize_script( 'some_handle', 'object_name', $translation_array );

// Enqueued script with localized data.
wp_enqueue_script( 'some_handle' );

Then in your js file you can use:

<script>
// alerts 'Path to the send-form.php'
alert( object_name.send_form_php );
</script>