L'unico modo possibile per cambiare type di un contenuto è quello di specializzarlo in un tipo "figlio". Questo significa che il tipo figlio target deve necessariamente estendere il type che si sta per cambiare. In pratica si può cambiare type solo verso un sottotipo (subtype).
Il cambio type in Alfresco è permesso solo in direzione del type più specializzato (con più proprietà), cioè il type target deve essere definito con un elemento parent coerente con il type di partenza.
Via Web Services SOAP mi sembra non sia possibile invocarlo, non vedo nessuna istruzione CML relativa a questo.
Via JavaScript API c'è il metodo specializeType disponibile sul nodo, ad esempio:
node.specializeType("myPrefix:myCustomType");
Via Java API:
nodeService.setType(…)
Spero di essere stato chiaro :-P