def METHOD_NAME(self, request, pk, version):
    """
    Return a single course by ID
    """
    # Wrap the ES get in a try/catch to we control the exception we emit — it would
    # raise and end up in a 500 error otherwise
    try:
        query_response = ES_CLIENT.get(index=self._meta.indexer.index_name, id=pk)
    except NotFoundError:
        return Response(status=404)
    # Format a clean course object as a response
    return Response(self._meta.indexer.format_es_object_for_api(query_response))