14 Jan 2018

Where the data is stored currently

Default blog image

In most cases, we will store the data on Forge by the web services such as Data Management API, or ask Forge to generate new data from the source data such as Model Derivative API. We would care about which region the data is stored.

Firstly, there are currently Forge servers in the US and in Europe (EMEA).

When we work with  Data Management API by 2legged authentication, we will store the source data by ourselves. When storing data on the Forge (OSS) storage system, we can specify on which region our bucket is created by the 'x-ads-region' header parameter of create bucket endpointThen, all the objects within this bucket locate in this specific region.

Currently, the acceptable values: US, EMEA. The default region is US. e.g. the HTTP Request could be:

curl -v "https://developer.api.autodesk.com/oss/v2/buckets"
  -X POST
  -H "Content-Type: application/json"
  -H "Authorization: Bearer kgEJWMJitdYbhfxghap8SbZqXMoS" 
  -H "'x-ads-region: EMEA"
   -d '
  {
    "bucketKey":"my-emea-bucket-1",
     "policyKey":"transient"
   }
   '

 To know the where the bucket is, we could list all buckets of one specific region by Get Buckets. This endpoint provides a parameter 'region' as well.

When we post a translating job to convert the source model to some other data formats, there is also a choice to specify which region the translated data could be. Currently, only US and EMEA are available. It is set in the request body, e.g.

curl -X 'POST' -H 'Content-Type: application/json; charset=utf-8' -H 'Authorization: Bearer PtnrvrtSRpWwUi3407QhgvqdUVKL' -v 'https://developer.api.autodesk.com/modelderivative/v2/designdata/job' -d
'{
   "input": {
      "urn": "dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6bW9kZWxkZXJpdmF0aXZlL0E1LnppcA",
      "compressedUrn": true,
      "rootFilename": "A5.iam" 
    },
     "output": {
       "destination": {
         "region": "emea"
     },
     "formats": [
        {
          "type": "svf",
          "views": [
              "2d",
              "3d"
           ]
       }
     ]
    }
 }'

Model Derivative API does not care about which region the input design (source data) is from, it only cares about the region of the output of the translation data, based on `region` parameter. So, we can have a source data in the bucket which locates in US, while the translated data is stored in EMEA.

Another endpoint of Model Derivative API Set Reference also provides the option ‘region’.  It means if we build the relationship in EMEA region, this relationship can only be used with this region for the subsequent `post job` request. In another word, we will need to specify the region of post job to be same to what specified in set reference.

When we work with  Data Management API by 3legged authentication,  the source data is uploaded by the end users and managed by A360, BIM 360, Fusion Team, BIM Team etc. So it will depend on the option by product. e.g. in BIM 360 help, it indicates where the data would be stored. In addition, these platforms will have probably translated the source model to SVF format for browser viewing. The region of the SVF format is same to where the source data is. In another word, if the user uploads a model to BIM 360, he can choose the project from EMEA data center, which the translated SVF resources will be uploaded to the EMEA OSS.

Related Article