Function: createAsset()
createAsset(
client,props):Promise<{id:number;name:string;type:"MODEL"|"MATERIAL"|"IMAGE"|"SCENE"|"ENVMAP"|"CAD"|"LIGHT";visibility:"PRIVATE"|"PUBLIC"|"UNLISTED";projectId:number;projectName:string;orgId:number;orgName:string;description:string;keywords:string;shareLicense:"NONE"|"CC_0"|"CC_BY"|"CC_BY_SA"|"CC_BY_NC"|"CC_BY_NC_SA"|"CC_BY_ND"|"CC_BY_NC_ND";aiUsage:"UNDISCLOSED"|"AI_USED"|"AI_FREE";commentMode:"NONE"|"ENABLED"|"MEMBERS_ONLY";reported:boolean;likeCount:number;shareCount:number;createdAt:string;updatedAt:string;archived:boolean;metadata:string;originalSize?:number|null;width?:number|null;height?:number|null;depth?:number|null;version:string;latestVersion:string;versionId:number;originalExtension:string;fileOid:string;thumbnailOid?:string|null;analysis?: {schemaVersion:1;sourceFileOid:string;analyzerId:string;analyzerVersion:string;status:"unsupported"|"pending"|"running"|"succeeded"|"failed";analyzedAt:string|null;data: {kind:"model";dimensions: {widthMeters:number;depthMeters:number;heightMeters:number;unitSource:"unknown"|"format-defined"|"declared"|"assumed";measurementBasis:string; } |null;meshCount:number;geometryCount:number;triangleCount:number;vertexCount:number;materialCount:number;textureCount:number;textures:object[]; } | {version?:string;colorspace?:string;materials:object[];nodeGraphCount:number;topLevelNodeCount:number;referencedTextures:string[];warnings:string[];kind:"material";nodeCount:number;textureCount:number;textures:object[]; } | {version:string;metadata:Record<string,string>;photometricType:number;photometricTypeName:"A"|"B"|"C";photometry:"absolute"|"relative";manufacturer:string;luminaire:string;lightSource:string;lampCatalog:string;lampCount:number;lumensPerLamp:number;inputWatts:number;peakCandela:number;verticalAngles:number;horizontalAngles:number;units:"feet"|"meters";dimensions: {width:number;length:number;height:number; };hasTilt:boolean;warnings:string[];kind:"light";luminousFluxLumens:number|null;efficacyLumensPerWatt:number|null;beamAngleDegrees:number|null;fieldAngleDegrees:number|null;declaredLampFluxLumens?:number|null;downwardFluxLumens?:number|null;upwardFluxLumens?:number|null;metricsTiltDegrees?:number;beamAngles?:object[];metricsStatus:"unavailable"|"supported"|"unsupported"; } | {kind:"envmap";widthPixels:number;heightPixels:number;format:string;colorSpace:string;projection:"unknown"|"equirectangular";brightnessUnit:"relative"|"cd/m2";calibration:string|null;minimumBrightness:number;maximumBrightness:number;averageBrightness:number;percentile01Brightness:number;percentile99Brightness:number;dynamicRangeStops:number|null; } |null;validation: {status:"valid"|"invalid"|"unassessed";validator:string;validatorVersion:string;rules:string[];issues:object[]; } |null;diagnostics:object[]; } |null;analysisSummary?: {schemaVersion:1;sourceFileOid:string;analyzerId:string;analyzerVersion:string;status:"unsupported"|"pending"|"running"|"succeeded"|"failed";analyzedAt:string|null;validationStatus:"valid"|"invalid"|"unassessed"|null;errorCount:number;warningCount:number;data: {kind:"envmap";widthPixels:number;heightPixels:number;format:string;colorSpace:string;projection:"unknown"|"equirectangular";brightnessUnit:"relative"|"cd/m2";calibration:string|null;minimumBrightness:number;maximumBrightness:number;averageBrightness:number;percentile01Brightness:number;percentile99Brightness:number;dynamicRangeStops:number|null; } | {kind:"model";dimensions: {widthMeters:number;depthMeters:number;heightMeters:number;unitSource:"unknown"|"format-defined"|"declared"|"assumed";measurementBasis:string; } |null;meshCount:number;geometryCount:number;triangleCount:number;vertexCount:number;materialCount:number;textureCount:number; } | {version?:string;colorspace?:string;nodeGraphCount:number;topLevelNodeCount:number;kind:"material";nodeCount:number;textureCount:number;materialCount:number; } | {version:string;photometricType:number;photometricTypeName:"A"|"B"|"C";photometry:"absolute"|"relative";manufacturer:string;luminaire:string;lightSource:string;lampCatalog:string;lampCount:number;lumensPerLamp:number;inputWatts:number;peakCandela:number;verticalAngles:number;horizontalAngles:number;units:"feet"|"meters";dimensions: {width:number;length:number;height:number; };hasTilt:boolean;kind:"light";luminousFluxLumens:number|null;efficacyLumensPerWatt:number|null;beamAngleDegrees:number|null;fieldAngleDegrees:number|null;declaredLampFluxLumens?:number|null;downwardFluxLumens?:number|null;upwardFluxLumens?:number|null;metricsTiltDegrees?:number;metricsStatus:"unavailable"|"supported"|"unsupported"; } |null; } |null;materialInfo?: {version?:string;colorspace?:string;materials:object[];nodeGraphCount:number;topLevelNodeCount:number;referencedTextures:string[];warnings:string[]; };lightInfo?: {version:string;metadata:Record<string,string>;photometricType:number;photometricTypeName:"A"|"B"|"C";photometry:"absolute"|"relative";manufacturer:string;luminaire:string;lightSource:string;lampCatalog:string;lampCount:number;lumensPerLamp:number;inputWatts:number;peakCandela:number;verticalAngles:number;horizontalAngles:number;units:"feet"|"meters";dimensions: {width:number;length:number;height:number; };hasTilt:boolean;warnings:string[]; }; }>
Creates a new asset in a project.
Parameters
client
The API client instance
props
The request properties
params
{ orgName: string; projectName: string; } = createAssetParamsSchema
Path parameters (orgName, projectName)
params.orgName
string = orgNameSchema
params.projectName
string = projectNameSchema
body
{ version?: string; name: string; description?: string; type: "MODEL" | "MATERIAL" | "IMAGE" | "SCENE" | "ENVMAP" | "CAD" | "LIGHT"; uploadToken: string; visibility: "PRIVATE" | "PUBLIC" | "UNLISTED"; shareLicense: "NONE" | "CC_0" | "CC_BY" | "CC_BY_SA" | "CC_BY_NC" | "CC_BY_NC_SA" | "CC_BY_ND" | "CC_BY_NC_ND"; aiUsage?: "UNDISCLOSED" | "AI_USED" | "AI_FREE"; commentMode?: "NONE" | "ENABLED" | "MEMBERS_ONLY"; metadata?: string; } = createAssetBodySchema
Request body with asset details
body.version?
string = ...
body.name
string = ...
body.description?
string = ...
body.type
"MODEL" | "MATERIAL" | "IMAGE" | "SCENE" | "ENVMAP" | "CAD" | "LIGHT" = ...
body.uploadToken
string = ...
body.visibility
"PRIVATE" | "PUBLIC" | "UNLISTED" = ...
body.shareLicense
"NONE" | "CC_0" | "CC_BY" | "CC_BY_SA" | "CC_BY_NC" | "CC_BY_NC_SA" | "CC_BY_ND" | "CC_BY_NC_ND" = ...
body.aiUsage?
"UNDISCLOSED" | "AI_USED" | "AI_FREE" = ...
body.commentMode?
"NONE" | "ENABLED" | "MEMBERS_ONLY" = ...
body.metadata?
string = ...
Returns
Promise<{ id: number; name: string; type: "MODEL" | "MATERIAL" | "IMAGE" | "SCENE" | "ENVMAP" | "CAD" | "LIGHT"; visibility: "PRIVATE" | "PUBLIC" | "UNLISTED"; projectId: number; projectName: string; orgId: number; orgName: string; description: string; keywords: string; shareLicense: "NONE" | "CC_0" | "CC_BY" | "CC_BY_SA" | "CC_BY_NC" | "CC_BY_NC_SA" | "CC_BY_ND" | "CC_BY_NC_ND"; aiUsage: "UNDISCLOSED" | "AI_USED" | "AI_FREE"; commentMode: "NONE" | "ENABLED" | "MEMBERS_ONLY"; reported: boolean; likeCount: number; shareCount: number; createdAt: string; updatedAt: string; archived: boolean; metadata: string; originalSize?: number | null; width?: number | null; height?: number | null; depth?: number | null; version: string; latestVersion: string; versionId: number; originalExtension: string; fileOid: string; thumbnailOid?: string | null; analysis?: { schemaVersion: 1; sourceFileOid: string; analyzerId: string; analyzerVersion: string; status: "unsupported" | "pending" | "running" | "succeeded" | "failed"; analyzedAt: string | null; data: { kind: "model"; dimensions: { widthMeters: number; depthMeters: number; heightMeters: number; unitSource: "unknown" | "format-defined" | "declared" | "assumed"; measurementBasis: string; } | null; meshCount: number; geometryCount: number; triangleCount: number; vertexCount: number; materialCount: number; textureCount: number; textures: object[]; } | { version?: string; colorspace?: string; materials: object[]; nodeGraphCount: number; topLevelNodeCount: number; referencedTextures: string[]; warnings: string[]; kind: "material"; nodeCount: number; textureCount: number; textures: object[]; } | { version: string; metadata: Record<string, string>; photometricType: number; photometricTypeName: "A" | "B" | "C"; photometry: "absolute" | "relative"; manufacturer: string; luminaire: string; lightSource: string; lampCatalog: string; lampCount: number; lumensPerLamp: number; inputWatts: number; peakCandela: number; verticalAngles: number; horizontalAngles: number; units: "feet" | "meters"; dimensions: { width: number; length: number; height: number; }; hasTilt: boolean; warnings: string[]; kind: "light"; luminousFluxLumens: number | null; efficacyLumensPerWatt: number | null; beamAngleDegrees: number | null; fieldAngleDegrees: number | null; declaredLampFluxLumens?: number | null; downwardFluxLumens?: number | null; upwardFluxLumens?: number | null; metricsTiltDegrees?: number; beamAngles?: object[]; metricsStatus: "unavailable" | "supported" | "unsupported"; } | { kind: "envmap"; widthPixels: number; heightPixels: number; format: string; colorSpace: string; projection: "unknown" | "equirectangular"; brightnessUnit: "relative" | "cd/m2"; calibration: string | null; minimumBrightness: number; maximumBrightness: number; averageBrightness: number; percentile01Brightness: number; percentile99Brightness: number; dynamicRangeStops: number | null; } | null; validation: { status: "valid" | "invalid" | "unassessed"; validator: string; validatorVersion: string; rules: string[]; issues: object[]; } | null; diagnostics: object[]; } | null; analysisSummary?: { schemaVersion: 1; sourceFileOid: string; analyzerId: string; analyzerVersion: string; status: "unsupported" | "pending" | "running" | "succeeded" | "failed"; analyzedAt: string | null; validationStatus: "valid" | "invalid" | "unassessed" | null; errorCount: number; warningCount: number; data: { kind: "envmap"; widthPixels: number; heightPixels: number; format: string; colorSpace: string; projection: "unknown" | "equirectangular"; brightnessUnit: "relative" | "cd/m2"; calibration: string | null; minimumBrightness: number; maximumBrightness: number; averageBrightness: number; percentile01Brightness: number; percentile99Brightness: number; dynamicRangeStops: number | null; } | { kind: "model"; dimensions: { widthMeters: number; depthMeters: number; heightMeters: number; unitSource: "unknown" | "format-defined" | "declared" | "assumed"; measurementBasis: string; } | null; meshCount: number; geometryCount: number; triangleCount: number; vertexCount: number; materialCount: number; textureCount: number; } | { version?: string; colorspace?: string; nodeGraphCount: number; topLevelNodeCount: number; kind: "material"; nodeCount: number; textureCount: number; materialCount: number; } | { version: string; photometricType: number; photometricTypeName: "A" | "B" | "C"; photometry: "absolute" | "relative"; manufacturer: string; luminaire: string; lightSource: string; lampCatalog: string; lampCount: number; lumensPerLamp: number; inputWatts: number; peakCandela: number; verticalAngles: number; horizontalAngles: number; units: "feet" | "meters"; dimensions: { width: number; length: number; height: number; }; hasTilt: boolean; kind: "light"; luminousFluxLumens: number | null; efficacyLumensPerWatt: number | null; beamAngleDegrees: number | null; fieldAngleDegrees: number | null; declaredLampFluxLumens?: number | null; downwardFluxLumens?: number | null; upwardFluxLumens?: number | null; metricsTiltDegrees?: number; metricsStatus: "unavailable" | "supported" | "unsupported"; } | null; } | null; materialInfo?: { version?: string; colorspace?: string; materials: object[]; nodeGraphCount: number; topLevelNodeCount: number; referencedTextures: string[]; warnings: string[]; }; lightInfo?: { version: string; metadata: Record<string, string>; photometricType: number; photometricTypeName: "A" | "B" | "C"; photometry: "absolute" | "relative"; manufacturer: string; luminaire: string; lightSource: string; lampCatalog: string; lampCount: number; lumensPerLamp: number; inputWatts: number; peakCandela: number; verticalAngles: number; horizontalAngles: number; units: "feet" | "meters"; dimensions: { width: number; length: number; height: number; }; hasTilt: boolean; warnings: string[]; }; }>
Promise resolving to the created asset
Operation Id
create-asset
Example
const asset = await createAsset(client, {
params: { orgName: 'my-org', projectName: 'my-project' },
body: {
name: 'my-asset',
type: 'MODEL',
uploadToken: '...',
visibility: 'PUBLIC',
shareLicense: 'CC_BY'
}
});