Represents the Attachment object.
Inheritance: NamedModel
 /// <summary>
 /// <para>Attaches a URL to the Row.</para>
 /// <para>It mirrors To the following Smartsheet REST API method:
 /// POST /sheets/{sheetId}/rows/{rowId}/attachments</para>
 /// <remarks><para>attachmentSubType is valid only for GOOGLE_DRIVE attachments which are Google Docs.
 /// It can optionally be included to indicate the type of a file.
 /// The following attachmentSubTypes are valid for GOOGLE_DRIVE attachments "DOCUMENT", "SPREADSHEET", "PRESENTATION", "PDF", "DRAWING".</para>
 /// <para>When the attachment type is BOX_COM, DROPBOX, or GOOGLE_DRIVE (without an attachmentSubType specified),
 /// the mimeType will be derived by the file extension specified on the “name”.</para>
 /// </remarks>
 /// </summary>
 /// <param name="sheetId"> the sheetId </param>
 /// <param name="rowId"> the row Id </param>
 /// <param name="attachment"> the attachment object </param>
 /// <returns> the newly created Attachment </returns>
 /// <exception cref="System.InvalidOperationException"> if any argument is null or empty string </exception>
 /// <exception cref="InvalidRequestException"> if there is any problem with the REST API request </exception>
 /// <exception cref="AuthorizationException"> if there is any problem with  the REST API authorization (access token) </exception>
 /// <exception cref="ResourceNotFoundException"> if the resource cannot be found </exception>
 /// <exception cref="ServiceUnavailableException"> if the REST API service is not available (possibly due To rate limiting) </exception>
 /// <exception cref="SmartsheetException"> if there is any other error during the operation </exception>
 public Attachment AttachUrl(long sheetId, long rowId, Attachment attachment)
 {
     return this.CreateResource("sheets/" + sheetId + "/rows/" + rowId + "/attachments", typeof(Attachment), attachment);
 }
 public virtual Attachment AttachURL(long objectId, Attachment attachment)
 {
     throw new System.NotImplementedException();
 }
 /// <summary>
 /// <para>Attaches a URL to the Comment.</para>
 /// <para>It mirrors To the following Smartsheet REST API method:
 /// POST /sheets/{sheetId}/comments/{commentId}/attachments</para>
 /// <remarks><para>attachmentSubType is valid only for GOOGLE_DRIVE attachments which are Google Docs.
 /// It can optionally be included to indicate the type of a file.
 /// The following attachmentSubTypes are valid for GOOGLE_DRIVE attachments "DOCUMENT", "SPREADSHEET", "PRESENTATION", "PDF", "DRAWING".</para>
 /// <para>When the attachment type is BOX_COM, DROPBOX, or GOOGLE_DRIVE (without an attachmentSubType specified),
 /// the mimeType will be derived by the file extension specified on the "name".</para>
 /// </remarks>
 /// </summary>
 /// <param name="sheetId"> the sheetId </param>
 /// <param name="commentId"> the comment Id </param>
 /// <param name="attachment"> the attachment object </param>
 /// <returns> the newly created Attachment </returns>
 /// <exception cref="System.InvalidOperationException"> if any argument is null or empty string </exception>
 /// <exception cref="InvalidRequestException"> if there is any problem with the REST API request </exception>
 /// <exception cref="AuthorizationException"> if there is any problem with  the REST API authorization (access token) </exception>
 /// <exception cref="ResourceNotFoundException"> if the resource cannot be found </exception>
 /// <exception cref="ServiceUnavailableException"> if the REST API service is not available (possibly due To rate limiting) </exception>
 /// <exception cref="SmartsheetException"> if there is any other error during the operation </exception>
 public virtual Attachment AttachUrl(long sheetId, long commentId, Attachment attachment)
 {
     return this.CreateResource("sheets/" + sheetId + "/comments/" + commentId + "/attachments", typeof(Attachment), attachment);
 }