This is not really an answer but more an explenation to how stuff works.
What do you mean no post id?
Think about it, you want to
update a post meta but which post?
If you are trying to create a new post you need a different code.
if you want to update a specific post you must tell wordpress
which one to update meaning you must attach a post ID.
update_post_meta function clearly states that the ID is required.
Since i am pretty sure you actually want to create a new post
from scracth and not update an exisiting post here is an example
how you can do that.
$post = array(
'post_title' => 'some title',
'post_status' => 'publish',
'post_type' => 'custom_post_name'
);
$new_post_id = wp_insert_post($post, 10, 1);
// Do the wp_insert_post action to insert it
do_action('wp_insert_post', 'wp_insert_post', 10, 1);
update_post_meta($new_post_id, 'some_meta_field', 'some_data');