| POST | /CreateKey | 
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Paysecure.ServiceModel;
using Paysecure.ServiceModel.Types;
namespace Paysecure.ServiceModel
{
    [DataContract]
    public partial class CreateKeySession
        : PaysecureResponseInternal
    {
        [DataMember]
        public virtual string KeyId { get; set; }
        [DataMember]
        public virtual string Modulus { get; set; }
        [DataMember]
        public virtual string Exponent { get; set; }
        [DataMember]
        public virtual string ErrorMessage { get; set; }
        [DataMember]
        public virtual string ErrorCode { get; set; }
    }
    [DataContract]
    public partial class CreateKeySessionRequest
    {
        [DataMember]
        public virtual RequestorCredentials Credentials { get; set; }
        [DataMember]
        public virtual int TTLInMinutes { get; set; }
    }
}
namespace Paysecure.ServiceModel.Types
{
    [DataContract]
    public partial class InOutTimes
    {
    }
    [DataContract]
    public partial class PaysecureResponseInternal
    {
        [DataMember(EmitDefaultValue=false)]
        public virtual RequestTimestamps Timestamps { get; set; }
    }
    public partial class RequestorCredentials
    {
        [Required]
        public virtual string MerchantId { get; set; }
        [Required]
        public virtual string UserName { get; set; }
        [Required]
        public virtual string Password { get; set; }
        [Required]
        public virtual string Version { get; set; }
    }
    [DataContract]
    public partial class RequestTimestamps
    {
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes AppLayer { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes ParentLookup { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes RetryLookup { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes GetCardData { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes CardTokenize { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes CardEncrypt { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes DBInsert { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes BackendProcess { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes DBUpdate { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes ParentUpdate { get; set; }
        [DataMember(EmitDefaultValue=false)]
        public virtual InOutTimes Network { get; set; }
    }
}
C# CreateKeySessionRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /CreateKey HTTP/1.1 
Host: api.paysecure.acculynk.net 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Credentials":{"MerchantId":"String","UserName":"String","Password":"String","Version":"String"},"TTLInMinutes":0}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"KeyId":"String","Modulus":"String","Exponent":"String","ErrorMessage":"String","ErrorCode":"String","Timestamps":{"AppLayer":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"ParentLookup":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"RetryLookup":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"GetCardData":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"CardTokenize":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"CardEncrypt":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"DBInsert":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"BackendProcess":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"DBUpdate":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"ParentUpdate":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"},"Network":{"InTime":"\/Date(-62135596800000-0000)\/","OutTime":"\/Date(-62135596800000-0000)\/"}}}