CPU.Notifications

<back to all web services

SendGridEvents

Requires Authentication
The following routes are available for this service:
POST/sendgridevents
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using CPU.Notifications.ServiceModel;

namespace CPU.Notifications.ServiceModel
{
    public partial class SendGridEvent
    {
        [DataMember(Name="sg_event_id")]
        public virtual string? SendGridEventId { get; set; }

        [DataMember(Name="sg_message_id")]
        public virtual string? SendGridMessageId { get; set; }

        public virtual string? Email { get; set; }
        public virtual long Timestamp { get; set; }
        [DataMember(Name="smtp-id")]
        public virtual string? SmtpId { get; set; }

        public virtual string? Event { get; set; }
        public virtual string? Type { get; set; }
        public virtual string[]? Category { get; set; }
        public virtual string? Reason { get; set; }
        public virtual string? Status { get; set; }
        public virtual string? UserAgent { get; set; }
        public virtual string? IP { get; set; }
        public virtual string? URL { get; set; }
        [DataMember(Name="url_offset")]
        public virtual string? URLOffset { get; set; }

        [DataMember(Name="sg_machine_open")]
        public virtual bool MachineOpen { get; set; }

        public virtual string? TLS { get; set; }
        [DataMember(Name="unique_args")]
        public virtual Dictionary<string, string>? UniqueArgs { get; set; }

        [DataMember(Name="custom_args")]
        public virtual Dictionary<string, string>? CustomArgs { get; set; }

        [DataMember(Name="marketing_campaign_id")]
        public virtual string? MarketingCampaignId { get; set; }

        [DataMember(Name="marketing_campaign_name")]
        public virtual string? MarketingCampaignName { get; set; }

        [DataMember(Name="singlesend_id")]
        public virtual string? SingleSendID { get; set; }

        [DataMember(Name="singlesend_name")]
        public virtual string? SingleSendName { get; set; }

        [DataMember(Name="bounce_classification")]
        public virtual string? BounceClassification { get; set; }
    }

    public partial class SendGridEvents
        : List<SendGridEvent>
    {
    }

}

C# SendGridEvents DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /sendgridevents HTTP/1.1 
Host: cpmwebservices-t.clarkpud.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

[]
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

(string)