Colin Kaepernick and John Elway met on Thursday, according to Eric Branch and Broncos beat writer Mike Klis. I think most people understand this situation to some extent, but I am still getting a lot of questions about tampering.
When a player is under contract, they are normally not allowed to speak to another team about a trade, or even what would happen in the event of a release. This situation is different for a very specific reason: the 49ers have granted Colin Kaepernick permission to pursue a trade with another team. This gives Kaepernick and his agents the chance to speak with any team in the NFL interested in acquiring him.
It is possible the 49ers would give him limited permission, saying, you can only speak with Teams X, Y, and Z, but more than likely they gave him broad permission to speak to whomever is interested. Once the 49ers explicitly give him permission (likely in writing to prevent any tampering complaints), he can talk to whomever he wants, and it is not tampering.
Back during the NFL Combine we learned that Kaepernick's agents asked the 49ers for permission to pursue a trade. It took some time, but we eventually learned that request was granted. Trent Baalke has said the team wants to keep Kaepernick, but they are willing to give him the opportunity to look elsewhere. Whatever the heck that means.
Someone also asked why Kaepernick himself can speak with Elway, and not just his agents. The only time negotiations can happen between only agents and teams (and not the specific player) is during the two-day tampering period before free agency opens. Players are not allowed to speak with the opposing team about a deal, only their agents can do so. That does not apply in this situation.
So, one last time...IT'S NOT TAMPERING.