title: .Net Core Rest API Request/Response best practice
body: <p>I need some advice on how to best structure the requests and the responses for my Rest API.</p>
  
  <p>I'm mostly trying to limit myself to CRUD operations on one resources and I work with one object: for example if the ressource is "book" I end up with the following actions in the controller</p>
  
  <ul>
  <li>[HttpPost("books")] Book Create(Book book)</li>
  <li>[HttpGet("books")] Book Get(int id)</li>
  </ul>
  
  <p>This is relatively strait forward.</p>
  
  <p>Now for a more complex example for the creation of a resource, I need to receive a complexe object different from my ressource and return an object containing the resource and extra data
  For example for the Order resource I have a the following action in the controller:</p>
  
  <p>[HttpPost("/order")] CreateOrderResponse CreateOrder(CreateOrderRequest createOrderRequest)</p>
  
  <p>Here my action will use the "CreateOrderRequest" object to create to build an Order. 
  Then I would like to return a "createOrderResponse" object which contains the Order but also extra information that the client needs.</p>
  
  <p>I'm not sure this is the best way to go, any advice ?</p>
  
  <p>Thanks in advance for your help</p>