I was wondering is it possible to create a surface from a Revit model ?
There are retaining walls etc in the revit model !
Yes it is but it's not worth it really as revit uses slabs and cant form curved surfaces or use breaklines etc.
You can use an exported model and explode fully. Flip to the bottom/side views and delete all faces you do not want then use the top faces in a a surface. Where Retaining walls are you will need to expode & convert to or trace with 3d polylines to form non vertical edges.
I have done this but the surface is really rubbish and afterwards have generally wondered why I didin't just recreate it from scratch with Civil3d enities which would have created a better & more realistic surface model.
Honestly I reconmend working the other way around. Create the surface in Civil3d export & convert the triangles as regions then import as mass solid family (not a surface import) into revit. works a lot better with the quality in revit.