Behavior of create task API call?

Behavior of create task API call?

I'm having some issues with the API task create method - some could probably be cleared up by documentation, but some I think are bugs.

1) If I create the task specifying both start/end date and duration, it appears that start/end date takes precedence and the duration specified is ignored.

2) It appears that the duration_type value is being ignored and that the duration is always in days.  I.e., I specify "duration=20" and "duration_type=hrs", the duration for the task is set to "20 days" (with the work matching).

3) It also appears that there is no way to set the work without setting either duration or start/end times - there are tasks we would like to create where we know the task will be done "part-time" over a calendar period, so the work isn't purely based on the calendar duration of the task.