Request

Response

    Class: ModelDerivativeClient

    Remarks

    Represents a collection of functions to interact with the ModelDerivative API endpoints.

    Extends

    • BaseClient

    Constructors

    new ModelDerivativeClient()

    new ModelDerivativeClient(optionalArgs?): ModelDerivativeClient

    optionalArgs?

    authenticationProvider

    IAuthenticationProvider

    sdkManager

    SdkManager

    Returns

    ModelDerivativeClient

    Overrides

    BaseClient.constructor

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:19

    Accessors

    authenticationProvider

    Get Signature

    get authenticationProvider(): IAuthenticationProvider

    Returns

    IAuthenticationProvider

    Set Signature

    set authenticationProvider(value): void

    Parameters

    value

    IAuthenticationProvider

    Returns

    void

    Inherited from

    BaseClient.authenticationProvider

    Defined in

    sdkmanager-node/sdk-manager-nodejs/dist/src/baseClient.d.ts:4

    Methods

    deleteManifest()

    Operation: Delete Manifest

    deleteManifest(urn, optionalArgs): Promise<DeleteManifest>

    Deletes the manifest of the specified source design. It also deletes all derivatives (translated output files) generated from the source design. However, it does not delete the source design.

    Note: This operation is idempotent. So, if you call it multiple times, even when no manifest exists, will still return a successful response (200).

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    optionalArgs

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    Returns

    Promise<DeleteManifest>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:59


    fetchSpecificProperties()

    Operation: Fetch Specific Properties

    fetchSpecificProperties(urn, modelGuid, specificPropertiesPayload, optionalArgs): Promise<SpecificProperties>

    Queries the objects in the Model View (Viewable) specified by the modelGuid parameter and returns the specified properties in a paginated list. You can limit the number of objects to be queried by specifying a filter using the query attribute in the request body.

    Note: A design file must be translated to SVF or SVF2 before you can query object properties.

    Before you call this operation:

    • Use the List Model Views operation to obtain the list of Model Views in the source design.
    • Pick the ID of the Model View you want to query and specify that ID as the value for the modelGuid parameter.

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    modelGuid

    string

    The ID of the Model View you are querying. Use the List Model Views operation to get the IDs of the Model Views in the source design.

    specificPropertiesPayload

    SpecificPropertiesPayload

    optionalArgs

    acceptEncoding

    string

    A comma separated list of the algorithms you want the response to be encoded in, specified in the order of preference.

    If you specify gzip or *, content is compressed and returned in gzip format.

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    xAdsDerivativeFormat

    XAdsDerivativeFormat

    Specifies what Object IDs to return, if the design has legacy SVF derivatives generated by the BIM Docs service. Possible values are:

    • latest - (Default) Return SVF2 Object IDs.
    • fallback - Return SVF Object IDs.

    Note:

    1. This parameter applies only to designs with legacy SVF derivatives generated by the BIM 360 Docs service.
    2. The BIM 360 Docs service now generates SVF2 derivatives. SVF2 Object IDs may not be compatible with the SVF Object IDs previously generated by the BIM 360 Docs service. Setting this parameter to fallback may resolve backward compatibility issues resulting from Object IDs of legacy SVF derivatives being retained on the client side.
    3. If you use this parameter with one derivative (URN), you must use it consistently across the following:

    Returns

    Promise<SpecificProperties>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:117


    getAllProperties()

    Operation: Fetch All Properties

    getAllProperties(urn, modelGuid, optionalArgs): Promise<Properties>

    Returns a list of properties of all objects in the Model View specified by the modelGuid parameter.

    This operation returns properties of all objects by default. However, you can restrict the results to a specific object by specifying its ID as the objectid parameter.

    Properties are returned as a flat list, ordered, by their objectid. The objectid is a non-persistent ID assigned to an object when the source design is translated to the SVF or SVF2 format. This means that:

    • A design file must be translated to SVF or SVF2 before you can retrieve properties.
    • The objectid of an object can change if the design is translated to SVF or SVF2 again. If you require a persistent ID across translations, use externalId to reference objects, instead of objectid.

    Before you call this operation:

    • Use the List Model Views operation to obtain the list of Model Views (Viewables) in the source design.
    • Pick the ID of the Model View you want to query and specify that ID as the value for the modelGuid parameter.

    Tip: Use Fetch Specific Properties to retrieve only the objects and properties of interest. What’s more, the response is paginated. So, when the number of properties returned is large, responses start arriving more promptly.

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    modelGuid

    string

    The ID of the Model View you are querying. Use the List Model Views operation to get the IDs of the Model Views in the source design.

    optionalArgs

    acceptEncoding

    string

    A comma separated list of the algorithms you want the response to be encoded in, specified in the order of preference.

    If you specify gzip or *, content is compressed and returned in gzip format.

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    forceget

    string

    true: Retrieves large resources, even beyond the 20 MB limit. If exceptionally large (over 800 MB), the system acts as if forceget is false.

    false: (Default) Does not retrieve resources if they are larger than 20 MB.

    objectid

    number

    The Object ID of the object you want to restrict the response to. If you do not specify this parameter, all properties of all objects within the Model View are returned.

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    xAdsDerivativeFormat

    XAdsDerivativeFormat

    Specifies what Object IDs to return, if the design has legacy SVF derivatives generated by the BIM Docs service. Possible values are:

    • latest - (Default) Return SVF2 Object IDs.
    • fallback - Return SVF Object IDs.

    Note:

    1. This parameter applies only to designs with legacy SVF derivatives generated by the BIM 360 Docs service.
    2. The BIM 360 Docs service now generates SVF2 derivatives. SVF2 Object IDs may not be compatible with the SVF Object IDs previously generated by the BIM 360 Docs service. Setting this parameter to fallback may resolve backward compatibility issues resulting from Object IDs of legacy SVF derivatives being retained on the client side.
    3. If you use this parameter with one derivative (URN), you must use it consistently across the following:

    xAdsForce

    boolean

    true: Forces the system to parse property data all over again. Use this option to retrieve an object tree when previous attempts have failed.

    false: (Default) Use previously parsed property data to extract the object tree.

    Returns

    Promise<Properties>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:190


    getDerivativeUrl()

    Operation: Fetch Derivative Download URL

    getDerivativeUrl(derivativeUrn, urn, optionalArgs): Promise<DerivativeDownload>

    Returns a download URL and a set of signed cookies, which lets you securely download the derivative specified by the derivativeUrn parameter. The signed cookies have a lifetime of 6 hours. You can use range parameters with the returned download URL to download the derivative in chunks, in parallel.

    Parameters

    derivativeUrn

    string

    The URL-encoded URN of the derivative. Use the Fetch Manifest operation to obtain the URNs of derivatives for the specified source design.

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    optionalArgs

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    minutesExpiration

    number

    Specifies how many minutes the signed cookies should remain valid. Default value is 360 minutes. The value you specify must be lower than the default value for this parameter. If you specify a value greater than the default value, the Model Derivative service will return an error with an HTTP status code of 400.

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    responseContentDisposition

    string

    The value that must be specified as the response-content-disposition query string parameter with the download URL. Must begin with attachment. This value defaults to the default value corresponding to the derivative/file.

    Returns

    Promise<DerivativeDownload>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:222


    getFormats()

    Operation: List Supported Formats

    getFormats(optionalArgs): Promise<SupportedFormats>

    Returns an up-to-date list of supported translations. This operation also provides information on the types of derivatives that can be generated for each source design file type. Furthermore, it allows you to obtain a list of translations that have changed since a specified date.

    See the Supported Translation Formats table for more details.

    Note: We keep adding new file formats to our supported translations list, constantly.

    optionalArgs

    acceptEncoding

    string

    A comma separated list of the algorithms you want the response to be encoded in, specified in the order of preference.

    If you specify gzip or *, content is compressed and returned in gzip format.

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    ifModifiedSince

    string

    Specifies a date in the Day of the week, DD Month YYYY HH:MM:SS GMT format. The response will contain only the formats modified since the specified date and time. If you specify an invalid date, the response will contain all supported formats. If no changes have been made after the specified date, the service returns HTTP status 304, NOT MODIFIED.

    options

    ApsServiceRequestConfig

    Override http request option.

    Returns

    Promise<SupportedFormats>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:251


    getManifest()

    Operation: Fetch Manifest

    getManifest(urn, optionalArgs): Promise<Manifest>

    Retrieves the manifest of the specified source design.

    The manifest is a JSON file containing information about all the derivatives translated from the specified source design. It contains information such as the URNs of the derivatives, the translation status of each derivative, and much more.

    The first time you translate a source design, the Model Derivative service creates a manifest for that design. Thereafter, every time you translate that source design, even to a different format, the Model Derivative service updates the same manifest. It does not create a new manifest. Instead, the manifest acts like a central registry for all the derivatives of your source design created through the Model Derivative service.

    When the Model Derivative service starts a translation job (as a result of a request you make using Create Translation Job), it keeps on updating the manifest at regular intervals. So, you can use the manifest to check the status and progress of each derivative that is being generated. When multiple derivatives have been requested each derivative may complete at a different time. So, each derivative has its own status attribute. The manifest also contains an overall status attribute. The overall status becomes complete when the status of all individual derivatives become complete.

    Once the translation status of a derivative is complete you can download the derivative.

    Note: You cannot download 3D SVF2 derivatives.

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    optionalArgs

    acceptEncoding

    string

    A comma separated list of the algorithms you want the response to be encoded in, specified in the order of preference.

    If you specify gzip or *, content is compressed and returned in gzip format.

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    Returns

    Promise<Manifest>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:294


    getModelViews()

    Operation: List Model Views

    getModelViews(urn, optionalArgs): Promise<ModelViews>

    Returns a list of Model Views (Viewables) in the source design specified by the urn parameter. It also returns an ID that uniquely identifies the Model View. You can use these IDs with other metadata operations to obtain information about the objects within those Model Views.

    Designs created with applications like Fusion 360 and Inventor contain only one Model View per design. Applications like Revit allow multiple Model Views per design.

    Note: You can retrieve metadata only from a design that has already been translated to SVF or SVF2.

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    optionalArgs

    acceptEncoding

    string

    A comma separated list of the algorithms you want the response to be encoded in, specified in the order of preference.

    If you specify gzip or *, content is compressed and returned in gzip format.

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    Returns

    Promise<ModelViews>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:331


    getObjectTree()

    Operation: Fetch Object tree

    getObjectTree(urn, modelGuid, optionalArgs): Promise<ObjectTree>

    Retrieves the structured hierarchy of objects, known as an object tree, from the specified Model View (Viewable) within the specified source design. The object tree represents the arrangement and relationships of various objects present in that Model View.

    Note: A design file must be translated to SVF or SVF2 before you can retrieve its object tree.

    Before you call this operation:

    • Use the List Model Views operation to obtain the list of Model Views in the source design.
    • Pick the ID of the Model View you want to query and specify that ID as the value for the modelGuid parameter.

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    modelGuid

    string

    The ID of the Model View you are extracting the object tree from. Use the List Model Views operation to get the IDs of the Model Views in the source design.

    optionalArgs

    acceptEncoding

    string

    A comma separated list of the algorithms you want the response to be encoded in, specified in the order of preference.

    If you specify gzip or *, content is compressed and returned in gzip format.

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    forceget

    string

    true: Retrieves large resources, even beyond the 20 MB limit. If exceptionally large (over 800 MB), the system acts as if forceget is false.

    false: (Default) Does not retrieve resources if they are larger than 20 MB.

    level

    string

    Specifies how many child levels of the hierarchy to return, when the objectid parameter is specified. Currently supports only level = 1.

    objectid

    number

    If specified, retrieves the sub-tree that has the specified Object ID as its parent node. If this parameter is not specified, retrieves the entire object tree.

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    xAdsDerivativeFormat

    XAdsDerivativeFormat

    Specifies what Object IDs to return, if the design has legacy SVF derivatives generated by the BIM Docs service. Possible values are:

    • latest - (Default) Return SVF2 Object IDs.
    • fallback - Return SVF Object IDs.

    Note:

    1. This parameter applies only to designs with legacy SVF derivatives generated by the BIM 360 Docs service.
    2. The BIM 360 Docs service now generates SVF2 derivatives. SVF2 Object IDs may not be compatible with the SVF Object IDs previously generated by the BIM 360 Docs service. Setting this parameter to fallback may resolve backward compatibility issues resulting from Object IDs of legacy SVF derivatives being retained on the client side.
    3. If you use this parameter with one derivative (URN), you must use it consistently across the following:

    xAdsForce

    boolean

    true: Forces the system to parse property data all over again. Use this option to retrieve an object tree when previous attempts have failed.

    false: (Default) Use previously parsed property data to extract the object tree.

    Returns

    Promise<ObjectTree>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:399


    getThumbnail()

    Operation: Fetch Thumbnail

    getThumbnail(urn, optionalArgs): Promise<File>

    Downloads a thumbnail of the specified source design.

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    optionalArgs

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    height

    Height

    Height of thumbnails. Possible values are: 100, 200, 400.If height is omitted, but width is specified, height defaults to width. If both width and height are omitted, the server will return a thumbnail closest to 200, if such a thumbnail is available

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    width

    Width

    Width of thumbnail in pixels. Possible values are: 100, 200, 400 If width is omitted, but height is specified, width defaults to height. If both width and height are omitted, the server will return a thumbnail closest to 200, if such a thumbnail is available.

    Returns

    Promise<File>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:430


    headCheckDerivative()

    Operation: Check Derivative Details

    headCheckDerivative(urn, derivativeUrn, optionalArgs): Promise<void>

    Returns information about the specified derivative.

    Use this operation to determine the total content length of a derivative before you download it. If the derivative is large, you can choose to download the derivative in chunks, by specifying a chunk size using the Range parameter.

    Parameters

    urn

    string

    The URL-safe Base64 encoded URN of the source design.

    derivativeUrn

    string

    The URL-encoded URN of the derivative. Check the manifest of the source design to get the URNs of the derivatives available for download.

    optionalArgs

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    Returns

    Promise<void>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:462


    specifyReferences()

    Operation: Specify References

    specifyReferences(urn, specifyReferencesPayload, optionalArgs): Promise<SpecifyReferences>

    Specifies the location of the files referenced by the specified source design.

    When you call Create Translation Job, set checkReferences to true. The Model Derivative service will then use the details you specify in this operation to locate and download the referenced files.

    Parameters

    urn

    string

    The Base64 (URL Safe) encoded design URN.

    specifyReferencesPayload

    SpecifyReferencesPayload

    optionalArgs

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    Returns

    Promise<SpecifyReferences>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:495


    startJob()

    Operation: Create Translation Job

    startJob(jobPayload, optionalArgs): Promise<Job>

    Creates a job to translate the specified source design to another format, generating derivatives of the source design. You can optionally:

    • Extract selected parts of a design and export the set of geometries in OBJ format.
    • Generate different-sized thumbnails.

    When the translation job runs, details about the process and generated derivatives are logged to a JSON file known as a manifest. This manifest is typically created during the first translation of a source design. Subsequently, the system updates the same manifest whenever a translation is performed for that design.

    If necessary, you can set the x-ads-force parameter to true. Then, the system will delete the existing manifest and create a new one. However, be aware that doing so will also delete all previously generated derivatives.

    Parameters

    jobPayload

    JobPayload

    optionalArgs

    accessToken

    string

    An access token obtained by a call to GetThreeLeggedTokenAsync() or GetTwoLeggedTokenAsync().

    options

    ApsServiceRequestConfig

    Override http request option.

    region

    Region

    Specifies the data center where the manifest and derivatives of the specified source design are stored. Possible values are:

    • US - (Default) Data center for the US region.
    • EMEA - Data center for the European Union, Middle East, and Africa.
    • APAC - (Beta) Data center for the Australia region.

    Note: Beta features are subject to change. Please avoid using them in production environments.

    xAdsDerivativeFormat

    XAdsDerivativeFormat

    Specifies what Object IDs to return, if the design has legacy SVF derivatives generated by the BIM Docs service. Possible values are:

    • latest - (Default) Return SVF2 Object IDs.
    • fallback - Return SVF Object IDs.

    Note:

    1. This parameter applies only to designs with legacy SVF derivatives generated by the BIM 360 Docs service.
    2. The BIM 360 Docs service now generates SVF2 derivatives. SVF2 Object IDs may not be compatible with the SVF Object IDs previously generated by the BIM 360 Docs service. Setting this parameter to fallback may resolve backward compatibility issues resulting from Object IDs of legacy SVF derivatives being retained on the client side.
    3. If you use this parameter with one derivative (URN), you must use it consistently across the following:

    xAdsForce

    boolean

    true: Forces the system to parse property data all over again. Use this option to retrieve an object tree when previous attempts have failed.

    false: (Default) Use previously parsed property data to extract the object tree.

    Returns

    Promise<Job>

    Throws

    ModelDerivativeApiError

    Defined in

    aps-sdk-node/modelderivative/source/custom-code/modelDerivativeClient.ts:551