public Attachment CreateResponseAttachment(string documentSelfLink, IResponseContext responseContext, string attachmentId, string surveyData) { int maxRetries = 2; TimeSpan interval = TimeSpan.FromMilliseconds(100); RetryStrategies retryStrategy = new RetryStrategies(maxRetries, interval); var attachment = retryStrategy.ExecuteWithRetry <Attachment>(() => Client.CreateAttachmentAsync(documentSelfLink, new { id = attachmentId, contentType = "text/plain", media = "link to your media", RootResponseId = responseContext.RootResponseId, SurveyDocument = surveyData }).Result, (ex, consumedRetries, remainingRetries) => RetryHandlerForCreateResponseAttachment(ex, consumedRetries, remainingRetries, responseContext, attachmentId) ); return(attachment); }