title: Can I create BIM 360 Pushpin issues using server-side APIs (not Forge Viewer)?
body: <p>In the <a href="https://forge.autodesk.com/en/docs/bim360/v1/tutorials/pushpins/create-pushpin/" rel="nofollow noreferrer">https://forge.autodesk.com/en/docs/bim360/v1/tutorials/pushpins/create-pushpin/</a> documentation sample it shows how to create a document-related (Pushpin) issue, but it utilizes the Autodesk Forge Viewer to get the selected sheet in the document (attributes.sheet_metadata.sheetGuid), the location on the sheet (attributes.pushpin_attributes.location), and the view state (attributes.pushpin_attributes.viewer_state) in order to be passed to the actual server-side POST /issues/v1/containers/{container-id}/quality-issues API call.</p>
  
  <p>What I need is to call only the server-side API, as I need to enter hundreds of issues automatically without showing the Viewer for each issue I add to BIM 360.
  Is there any way to get the sheets GUIDs from a BIM 360 document to insert to the call without the Viewer Frontend API, as well as a programatic way to generate issue.position and issue.viewerState objects to pass to the call?</p>
  
  <p>I have reviewed the question <a href="https://stackoverflow.com/questions/54124229/can-i-create-document-pushpin-issues-via-api">Can I create document (pushpin) issues via api?</a> , it is pointing to the same direction, but doesn't give details on how to use the server-side APIs to implement this.</p>
  
  <pre class="lang-js prettyprint-override"><code>var issue = PushPinExtensionHandle.getItemById('0');
  
  var data = {
  
      sheet_metadata: { // `viewerApp.selectedItem` references the current sheet
        is3D: viewerApp.selectedItem.is3D(),
        sheetGuid: viewerApp.selectedItem.guid(),
        sheetName: viewerApp.selectedItem.name()
      },
      pushpin_attributes: { // Data about the pushpin
        type: 'TwoDVectorPushpin', // This is the only type currently available
        object_id: issue.objectId, // (Only for 3D models) The object the pushpin is situated on.
        location: issue.position, // The x, y, z coordinates of the pushpin.
        viewer_state: issue.viewerState // The current viewer state. For example, angle, camera, zoom.
      },
    }
  };
  </code></pre>
  
  <p>I'm using NodeJS, but any code sample in other languages would be welcomed.</p>