ASH.ResourceLibrary.WebApi

<back to all web services

HealthCheckRequest

The following routes are available for this service:
All Verbs/health
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using ASH.Services.HealthChecks.ServiceStack;
using ASH.Services.HealthChecks.DTO;
using ASH.Services.HealthChecks;

namespace ASH.Services.HealthChecks
{
    [Flags]
    [DataContract]
    public enum HealthStatus
    {
        Healthy = 0,
        Degraded = 4,
        Unhealthy = 8,
    }

}

namespace ASH.Services.HealthChecks.DTO
{
    [DataContract]
    public partial class HealthReport
    {
        [DataMember]
        public virtual IReadOnlyDictionary<string, HealthReportEntry> Entries { get; set; }

        [DataMember]
        public virtual HealthStatus ApplicationStatus { get; set; }

        [DataMember]
        public virtual TimeSpan Duration { get; set; }
    }

    [DataContract]
    public partial class HealthReportEntry
    {
        [DataMember]
        public virtual HealthStatus Status { get; set; }

        [DataMember]
        public virtual string Description { get; set; }

        [DataMember]
        public virtual TimeSpan Duration { get; set; }

        [DataMember]
        public virtual Exception Exception { get; set; }

        [DataMember]
        public virtual IReadOnlyDictionary<string, Object> Data { get; set; }
    }

}

namespace ASH.Services.HealthChecks.ServiceStack
{
    public partial class HealthCheckRequest
    {
    }

}

C# HealthCheckRequest 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 /health HTTP/1.1 
Host: resourcelibrary.api.ashcompanies.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{Unable to show example output for type 'HealthReport' using the custom 'csv' filter}No parameterless constructor defined for this object.