An oracle, in the context of blockchains and smart contracts, is an agent that finds and verifies real-world occurrences and submits this information to a blockchain to be used by smart contracts.
Examples are: - Oraclize.it - ChainLink
Smart contracts live like in a walled garden, they cannot fetch external data on their own. Oraclize helps by acting as a data carrier, a reliable connection between Web APIs and your Dapp.
ChainLink is blockchain middleware that allows smart contracts to access key off-chain resources like data feeds, various web APIs, and traditional bank account payments.