Property permission in Xdata (SwaggerUI)

You can do that via customization scripts. Example:

procedure OnColumnGenerated(Args: TColumnGeneratedArgs);
begin
  if Args.DBField.FieldName = 'CreationDate' then
  begin              
    TCodeSnippetExpression(Args.ColumnAttr.Arguments[1].Value).Value := '[TColumnProp.NoUpdate]';
  end;
end;

If you want different DTOs (classes) for different endpoints, then in this case you need to effectively create different DTO classes for each endpoint.