All Verbs | /admin/app | ||
---|---|---|---|
All Verbs | /admin/app/{Country} | ||
All Verbs | /admin/app/{Country}/{Lang} |
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using AlbaApi.ServiceModel;
using AlbaApi.Application.DTOs;
using AlbaApi.Model;
using TasSyd.Model.Base;
using TasSyd.Model;
using TasSyd.Model.Enums;
namespace AlbaApi.Application.DTOs
{
public partial class AdminAppData
{
public AdminAppData()
{
SiteStructure = new Dictionary<string, SiteSection>{};
SectionElements = new Dictionary<string, List<String>>{};
ListRelationships = new Dictionary<string, string>{};
ListItems = new List<ListItem>{};
Countries = new Dictionary<string, Country>{};
Content = new List<Content>{};
ScriptTrackerRecords = new List<ScriptTracker>{};
}
public virtual Dictionary<string, SiteSection> SiteStructure { get; set; }
public virtual Dictionary<string, List<String>> SectionElements { get; set; }
public virtual Dictionary<string, string> ListRelationships { get; set; }
public virtual List<ListItem> ListItems { get; set; }
public virtual Dictionary<string, Country> Countries { get; set; }
public virtual List<Content> Content { get; set; }
public virtual User User { get; set; }
public virtual List<ScriptTracker> ScriptTrackerRecords { get; set; }
public virtual IEnumerable<Configuration> Configurations { get; set; }
}
}
namespace AlbaApi.Model
{
public partial class Configuration
: Entity
{
public Configuration()
{
Countries = new Dictionary<string, Country>{};
ListItems = new List<ListItem>{};
ListRelationships = new Dictionary<string, string>{};
SectionElements = new Dictionary<string, List<String>>{};
SiteStructure = new Dictionary<string, SiteSection>{};
}
public virtual string Category { get; set; }
public virtual Dictionary<string, Country> Countries { get; set; }
public virtual List<ListItem> ListItems { get; set; }
public virtual Dictionary<string, string> ListRelationships { get; set; }
public virtual Dictionary<string, List<String>> SectionElements { get; set; }
public virtual Dictionary<string, SiteSection> SiteStructure { get; set; }
public virtual int Version { get; set; }
public virtual string CreatedBy { get; set; }
public virtual DateTime? DateCreated { get; set; }
public virtual string UpdatedBy { get; set; }
public virtual DateTime? DateUpdated { get; set; }
}
public partial class Country
{
public Country()
{
Languages = new Dictionary<string, string>{};
}
public virtual string Name { get; set; }
public virtual Dictionary<string, string> Languages { get; set; }
}
public partial class ListItem
: Entity
{
public virtual string ListId { get; set; }
public virtual string Country { get; set; }
public virtual string RelatedId { get; set; }
public virtual string Code { get; set; }
public virtual string Custom { get; set; }
}
public partial class ScriptTracker
: Entity
{
public virtual string Sprint { get; set; }
public virtual string Country { get; set; }
public virtual string Language { get; set; }
public virtual string Section { get; set; }
public virtual string ItemCode { get; set; }
public virtual string Element { get; set; }
public virtual string Value { get; set; }
public virtual bool IsFromMerge { get; set; }
}
public partial class SiteSection
{
public SiteSection()
{
HideFrom = new List<string>{};
}
public virtual string Route { get; set; }
public virtual bool Public { get; set; }
public virtual string Parent { get; set; }
public virtual int Roles { get; set; }
public virtual List<string> HideFrom { get; set; }
public virtual int Order { get; set; }
}
public partial class User
{
public virtual Roles Roles { get; set; }
}
}
namespace AlbaApi.ServiceModel
{
public partial class AdminAppReq
{
public virtual string Country { get; set; }
public virtual string Lang { get; set; }
}
}
namespace TasSyd.Model
{
public partial class Content
: Entity
{
public Content()
{
Elements = new Dictionary<string, string>{};
}
public virtual string Section { get; set; }
public virtual string ItemId { get; set; }
public virtual string ItemCode { get; set; }
public virtual string Country { get; set; }
public virtual string Lang { get; set; }
public virtual string App { get; set; }
public virtual string CompanyId { get; set; }
public virtual string Company { get; set; }
public virtual Dictionary<string, string> Elements { get; set; }
}
}
namespace TasSyd.Model.Base
{
public partial class Entity
: IEntity
{
public virtual string Id { get; set; }
}
}
namespace TasSyd.Model.Enums
{
[Flags]
public enum Roles
{
None = 0,
Employee = 1,
Member = 2,
Employer = 4,
Broker = 8,
Developer = 16,
SysAdmin = 32,
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /admin/app HTTP/1.1
Host: hcbtas-q-albamfs-api.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
country: String,
lang: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { siteStructure: { String: { route: String, public: False, parent: String, roles: 0, hideFrom: [ String ], order: 0 } }, sectionElements: { String: [ String ] }, listRelationships: { String: String }, listItems: [ { listId: String, country: String, relatedId: String, code: String, custom: String, id: String } ], countries: { String: { name: String, languages: { String: String } } }, content: [ { section: String, itemId: String, itemCode: String, country: String, lang: String, app: String, companyId: String, company: String, elements: { String: String }, id: String } ], user: { roles: 0 }, scriptTrackerRecords: [ { sprint: String, country: String, language: String, section: String, itemCode: String, element: String, value: String, isFromMerge: False, id: String } ] }