JSON WCF web service - Critsend Event API

Concluído Postado Dec 27, 2012 Pago na entrega
Concluído Pago na entrega

I need a WCF C# web service (JSON) that can be called by Critsend ([login to view URL]).

Your deliverable should include a Visual studio (2012) C# solution with the following :

1. A WCF web service that can be called by Critsend Event API. Documentation: [login to view URL]

1.1 The web service will contain only 1 method called Getdata that accepts a JSON. e.g. localhost:8080/receive_critsend/GetData

1.2 The Critsend Webhook's API uses HMAC-SHA256 to authenticate requests. Every user has a unique Webhooks 'secret key'. This key is used to seed the HMAC-SHA256 algorithm. Each POST request contains header called X-Critsend-Webhooks-Signature used to authenticate the payload. This header's value is a 64-character hexadecimal string. To verify the Webhook request is originating from CritSend you encode the payload with the HMAC-SHA256 algorithm (using your Webhooks 'secret key' as a key and SHA256 digest mode) and compare the resulting hexdigest to the X-Critsend-Webhooks-Signature header's value (signature).

1.2.1 The 'secret key' should be a parameter in the [login to view URL]

1.3 An HTTP POST will be issued to the WCF URL at a fixed interval (e.g. 5 minutes) with all the events Critsend receives in the meantime. The POST request payload describes the collection of events using the Webhooks model, and consists of a UTF8-encoded JSON array of JSON objects (events), in the following format:

[

{

"category": "hard_bounce",

"date": "2011-09-02T14:39:53",

"recipient": "",

"mx": "[login to view URL]",

"tags": ["default", "tag1"]

},

{

"category": "blocked",

"date": "2011-09-02T14:55:53",

"recipient": "",

"mx": "[login to view URL]",

"tags": ["default", "tag2"]

},

...

]

1.4 The method will iterate through the JSON objects saving the content to a SQL Server Table. For simplicity, we just need one table, with the same columns as JSON fields (category,date,recipient...).

1.5 LOGS: It will also save the JSON received in a plain TXT file.

1.5 Web service should respond to the POST request with a 2XX response code to indicate successful delivery. Redirects (3XX response codes) are not followed, and no further delivery attempts will be made. Server errors (5xx response codes) are treated as failures and will be retried. All other response codes are ignored.

1.6 The WCF has to call another WCF URL posting the original JSON received from Critsend, including the header called X-Critsend-Webhooks-Signature used to authenticate the payload. For testing, the same project could be loaded two times, and the first one has to call the second one.

1.6.1 The WCF URL to be called has to be stored in the [login to view URL]

NOTES: Critsend provides free acounts and 50,000 emails to test. Emails could be sent using SMTP. Documentation could be found online: [login to view URL]

Programação C# Microsoft SQL

ID do Projeto: #4075251

Sobre o projeto

6 propostas Projeto remoto Ativo em Dec 28, 2012

Concedido a:

Kartoos

Dear, Will be done as per requirements....I am expert in WCF and json parsing/writing and web services.

$135 USD em 10 dias
(102 Comentários)
6.6

6 freelancers estão ofertando em média $201 nesse trabalho

salmanaim

I've experience creating JSON based WCF services in many of my projects. I've worked on it security/authentication as well so I know what are you talking about . Please check PM for my work samples.

$200 USD in 3 dias
(53 Comentários)
7.5
zamoldar

I've desired skils and experiances please contact with me

$200 USD in 3 dias
(27 Comentários)
6.6
sinharavi

Please read my private message

$220 USD in 8 dias
(46 Comentários)
6.1
codeteam17

I know how to do this. Please contact me.

$200 USD in 7 dias
(10 Comentários)
4.4
Sup

Hi, I'm interested.

$250 USD in 10 dias
(3 Comentários)
4.0