AlbaApi

<back to all web services

AdminAppReq

The following routes are available for this service:
All Verbs/admin/app
All Verbs/admin/app/{Country}
All Verbs/admin/app/{Country}/{Lang}

export class SiteSection
{
    public route?: string;
    public public?: boolean;
    public parent?: string;
    public roles?: number;
    public hideFrom?: string[];
    public order?: number;

    public constructor(init?: Partial<SiteSection>) { (Object as any).assign(this, init); }
}

export class Entity implements IEntity
{
    public id?: string;

    public constructor(init?: Partial<Entity>) { (Object as any).assign(this, init); }
}

export class ListItem extends Entity
{
    public listId?: string;
    public country?: string;
    public relatedId?: string;
    public code?: string;
    public custom?: string;

    public constructor(init?: Partial<ListItem>) { super(init); (Object as any).assign(this, init); }
}

export class Country
{
    public name?: string;
    public languages?: { [index: string]: string; };

    public constructor(init?: Partial<Country>) { (Object as any).assign(this, init); }
}

export class Content extends Entity
{
    public section?: string;
    public itemId?: string;
    public itemCode?: string;
    public country?: string;
    public lang?: string;
    public app?: string;
    public companyId?: string;
    public company?: string;
    public elements?: { [index: string]: string; };

    public constructor(init?: Partial<Content>) { super(init); (Object as any).assign(this, init); }
}

// @Flags()
export enum Roles
{
    None = 0,
    Employee = 1,
    Member = 2,
    Employer = 4,
    Broker = 8,
    Developer = 16,
    SysAdmin = 32,
}

export class User
{
    public roles?: Roles;

    public constructor(init?: Partial<User>) { (Object as any).assign(this, init); }
}

export class ScriptTracker extends Entity
{
    public sprint?: string;
    public country?: string;
    public language?: string;
    public section?: string;
    public itemCode?: string;
    public element?: string;
    public value?: string;
    public isFromMerge?: boolean;

    public constructor(init?: Partial<ScriptTracker>) { super(init); (Object as any).assign(this, init); }
}

export class Configuration extends Entity
{
    public category?: string;
    public countries?: { [index: string]: Country; };
    public listItems?: ListItem[];
    public listRelationships?: { [index: string]: string; };
    public sectionElements?: { [index: string]: string[]; };
    public siteStructure?: { [index: string]: SiteSection; };
    public version?: number;
    public createdBy?: string;
    public dateCreated?: string;
    public updatedBy?: string;
    public dateUpdated?: string;

    public constructor(init?: Partial<Configuration>) { super(init); (Object as any).assign(this, init); }
}

export class AdminAppData
{
    public siteStructure?: { [index: string]: SiteSection; };
    public sectionElements?: { [index: string]: string[]; };
    public listRelationships?: { [index: string]: string; };
    public listItems?: ListItem[];
    public countries?: { [index: string]: Country; };
    public content?: Content[];
    public user?: User;
    public scriptTrackerRecords?: ScriptTracker[];
    public configurations?: Configuration[];

    public constructor(init?: Partial<AdminAppData>) { (Object as any).assign(this, init); }
}

export class AdminAppReq
{
    public country?: string;
    public lang?: string;

    public constructor(init?: Partial<AdminAppReq>) { (Object as any).assign(this, init); }
}

TypeScript AdminAppReq DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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: application/json
Content-Type: application/json
Content-Length: length

{"country":"String","lang":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
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"}]}