tcolorbox: \newtcbtheorem referencing

Since tcolorbox version 2.41 (2013/07/23), there is integrated support for the cleveref package. You just have to move \crefname and \Crefname as options into \newtcbtheorem:

\documentclass{article}
\usepackage[most]{tcolorbox}
\tcbuselibrary{theorems}
\usepackage{cleveref}
\newtcbtheorem[auto counter, number within = section,
  crefname={example}{Example},
  Crefname={Example}{Example} ]
{Example}{Exam\smash{p}le}{%
  breakable,
  fonttitle = \bfseries,
  colframe = blue!75!black,
  colback = blue!10
}{exa}
\begin{document}
\begin{Example}{Example}{exam}
  Some example
\end{Example}
\noindent
\Cref{exa:exam} and~\cref{exa:exam}.
\end{document}

The output is identical to that of the solution of Gonzalo Medina.


You need to define the format for the new object; in this case, for tcb@cnt@Example, using something like

\crefformat{tcb@cnt@Example}{example~#2#1#3}
\Crefformat{tcb@cnt@Example}{Example~#2#1#3}

or any other format you want. A complete example:

\documentclass{article}
\usepackage[most]{tcolorbox}
\usepackage{cleveref}

\makeatletter
\crefformat{tcb@cnt@Example}{example~#2#1#3}
\Crefformat{tcb@cnt@Example}{Example~#2#1#3}
\makeatother
\newtcbtheorem[auto counter, number within = section]
{Example}{Exam\smash{p}le}{%                                                        
  breakable,
  fonttitle = \bfseries,
  colframe = blue!75!black,
  colback = blue!10
}{exa}
\begin{document}
\begin{Example}{Example}{exam}
  Some example
\end{Example}
\noindent
\Cref{exa:exam} and~\cref{exa:exam}

\end{document}

enter image description here

The correct name to be used in \Crefformat, and \crefformat can be obtained from one of the warnings obtained in the original code using \Cref without the proper definitions:

LaTeX Warning: Cref reference format for label type `tcb@cnt@Example' undefined on input line 21.

As of 2020-09-08, the previous offered solutions do not work anymore. The cleveref 4.31 (2020-07-31) documentation provides an example and solution to this problem on page 372: the label type optional argument is used to feed cleveref with the needed name information.

MWE:

\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{theorems}
\usepackage{cleveref}

\newtcbtheorem{example}{Example}{label type=example}{exa}

\begin{document}

\begin{example}{title}{label}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
\end{example}
Checking if \textbf{cleveref} works: \cref{exa:label} and \Cref{exa:label}.

\end{document}

MWE results