I am wondering if we can use standard HTTP verbs here?   CREATE    - NEW -> POST (idempotent - no)    - IFNEW -> PUT (idempotent - yes)  UPDATE    - REPLACE -> POST (idempotent - no)    - FORCE -> PUT (idempotent - yes)        I think it will be easier to understand if CREATE and UPDATE are two separate endpoints. 