deriveEndpoint
generic