"use strict";
export class AuditBase {
/** @param {{createdDate?:string,createdBy?:string,modifiedDate?:string,modifiedBy?:string,deletedDate?:string,deletedBy?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
createdDate;
/** @type {string} */
createdBy;
/** @type {string} */
modifiedDate;
/** @type {string} */
modifiedBy;
/** @type {?string} */
deletedDate;
/** @type {string} */
deletedBy;
}
export class Artist extends AuditBase {
/** @param {{id?:number,firstName?:string,lastName?:string,yearDied?:number,type?:string[],score?:number,rank?:number,createdDate?:string,createdBy?:string,modifiedDate?:string,modifiedBy?:string,deletedDate?:string,deletedBy?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
id;
/** @type {?string} */
firstName;
/** @type {string} */
lastName;
/** @type {?number} */
yearDied;
/** @type {?string[]} */
type;
/** @type {number} */
score;
/** @type {number} */
rank;
}
export class CreativeArtist {
/** @param {{id?:number,creativeId?:number,artistId?:number,artist?:Artist}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
id;
/** @type {number} */
creativeId;
/** @type {number} */
artistId;
/** @type {Artist} */
artist;
}
export class Modifier extends AuditBase {
/** @param {{id?:number,name?:string,category?:string,description?:string,score?:number,rank?:number,createdDate?:string,createdBy?:string,modifiedDate?:string,modifiedBy?:string,deletedDate?:string,deletedBy?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
id;
/** @type {string} */
name;
/** @type {string} */
category;
/** @type {?string} */
description;
/** @type {number} */
score;
/** @type {number} */
rank;
}
export class CreativeModifier {
/** @param {{id?:number,creativeId?:number,modifierId?:number,modifier?:Modifier}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
id;
/** @type {number} */
creativeId;
/** @type {number} */
modifierId;
/** @type {Modifier} */
modifier;
}
export class Artifact extends AuditBase {
/** @param {{id?:number,creativeId?:number,fileName?:string,filePath?:string,contentType?:string,contentLength?:number,width?:number,height?:number,seed?:number,prompt?:string,nsfw?:boolean,averageHash?:number,perceptualHash?:number,differenceHash?:number,background?:string,lqip?:string,quality?:number,likesCount?:number,albumsCount?:number,downloadsCount?:number,searchCount?:number,temporalScore?:number,score?:number,rank?:number,refId?:string,versions?:{ [index:string]: string; },createdDate?:string,createdBy?:string,modifiedDate?:string,modifiedBy?:string,deletedDate?:string,deletedBy?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
id;
/** @type {number} */
creativeId;
/** @type {string} */
fileName;
/** @type {string} */
filePath;
/** @type {string} */
contentType;
/** @type {number} */
contentLength;
/** @type {number} */
width;
/** @type {number} */
height;
/** @type {number} */
seed;
/** @type {string} */
prompt;
/** @type {?boolean} */
nsfw;
/** @type {?number} */
averageHash;
/** @type {?number} */
perceptualHash;
/** @type {?number} */
differenceHash;
/** @type {?string} */
background;
/** @type {?string} */
lqip;
/** @type {number} */
quality;
/** @type {number} */
likesCount;
/** @type {number} */
albumsCount;
/** @type {number} */
downloadsCount;
/** @type {number} */
searchCount;
/** @type {number} */
temporalScore;
/** @type {number} */
score;
/** @type {number} */
rank;
/** @type {string} */
refId;
/** @type {{ [index:string]: string; }} */
versions = {};
}
export class Creative extends AuditBase {
/** @param {{id?:number,userPrompt?:string,prompt?:string,images?:number,width?:number,height?:number,steps?:number,curatedArtifactId?:number,primaryArtifactId?:number,artistNames?:string[],modifierNames?:string[],artists?:CreativeArtist[],modifiers?:CreativeModifier[],artifacts?:Artifact[],error?:string,ownerId?:number,ownerRef?:string,key?:string,curated?:boolean,rating?:number,private?:boolean,score?:number,rank?:number,refId?:string,requestId?:string,engineId?:string,createdDate?:string,createdBy?:string,modifiedDate?:string,modifiedBy?:string,deletedDate?:string,deletedBy?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
id;
/** @type {string} */
userPrompt;
/** @type {string} */
prompt;
/** @type {number} */
images;
/** @type {number} */
width;
/** @type {number} */
height;
/** @type {number} */
steps;
/** @type {?number} */
curatedArtifactId;
/** @type {?number} */
primaryArtifactId;
/** @type {string[]} */
artistNames = [];
/** @type {string[]} */
modifierNames = [];
/** @type {CreativeArtist[]} */
artists = [];
/** @type {CreativeModifier[]} */
modifiers = [];
/** @type {Artifact[]} */
artifacts = [];
/** @type {?string} */
error;
/** @type {?number} */
ownerId;
/** @type {?string} */
ownerRef;
/** @type {?string} */
key;
/** @type {boolean} */
curated;
/** @type {?number} */
rating;
/** @type {boolean} */
private;
/** @type {number} */
score;
/** @type {number} */
rank;
/** @type {string} */
refId;
/** @type {string} */
requestId;
/** @type {string} */
engineId;
}
export class GetCreativeResponse {
/** @param {{result?:Creative,responseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {Creative} */
result;
/** @type {ResponseStatus} */
responseStatus;
}
export class GetCreative {
/** @param {{id?:number,artifactId?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?number} */
id;
/** @type {?number} */
artifactId;
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/GetCreative HTTP/1.1
Host: blazordiffusion.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetCreative xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BlazorDiffusion.ServiceModel">
<ArtifactId>0</ArtifactId>
<Id>0</Id>
</GetCreative>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <GetCreativeResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BlazorDiffusion.ServiceModel"> <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types"> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:Message>String</d2p1:Message> <d2p1:StackTrace>String</d2p1:StackTrace> <d2p1:Errors> <d2p1:ResponseError> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:FieldName>String</d2p1:FieldName> <d2p1:Message>String</d2p1:Message> <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </d2p1:Meta> </d2p1:ResponseError> </d2p1:Errors> <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </d2p1:Meta> </ResponseStatus> <Result> <CreatedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</CreatedDate> <CreatedBy xmlns="http://schemas.servicestack.net/types">String</CreatedBy> <ModifiedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</ModifiedDate> <ModifiedBy xmlns="http://schemas.servicestack.net/types">String</ModifiedBy> <DeletedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</DeletedDate> <DeletedBy xmlns="http://schemas.servicestack.net/types">String</DeletedBy> <Artifacts> <Artifact> <CreatedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</CreatedDate> <CreatedBy xmlns="http://schemas.servicestack.net/types">String</CreatedBy> <ModifiedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</ModifiedDate> <ModifiedBy xmlns="http://schemas.servicestack.net/types">String</ModifiedBy> <DeletedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</DeletedDate> <DeletedBy xmlns="http://schemas.servicestack.net/types">String</DeletedBy> <AlbumsCount>0</AlbumsCount> <AverageHash>0</AverageHash> <Background>String</Background> <ContentLength>0</ContentLength> <ContentType>String</ContentType> <CreativeId>0</CreativeId> <DifferenceHash>0</DifferenceHash> <DownloadsCount>0</DownloadsCount> <FileName>String</FileName> <FilePath>String</FilePath> <Height>0</Height> <Id>0</Id> <LikesCount>0</LikesCount> <Lqip>String</Lqip> <Nsfw>false</Nsfw> <PerceptualHash>0</PerceptualHash> <Prompt>String</Prompt> <Quality>0</Quality> <Rank>0</Rank> <RefId>String</RefId> <Score>0</Score> <SearchCount>0</SearchCount> <Seed>0</Seed> <TemporalScore>0</TemporalScore> <Versions xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </Versions> <Width>0</Width> </Artifact> </Artifacts> <ArtistNames xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:string>String</d3p1:string> </ArtistNames> <Artists> <CreativeArtist> <Artist> <CreatedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</CreatedDate> <CreatedBy xmlns="http://schemas.servicestack.net/types">String</CreatedBy> <ModifiedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</ModifiedDate> <ModifiedBy xmlns="http://schemas.servicestack.net/types">String</ModifiedBy> <DeletedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</DeletedDate> <DeletedBy xmlns="http://schemas.servicestack.net/types">String</DeletedBy> <FirstName>String</FirstName> <Id>0</Id> <LastName>String</LastName> <Rank>0</Rank> <Score>0</Score> <Type xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d6p1:string>String</d6p1:string> </Type> <YearDied>0</YearDied> </Artist> <ArtistId>0</ArtistId> <CreativeId>0</CreativeId> <Id>0</Id> </CreativeArtist> </Artists> <Curated>false</Curated> <CuratedArtifactId>0</CuratedArtifactId> <EngineId>String</EngineId> <Error>String</Error> <Height>0</Height> <Id>0</Id> <Images>0</Images> <Key>String</Key> <ModifierNames xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:string>String</d3p1:string> </ModifierNames> <Modifiers> <CreativeModifier> <CreativeId>0</CreativeId> <Id>0</Id> <Modifier> <CreatedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</CreatedDate> <CreatedBy xmlns="http://schemas.servicestack.net/types">String</CreatedBy> <ModifiedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</ModifiedDate> <ModifiedBy xmlns="http://schemas.servicestack.net/types">String</ModifiedBy> <DeletedDate xmlns="http://schemas.servicestack.net/types">0001-01-01T00:00:00</DeletedDate> <DeletedBy xmlns="http://schemas.servicestack.net/types">String</DeletedBy> <Category>String</Category> <Description>String</Description> <Id>0</Id> <Name>String</Name> <Rank>0</Rank> <Score>0</Score> </Modifier> <ModifierId>0</ModifierId> </CreativeModifier> </Modifiers> <OwnerId>0</OwnerId> <OwnerRef>String</OwnerRef> <PrimaryArtifactId>0</PrimaryArtifactId> <Private>false</Private> <Prompt>String</Prompt> <Rank>0</Rank> <Rating>0</Rating> <RefId>String</RefId> <RequestId>String</RequestId> <Score>0</Score> <Steps>0</Steps> <UserPrompt>String</UserPrompt> <Width>0</Width> </Result> </GetCreativeResponse>