@shapediver/sdk.geometry-api-sdk-v2 1.12.0 → 1.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
</p>
|
|
6
6
|
|
|
7
7
|
# ShapeDiver Geometry Backend API - SDK v2
|
|
8
|
+
|
|
9
|
+
> :warning: **Version 1 is deprecated. Please upgrade to [v2](https://github.com/shapediver/GeometryBackendSdkTypeScript/tree/master/packages/sdk.geometry-api-sdk-v2) to receive the newest features - [Migration Guide](<https://help.shapediver.com/doc/geometry-backend-sdk-typescript-migration-guide#GeometryBackendSDKTypeScript-MigrationGuide-MigratingfromVersion1.x.xto2.x.x(03/11/2024)>).**
|
|
10
|
+
|
|
8
11
|
[ShapeDiver](https://www.shapediver.com/) is a cloud platform for building online applications based on parametric 3D files made with Rhinoceros 3D and Grasshopper.
|
|
9
12
|
|
|
10
13
|
Using the **ShapeDiver Geometry Backend API** allows accessing ShapeDiver models without using the **ShapeDiver Viewer**.
|
|
@@ -14,20 +17,22 @@ This SDK provides functionality to communicate with the **ShapeDiver Geometry Ba
|
|
|
14
17
|
See the [API documentation](https://sdeuc1.eu-central-1.shapediver.com/api/v2/docs/) for more details.
|
|
15
18
|
|
|
16
19
|
## Authentication
|
|
20
|
+
|
|
17
21
|
The authentication system for the Geometry Backend API is based on **ticket objects** and **JWT tokens**, which are handled by the [ShapeDiver Platform](https://www.shapediver.com/app/).
|
|
18
22
|
You can obtain **tickets** and **JWT tokens** by
|
|
19
|
-
|
|
20
|
-
* using your account on the [ShapeDiver Platform](https://www.shapediver.com/app/) (tickets only), or
|
|
21
|
-
* you can obtain them programmatically using the [ShapeDiver Platform API](https://app.shapediver.com/api/documentation) (both tickets and JWT tokens).
|
|
22
23
|
|
|
23
|
-
|
|
24
|
+
- using your account on the [ShapeDiver Platform](https://www.shapediver.com/app/) (tickets only), or
|
|
25
|
+
- you can obtain them programmatically using the [ShapeDiver Platform API](https://app.shapediver.com/api/documentation) (both tickets and JWT tokens).
|
|
26
|
+
|
|
27
|
+
An SDK for the [ShapeDiver Platform API](https://app.shapediver.com/api/documentation) will be released soon.
|
|
24
28
|
|
|
25
|
-
When obtaining a ticket for your model from the ShapeDiver Platform, please be aware that you will need a
|
|
29
|
+
When obtaining a ticket for your model from the ShapeDiver Platform, please be aware that you will need a
|
|
26
30
|
|
|
27
|
-
|
|
28
|
-
|
|
31
|
+
- _ticket for direct embedding_ in case you are accessing the Geometry Backend API from a web browser, or a
|
|
32
|
+
- _ticket for backend access_ in case you are accessing the Geometry Backend API from an arbitrary client application that is not a web browser.
|
|
29
33
|
|
|
30
34
|
## Base URL
|
|
35
|
+
|
|
31
36
|
The base URL to use depends on which ShapeDiver Geometry Backend System your model was uploaded to.
|
|
32
37
|
You can find the base URL in your model's dashboard on the ShapeDiver Platform, it is also called the _model view url_.
|
|
33
38
|
|
|
@@ -39,10 +44,10 @@ import { create } from "@shapediver/sdk.geometry-api-sdk-v2"
|
|
|
39
44
|
(async function () {
|
|
40
45
|
# Please see above on how to obtain a ticket
|
|
41
46
|
const ticket = "8b23fae66cf535719a9ec797e390208b2003e3cfc894b7624ada2f6894515f8836a4-66303337623538322d34386"
|
|
42
|
-
|
|
43
|
-
# Initialize the SDK by providing the base URL
|
|
47
|
+
|
|
48
|
+
# Initialize the SDK by providing the base URL
|
|
44
49
|
const sdk = create("https://sdeuc1.eu-central-1.shapediver.com")
|
|
45
|
-
|
|
50
|
+
|
|
46
51
|
# This initializes a new session and returns your ShapeDiver Model and your session
|
|
47
52
|
const res = await sdk.session.init(ticket)
|
|
48
53
|
console.log(res)
|
|
@@ -50,6 +55,7 @@ import { create } from "@shapediver/sdk.geometry-api-sdk-v2"
|
|
|
50
55
|
```
|
|
51
56
|
|
|
52
57
|
## Usage - Ticket and JWT
|
|
58
|
+
|
|
53
59
|
It is possible to configure your ShapeDiver models such that JWT tokens are required to communicate with them, which provides a strong authorisation mechanism.
|
|
54
60
|
In this case you will need to use the [ShapeDiver Platform API](https://app.shapediver.com/api/documentation) to obtain a JWT token for your model on demand.
|
|
55
61
|
|
|
@@ -60,10 +66,10 @@ import { create } from "@shapediver/sdk.geometry-api-sdk-v2"
|
|
|
60
66
|
# Please see above on how to obtain a ticket and a JWT
|
|
61
67
|
const jwt = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Ikp1c3QgYSB0ZXN0IiwiaWF0IjoxNjE4OTExMjcxLCJleHAiOjE2MTg5MTQ4OTcsImp0aSI6IjYzMjA3ODE3LWJiNWQtNDY3Zi04NzRkLWM4N2EyYzAxYmZlZCJ9.S5Ps_Fx5p6aJxdBOJMBKgpf2SIlp--6kkIZU55tiqEg"
|
|
62
68
|
const ticket = "8b23fae66cf535719a9ec797e390208b2003e3cfc894b7624ada2f6894515f8836a4-66303337623538322d34386"
|
|
63
|
-
|
|
64
|
-
# Initialize the SDK by providing the base URL and your JWT
|
|
69
|
+
|
|
70
|
+
# Initialize the SDK by providing the base URL and your JWT
|
|
65
71
|
const sdk = create("https://sdeuc1.eu-central-1.shapediver.com", jwt)
|
|
66
|
-
|
|
72
|
+
|
|
67
73
|
# This initializes a new session and returns your ShapeDiver Model and your session
|
|
68
74
|
const res = await sdk.session.init(ticket)
|
|
69
75
|
console.log(res)
|
|
@@ -71,6 +77,7 @@ import { create } from "@shapediver/sdk.geometry-api-sdk-v2"
|
|
|
71
77
|
```
|
|
72
78
|
|
|
73
79
|
## Handling Errors
|
|
80
|
+
|
|
74
81
|
The SDK provides type guards to distinguish between error types.
|
|
75
82
|
|
|
76
83
|
```
|
|
@@ -107,15 +114,18 @@ catch (e: any) {
|
|
|
107
114
|
```
|
|
108
115
|
|
|
109
116
|
## Examples
|
|
110
|
-
Some practical use cases, we will regularly extend the list:
|
|
111
117
|
|
|
112
|
-
|
|
118
|
+
Some practical use cases, we will regularly extend the list:
|
|
119
|
+
|
|
120
|
+
- [A Twitter Bot calling a ShapeDiver Model](https://github.com/shapediver/ServerlessExample-TwitterBot):
|
|
113
121
|
This example shows how to run computations using a ShapeDiver Model which has image and data inputs and outputs.
|
|
114
122
|
|
|
115
123
|
## Support
|
|
124
|
+
|
|
116
125
|
If you have questions, please use the [ShapeDiver Help Center](https://help.shapediver.com/).
|
|
117
126
|
|
|
118
127
|
You can find out more about ShapeDiver [right here](https://www.shapediver.com/).
|
|
119
128
|
|
|
120
129
|
## Licensing
|
|
130
|
+
|
|
121
131
|
This project is released under the [MIT License](https://github.com/shapediver/GeometryBackendSdkTypeScript/blob/master/packages/sdk.geometry-api-sdk-v2/LICENSE).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShapeDiverAssetApi.d.ts","sourceRoot":"","sources":["../../src/resources/ShapeDiverAssetApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,gBAAgB,EAEjB,MAAM,uCAAuC,CAAC;AAe/C,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,EAAE,gBAAgB;IAU3B,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAkB3B,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAkB3B,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAsBzB,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAkB3B,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAmBnE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoBnE,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ShapeDiverAssetApi.d.ts","sourceRoot":"","sources":["../../src/resources/ShapeDiverAssetApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,gBAAgB,EAEjB,MAAM,uCAAuC,CAAC;AAe/C,qBAAa,kBAAmB,SAAQ,eAAe;gBACzC,GAAG,EAAE,gBAAgB;IAU3B,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAkB3B,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAkB3B,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAsBzB,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAkB3B,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAmBnE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoBnE,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAmD3B,QAAQ,CACZ,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;CA0BnE"}
|
|
@@ -95,7 +95,8 @@ class ShapeDiverAssetApi extends sdk_geometry_api_sdk_core_1.BaseResourceApi {
|
|
|
95
95
|
var _a;
|
|
96
96
|
const [header, data] = yield this.api.get(targetUrl, queries, {
|
|
97
97
|
responseType: sdk_geometry_api_sdk_core_1.ShapeDiverSdkApiResponseType.DATA,
|
|
98
|
-
disableAuthorization: cdnAssetUri.test(url),
|
|
98
|
+
disableAuthorization: cdnAssetUri.test(url) || directDownloadUri.test(url),
|
|
99
|
+
disableCustomHeaders: cdnAssetUri.test(url) || directDownloadUri.test(url),
|
|
99
100
|
});
|
|
100
101
|
const contentType = (_a = header["Content-Type"]) !== null && _a !== void 0 ? _a : header["content-type"];
|
|
101
102
|
return [data, contentType];
|
|
@@ -118,6 +119,7 @@ class ShapeDiverAssetApi extends sdk_geometry_api_sdk_core_1.BaseResourceApi {
|
|
|
118
119
|
const [header, data] = yield this.api.get(url, undefined, {
|
|
119
120
|
responseType: sdk_geometry_api_sdk_core_1.ShapeDiverSdkApiResponseType.DATA,
|
|
120
121
|
disableAuthorization: cdnAssetUri.test(url),
|
|
122
|
+
disableCustomHeaders: cdnAssetUri.test(url),
|
|
121
123
|
});
|
|
122
124
|
const contentType = (_a = header["Content-Type"]) !== null && _a !== void 0 ? _a : header["content-type"];
|
|
123
125
|
return [data, contentType, type];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShapeDiverAssetApi.js","sourceRoot":"","sources":["../../src/resources/ShapeDiverAssetApi.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ShapeDiverAssetApi.js","sourceRoot":"","sources":["../../src/resources/ShapeDiverAssetApi.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -182,7 +182,14 @@ export class ShapeDiverAssetApi extends BaseResourceApi {
|
|
|
182
182
|
queries,
|
|
183
183
|
{
|
|
184
184
|
responseType: ShapeDiverSdkApiResponseType.DATA,
|
|
185
|
-
|
|
185
|
+
/*
|
|
186
|
+
* Disable authorization and custom headers for CDN and direct download URLs to preserve
|
|
187
|
+
* simple GETs whenever possible (do not require preflight requests).
|
|
188
|
+
*/
|
|
189
|
+
disableAuthorization:
|
|
190
|
+
cdnAssetUri.test(url) || directDownloadUri.test(url),
|
|
191
|
+
disableCustomHeaders:
|
|
192
|
+
cdnAssetUri.test(url) || directDownloadUri.test(url),
|
|
186
193
|
},
|
|
187
194
|
);
|
|
188
195
|
const contentType = header["Content-Type"] ?? header["content-type"];
|
|
@@ -223,7 +230,9 @@ export class ShapeDiverAssetApi extends BaseResourceApi {
|
|
|
223
230
|
return await sendRequest(async () => {
|
|
224
231
|
const [header, data] = await this.api.get<ArrayBuffer>(url, undefined, {
|
|
225
232
|
responseType: ShapeDiverSdkApiResponseType.DATA,
|
|
226
|
-
|
|
233
|
+
/* Disable authorization and custom headers for CDN URLs to preserve simple GETs. */
|
|
234
|
+
disableAuthorization: cdnAssetUri.test(url),
|
|
235
|
+
disableCustomHeaders: cdnAssetUri.test(url),
|
|
227
236
|
});
|
|
228
237
|
const contentType = header["Content-Type"] ?? header["content-type"];
|
|
229
238
|
return [data, contentType, type];
|