BIP-22
getblocktemplate - Fundamentals.
Lets mining software ask a node for a full draft of the next block, so it can build and adjust the block itself.
Instead of sending only a block's header to work on, the getblocktemplate command sends the whole block, payments included. Specialised mining software can then put the block together. This matters to miners rather than everyday users.
Read BIP-22 in full on GitHubAll BIPs