0.29.2 • Published 6 months ago

@globality/nodule-openapi v0.29.2

Weekly downloads
42
License
MIT
Repository
github
Last release
6 months ago

nodule-openapi

Opinionated OpenAPI 2.0 (Swagger) Client

Conventions

  • Client code should be lightweight (e.g. few dependencies) and initialize quickly (read: synchronously)

    As such, OpenAPI specs are expected to be available locally (e.g. commited to version control) and loaded statically (i.e. without requiring promise resolution).

  • Client interfaces should use fluent JavaScript.

    As of this writing, OpenAPI operations are exposed as functions named after operationId, scoped to an an object named after the operation's first tag. (Both operation fields are thus mandatory).

  • HTTP requests are assumed to use camelCase for body parameters and snake_case for path and query string parameters; parameter names should be automatically converted from camelCase accordingly.

  • Extensible most default: most internal behaviors should be overridable via options.

Usage

In pseudo-code:

const OpenAPI = require('./lib').default;
const spec = require('./example/petstore-minimal.json');

const client = OpenAPI(spec, 'petstore');
client.pet.search().then(...).catch(...);

createOpenAPIClient

The nodule-openapi includes a function (createOpenAPIClient) that allows the wrapping of the OpenAPI swagger client into callable functions. See the README in the src/clients for more information.

Retries

Clients can additionally be configured to automatically retry failed requests, after having met some criteria to qualify it as retryable:

  • The raised error is retryable (e.g. 50x response codes, client exceptions)
  • The operation itself is retryable. As of this writing, this will only include read operations

By default, retries are not enabled.

XXX: Due to a bug in nodule-config, retry values of 0/1 will not work. 2+ will all be valid.

0.25.0-dev1753

10 months ago

0.26.0-dev1784

9 months ago

0.28.0-dev1871

9 months ago

0.26.0-dev1777

9 months ago

0.29.0

7 months ago

0.29.2

6 months ago

0.26.0-dev1765

10 months ago

0.29.0-dev1891

7 months ago

0.29.0-dev1897

7 months ago

0.26.0-dev1760

10 months ago

0.25.0-dev1748

10 months ago

0.27.0-dev1808

9 months ago

0.26.0

9 months ago

0.29.0-dev1940

6 months ago

0.29.0-dev1946

6 months ago

0.29.0-dev1909

6 months ago

0.28.0-dev1847

9 months ago

0.27.0-dev1819

9 months ago

0.27.0-dev1814

9 months ago

0.29.0-dev1916

6 months ago

0.29.0-dev1922

6 months ago

0.29.0-dev1886

7 months ago

0.27.0

9 months ago

0.27.0-dev1826

9 months ago

0.29.0-dev1928

6 months ago

0.27.0-dev1789

9 months ago

0.27.0-dev1831

9 months ago

0.28.0-dev1865

9 months ago

0.27.0-dev1796

9 months ago

0.28.0

9 months ago

0.28.0-dev1858

9 months ago

0.27.0-dev1843

9 months ago

0.25.0-dev1742

1 year ago

0.24.0-dev1687

1 year ago

0.25.0

1 year ago

0.25.0-dev1730

1 year ago

0.24.0-dev1694

1 year ago

0.25.0-dev1712

1 year ago

0.25.0-dev1717

1 year ago

0.25.0-dev1726

1 year ago

0.24.0-dev1706

1 year ago

0.24.0-dev1700

1 year ago

0.24.0-dev1681

1 year ago

0.24.0-dev1675

1 year ago

0.23.0-dev1620

2 years ago

0.23.0-dev1627

2 years ago

0.24.0-dev1668

1 year ago

0.24.0-dev1657

2 years ago

0.23.0-dev1632

2 years ago

0.24.0

2 years ago

0.24.0-dev1650

2 years ago

0.22.0-dev1472

2 years ago

0.22.0-dev1590

2 years ago

0.22.0-dev1596

2 years ago

0.22.0-dev1483

2 years ago

0.21.0-dev1392

2 years ago

0.21.0-dev1422

2 years ago

0.21.0-dev1421

2 years ago

0.22.0-dev1492

2 years ago

0.22.0-dev1491

2 years ago

0.21.0-dev1381

2 years ago

0.22.0-dev1497

2 years ago

0.23.0-dev1602

2 years ago

0.23.0-dev1609

2 years ago

0.21.0-dev1415

2 years ago

0.22.0-dev1426

2 years ago

0.22.0

2 years ago

0.21.0-dev1419

2 years ago

0.21.0-dev1405

2 years ago

0.22.0-dev1431

2 years ago

0.22.0-dev1559

2 years ago

0.21.0-dev1408

2 years ago

0.21.0-dev1407

2 years ago

0.22.0-dev1566

2 years ago

0.23.0

2 years ago

0.22.0-dev1572

2 years ago

0.22.0-dev1578

2 years ago

0.22.0-dev1457

2 years ago

0.22.0-dev1462

2 years ago

0.22.0-dev1500

2 years ago

0.22.0-dev1467

2 years ago

0.22.0-dev1585

2 years ago

0.21.0-dev1376

2 years ago

0.21.0-dev1371

2 years ago

0.21.0-dev1366

2 years ago

0.21.0-dev1322

2 years ago

0.21.0-dev1283

2 years ago

0.21.0-dev1277

2 years ago

0.21.0-dev1315

2 years ago

0.21.0-dev1358

2 years ago

0.21.0-dev1352

2 years ago

0.21.0-dev1301

2 years ago

0.21.0-dev1269

2 years ago

0.21.0-dev1309

2 years ago

0.21.0-dev1336

2 years ago

0.21.0-dev1291

2 years ago

0.21.0-dev1330

2 years ago

0.21.0-dev1247

2 years ago

0.21.0-dev1236

2 years ago

0.21.0

2 years ago

0.20.0-dev1231

2 years ago

0.21.0-dev1251

2 years ago

0.21.0-dev1250

2 years ago

0.20.1

2 years ago

0.20.0

2 years ago

0.19.0-dev1157

2 years ago

0.20.0-dev1180

2 years ago

0.20.0-dev1212

2 years ago

0.20.0-dev1217

2 years ago

0.20.0-dev1191

2 years ago

0.20.0-dev1196

2 years ago

0.19.0-dev1175

2 years ago

0.19.0-dev1167

2 years ago

0.19.0-dev1162

2 years ago

0.20.2

2 years ago

0.20.0-dev1205

2 years ago

0.19.0-dev1152

2 years ago

0.19.0-dev1147

3 years ago

0.19.0-dev1119

3 years ago

0.19.6

3 years ago

0.19.0-dev1137

3 years ago

0.19.0-dev1126

3 years ago

0.19.0-dev1121

3 years ago

0.19.0-dev1111

3 years ago

0.19.0-dev1078

3 years ago

0.19.0-dev1071

3 years ago

0.19.0-dev1073

3 years ago

0.19.5

3 years ago

0.19.0-dev1063

3 years ago

0.19.0-dev1058

3 years ago

0.19.0-dev1053

3 years ago

0.19.0-dev1048

3 years ago

0.19.0-dev1083

3 years ago

0.19.0-dev1088

3 years ago

0.19.0-dev1035

3 years ago

0.19.0-dev1030

3 years ago

0.19.0-dev1025

3 years ago

0.19.0-dev1040

3 years ago

0.19.0-dev1020

3 years ago

0.19.0-dev999

3 years ago

0.19.4

3 years ago

0.19.0-dev1010

3 years ago

0.19.0-dev994

3 years ago

0.19.0-dev1004

3 years ago

0.3.0-dev979

3 years ago

0.19.0-dev989

3 years ago

0.3.1

3 years ago

0.19.0-dev984

3 years ago

0.19.3

3 years ago

0.19.2

3 years ago

0.19.1

3 years ago

0.18.0

4 years ago

0.17.2

4 years ago

0.17.1

5 years ago

0.17.0

5 years ago

0.16.1

5 years ago

0.16.0

5 years ago

0.15.1

5 years ago

0.15.0

5 years ago

0.14.0

5 years ago

0.12.0

5 years ago

0.11.2

5 years ago

0.11.1

5 years ago

0.10.0

6 years ago

0.9.3

6 years ago

0.9.0

6 years ago

0.8.1

6 years ago

0.8.0

6 years ago

0.7.0

6 years ago

0.6.0

6 years ago

0.5.0

6 years ago

0.4.1

6 years ago