Blazor Diffusion

<back to all web services

CreateArtifactReport

Artifacts
Requires Authentication

// @DataContract
export class AuditBase
{
    // @DataMember(Order=1)
    public createdDate: string;

    // @DataMember(Order=2)
    // @Required()
    public createdBy: string;

    // @DataMember(Order=3)
    public modifiedDate: string;

    // @DataMember(Order=4)
    // @Required()
    public modifiedBy: string;

    // @DataMember(Order=5)
    public deletedDate?: string;

    // @DataMember(Order=6)
    public deletedBy: string;

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

export class Artifact extends AuditBase
{
    public id: number;
    // @References("typeof(BlazorDiffusion.ServiceModel.Creative)")
    public creativeId: number;

    public fileName: string;
    public filePath: string;
    public contentType: string;
    public contentLength: number;
    public width: number;
    public height: number;
    public seed: number;
    public prompt: string;
    public nsfw?: boolean;
    public averageHash?: number;
    public perceptualHash?: number;
    public differenceHash?: number;
    public background?: string;
    public lqip?: string;
    public quality: number;
    public likesCount: number;
    public albumsCount: number;
    public downloadsCount: number;
    public searchCount: number;
    public temporalScore: number;
    public score: number;
    public rank: number;
    public refId: string;
    public versions: { [index:string]: string; } = {};

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

export enum ReportType
{
    Nsfw = 'Nsfw',
    Malformed = 'Malformed',
    Blurred = 'Blurred',
    LowQuality = 'LowQuality',
    Other = 'Other',
}

export class ArtifactReport
{
    public id: number;
    // @References("typeof(BlazorDiffusion.ServiceModel.Artifact)")
    public artifactId: number;

    public appUserId: number;
    public artifact: Artifact;
    public type: ReportType;
    public description?: string;
    public createdDate: string;
    public notes?: string;
    public actionedDate?: string;
    public actionedBy?: string;

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

// @ValidateRequest(Validator="IsAuthenticated")
export class CreateArtifactReport implements ICreateDb<ArtifactReport>
{
    // @Validate(Validator="GreaterThan(0)")
    public artifactId: number;

    public type: ReportType;
    public description?: string;

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

TypeScript CreateArtifactReport DTOs

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

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /xml/reply/CreateArtifactReport HTTP/1.1 
Host: blazordiffusion.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CreateArtifactReport xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BlazorDiffusion.ServiceModel">
  <ArtifactId>0</ArtifactId>
  <Description>String</Description>
  <Type>Nsfw</Type>
</CreateArtifactReport>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ArtifactReport xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BlazorDiffusion.ServiceModel">
  <ActionedBy>String</ActionedBy>
  <ActionedDate>0001-01-01T00:00:00</ActionedDate>
  <AppUserId>0</AppUserId>
  <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:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </Versions>
    <Width>0</Width>
  </Artifact>
  <ArtifactId>0</ArtifactId>
  <CreatedDate>0001-01-01T00:00:00</CreatedDate>
  <Description>String</Description>
  <Id>0</Id>
  <Notes>String</Notes>
  <Type>Nsfw</Type>
</ArtifactReport>