WP send pretty much… everything with update request. You can examine wp_update_themes()
for logic, but data would include something like this for every theme installed:
┌──────────────────────────────────────────────────────────────────────────────┐
│ $request │
└──────────────────────────────────────────────────────────────────────────────┘
array (2) [
'active' => string (6) "twentysixteen"
'themes' => array (16) [
'twentysixteen' => array (7) [
'Name' => string (14) "Twenty Sixteen"
'Title' => string (14) "Twenty Sixteen"
'Version' => string (3) "1.3"
'Author' => string (18) "the WordPress team"
'Author URI' => string (22) "https://wordpress.org/"
'Template' => string (13) "twentysixteen"
'Stylesheet' => string (13) "twentysixteen"
]
]
]
┌──────────────────────────────────────────────────────────────────────────────┐
│ $translations │
└──────────────────────────────────────────────────────────────────────────────┘
array (8) [
'twentysixteen' => array (2) [
'ru_RU' => array (4) [
'POT-Creation-Date' => string (0) ""
'PO-Revision-Date' => string (24) "2015-12-08 08:43:28+0000"
'Project-Id-Version' => string (14) "Twenty Sixteen"
'X-Generator' => string (21) "GlotPress/1.1.0-alpha"
]
'uk' => array (4) [
'POT-Creation-Date' => string (0) ""
'PO-Revision-Date' => string (24) "2015-12-06 19:53:21+0000"
'Project-Id-Version' => string (14) "Twenty Sixteen"
'X-Generator' => string (21) "GlotPress/2.1.0-alpha"
]
]
]
┌──────────────────────────────────────────────────────────────────────────────┐
│ $locales │
└──────────────────────────────────────────────────────────────────────────────┘
array (2) [
string (5) "ru_RU"
string (2) "uk"
]
It’s not very clear from your question what you intend to do with this though. Update process is historically a mess to deal with and is unfriendly to modifications. I would recommend to look up and study existing updater customizations over just trying to do this from scratch.