3005.318.0 • Published 16 hours ago

@springworks/api-client v3005.318.0

Weekly downloads
2,960
License
-
Repository
github
Last release
16 hours ago

@springworks/api-client

Module for sending requests to other APIs through a circuit breaker created by @springworks/circuit-breaker-factory.

yarn add @springworks/api-client

API

createClient(params)

Creates a api client using the provided config. Returns an object that exposes a sendRequest(opts, expected_status_codes) function that returns a Promise.

params

NameTypeDescriptionRequired
base_urlStringFully qualified uri string used as the base urlYes
circuit_breaker_configObjectOptional. The circuit breaker config. Please refer to this documentation for details.Yes
loggerLoggerSee @springworks/logger-interfacesYes
authObjectAn object with username and password.No
opt_optionsObjectNo
opt_options.opt_authObjectOptional authentication object that will be used for all requests sent towards the provided base_url. If there is an auth property in the options send in sendRequest then opt_auth gets overwritten.No
opt_options.opt_timeoutNumberTimeout (millis) used in all request from created client.No

sendRequest(options, expected_status_codes)

Sends the request based on the provided options and returns a resolved/rejected Promise.

Options

ParameterDescriptionTypeRequired
endpoint_uriURI of the endpoint that's to be reachedstringYes

expected_status_codes

TypeDescriptionEntries TypeEntries RangeRequired
ArrayExpected status codes by the invoker of this functionNumber[100, 500)Yes

Example Usage

var api_client_factory = require('@springworks/api-client');

var config = {
  source_name: 'my-api',
  target_name: 'facebook-graph-api',
  window_duration: 1000, // optional
  num_buckets: 10, // optional
  timeout_duration: 3000, // optional
  error_threshold: 50, // optional
  volume_threshold: 5, // optional
};

var api_client = api_client_factory.createClient({
  base_url: 'http://api.machinetohuman.com',
  circuit_breaker_config: config,
  logger: logger,
});

var options = {
  endpoint_uri: '/vehicles/1234',
  // other request options
};

var expected_status_codes = [200];

api_client
  .sendRequest(options, expected_status_codes)
  .then(function (response_body) {
    // do your thing;
  })
  .catch(function (err) {
    // err.code is the statusCode of the response or 417 (if responded with code < 400)
  });
3005.318.0

16 hours ago

3005.293.0

2 months ago

3005.287.0

2 months ago

3005.278.1

2 months ago

3005.279.0

2 months ago

3005.277.0

2 months ago

3005.276.0

2 months ago

3005.272.0

3 months ago

3005.261.0

3 months ago

3005.262.0

3 months ago

3005.258.0

5 months ago

3005.250.0

6 months ago

3005.234.0

9 months ago

3005.235.0

9 months ago

3005.244.0

7 months ago

3005.229.0

11 months ago

3005.219.0

1 year ago

3005.208.0

1 year ago

3005.205.0

1 year ago

3005.218.0

1 year ago

3005.206.0

1 year ago

3005.209.0

1 year ago

3005.210.0

1 year ago

3005.203.3

1 year ago

3005.204.0

1 year ago

3005.204.3

1 year ago

3005.202.3

1 year ago

3005.195.3

1 year ago

3005.193.0

1 year ago

3005.192.0

1 year ago

3005.185.2

1 year ago

3005.185.0

1 year ago

3005.184.0

1 year ago

3005.178.0

1 year ago

3005.177.0

1 year ago

3005.170.0

1 year ago

3005.162.3

2 years ago

3005.159.2

2 years ago

3005.154.0

2 years ago

3005.146.7

2 years ago

3005.143.0

2 years ago

3005.145.1

2 years ago

3005.145.0

2 years ago

3005.145.2

2 years ago

3005.129.0

2 years ago

3005.117.1

2 years ago

3005.113.5

2 years ago

3005.113.3

2 years ago

3005.113.1

2 years ago

3005.113.2

2 years ago

3005.113.0

2 years ago

3005.114.6

2 years ago

3005.114.5

2 years ago

3005.114.2

2 years ago

3005.93.0

2 years ago

3005.86.3

2 years ago

3005.86.2

2 years ago

3005.86.1

2 years ago

3005.86.0

2 years ago

3005.86.6

2 years ago

3005.100.1

2 years ago

3005.90.1

2 years ago

3005.90.3

2 years ago

3005.82.0

3 years ago

3005.81.0

3 years ago

3005.79.0

3 years ago

3005.80.0

3 years ago

3005.78.0

3 years ago

3005.78.1

3 years ago

3005.76.0

3 years ago

3005.77.0

3 years ago

3005.44.0

3 years ago

3005.40.2

3 years ago

3005.34.1

3 years ago

3005.35.0

3 years ago

3005.34.0

3 years ago

3005.33.0

3 years ago

3005.31.0

3 years ago

3005.32.0

3 years ago

3005.25.0

3 years ago

3005.23.0

3 years ago

3005.22.2

3 years ago

3005.22.0

3 years ago

3005.19.0

3 years ago

3005.14.3

3 years ago

3005.10.0

3 years ago

3005.9.0

3 years ago

3005.8.0

3 years ago

3005.7.0

3 years ago

3005.5.0

3 years ago

3005.2.0

3 years ago

3005.0.0

3 years ago

3004.2.0

3 years ago

3004.0.1

3 years ago

3004.0.0

4 years ago

3003.0.2

4 years ago

3003.0.0

4 years ago

3002.20.2

4 years ago

3002.20.1

4 years ago

3002.20.0

4 years ago

3002.19.120

4 years ago

3002.19.119

4 years ago

3002.19.118

4 years ago

3002.19.117

4 years ago

3002.19.116

4 years ago

3002.19.115

4 years ago

3002.19.114

4 years ago

3002.19.113

4 years ago

3002.19.112

4 years ago

3002.19.111

4 years ago

3002.19.110

4 years ago

3002.19.109

4 years ago

3002.19.108

4 years ago

3002.19.106

4 years ago

3002.19.107

4 years ago

3002.19.104

4 years ago

3002.19.105

4 years ago

3002.19.103

4 years ago

3002.19.102

4 years ago

3002.19.101

4 years ago

3002.19.100

4 years ago

3002.19.99

4 years ago

3002.19.98

4 years ago

3002.19.97

4 years ago

3002.19.96

4 years ago

3002.19.95

4 years ago

3002.19.93

4 years ago

3002.19.94

4 years ago

3002.19.91

4 years ago

3002.19.90

4 years ago

3002.19.89

4 years ago

3002.19.88

4 years ago

3002.19.87

4 years ago

3002.19.86

4 years ago

3002.19.81

4 years ago

3002.19.80

4 years ago

3002.19.79

4 years ago

3002.19.78

4 years ago

3002.19.77

4 years ago

3002.19.76

4 years ago

3002.19.75

4 years ago

3002.19.74

4 years ago

3002.19.73

4 years ago

3002.19.72

4 years ago

3002.19.71

4 years ago

3002.19.70

4 years ago

3002.19.68

4 years ago

3002.19.69

4 years ago

3002.19.66

4 years ago

3002.19.65

4 years ago

3002.19.64

4 years ago

3002.19.63

4 years ago

3002.19.62

4 years ago

3002.19.61

4 years ago

3002.19.60

4 years ago

3002.19.59

4 years ago

3002.19.58

4 years ago

3002.19.57

4 years ago

3002.19.56

4 years ago

3002.19.55

4 years ago

3002.19.54

4 years ago

3002.19.53

4 years ago

3002.19.52

4 years ago

3002.19.51

4 years ago

3002.19.50

4 years ago

3002.19.49

4 years ago

3002.19.48

4 years ago

3002.19.47

4 years ago

3002.19.46

4 years ago

3002.19.45

4 years ago

3002.19.44

4 years ago

3002.19.43

4 years ago

3002.19.42

4 years ago

3002.19.41

4 years ago

3002.19.40

4 years ago

3002.19.39

4 years ago

3002.19.38

4 years ago

3002.19.37

4 years ago

3002.19.36

4 years ago

3002.19.35

4 years ago

3002.19.34

4 years ago

3002.19.33

4 years ago

3002.19.32

4 years ago

3002.19.31

4 years ago

3002.19.30

4 years ago

3002.19.29

4 years ago

3002.19.28

4 years ago

3002.19.27

4 years ago

3002.19.26

4 years ago

3002.19.24

4 years ago

3002.19.23

4 years ago

3002.19.25

4 years ago

3002.19.22

4 years ago

3002.19.21

4 years ago

3002.19.20

4 years ago

3002.19.19

4 years ago

3002.19.18

4 years ago

3002.19.17

4 years ago

3002.19.16

4 years ago

3002.19.15

4 years ago

3002.19.14

4 years ago

3002.19.13

4 years ago

3002.19.12

4 years ago

3002.19.11

4 years ago

3002.19.10

4 years ago

3002.19.8

4 years ago

3002.19.9

4 years ago

3002.19.6

4 years ago

3002.19.7

4 years ago

3002.19.5

4 years ago

3002.16.4

4 years ago

3002.14.2

4 years ago

3002.13.2

5 years ago

3002.9.1

5 years ago

3002.5.0

5 years ago

3002.4.0

5 years ago

3002.0.0

5 years ago

3001.2.4

5 years ago

3001.0.3

5 years ago

3001.0.1

5 years ago

3001.0.0

5 years ago

3000.54.0

5 years ago

3000.51.0

5 years ago

3000.50.1

5 years ago

3000.47.0

5 years ago

3000.45.0

5 years ago

3000.44.4

5 years ago

3000.44.3

5 years ago

3000.44.2

5 years ago

3000.44.1

5 years ago

3000.44.0

5 years ago

3000.42.0

5 years ago

3000.41.1

5 years ago

3000.40.3

5 years ago

3000.40.1

5 years ago

3000.36.1

5 years ago

3000.35.1

5 years ago

3000.33.1

5 years ago

3000.22.1

5 years ago

3000.20.0

5 years ago

2019.6.20-7.5.59

5 years ago

2019.6.20-7.2.38

5 years ago

2019.6.20-7.1.2

5 years ago

2019.6.19-9.6.8

5 years ago

2019.6.19-9.5.47

5 years ago

2019.6.19-9.4.54

5 years ago

2019.4.1-8.1.43

5 years ago

2019.4.1-8.4.22

5 years ago

2019.4.1-8.4.8

5 years ago

2019.4.1-7.59.38

5 years ago

2019.3.19-9.5.15

5 years ago

2019.3.19-9.4.19

5 years ago

2019.3.19-9.5.42

5 years ago

2019.3.4-16.0.25

5 years ago

2019.3.4-11.32.9

5 years ago

2019.3.1-9.0.43

5 years ago

2019.3.1-9.0.25

5 years ago

2019.2.28-9.5.14

5 years ago

2019.2.27-8.44.1

5 years ago

2019.2.26-16.2.5

5 years ago

2019.2.19-8.20.3

5 years ago

2019.2.19-7.12.8

5 years ago

2019.2.19-7.13.6

5 years ago

2019.2.19-7.13.1

5 years ago

2019.2.18-15.7.9

5 years ago

2019.2.18-9.9.26

5 years ago

2019.2.18-9.8.45

5 years ago

2019.2.18-9.8.19

5 years ago

2019.2.18-9.8.7

5 years ago

2019.2.15-9.30.4

5 years ago

2019.2.15-9.30.1

5 years ago

2019.1.8-7.55.2

5 years ago

2019.1.8-7.53.14

5 years ago

2019.1.8-7.52.22

5 years ago

2018.11.6-9.8.48

5 years ago

2018.11.6-8.57.9

5 years ago

6.3.1

6 years ago

6.3.0

6 years ago

6.2.5

6 years ago

6.2.4

6 years ago

6.2.3

7 years ago

6.2.2

7 years ago

6.2.1

7 years ago

6.2.0

7 years ago

6.1.14

7 years ago

6.1.13

7 years ago

6.1.12

7 years ago

6.1.11

7 years ago

6.1.10

7 years ago

6.1.9

7 years ago

6.1.8

7 years ago

6.1.7

7 years ago

6.1.6

7 years ago

6.1.5

8 years ago

6.1.4

8 years ago

6.1.3

8 years ago

6.1.2

8 years ago

6.1.1

8 years ago

6.1.0

8 years ago

6.0.35

8 years ago

6.0.34

8 years ago

6.0.33

8 years ago

6.0.32

8 years ago

6.0.31

8 years ago

6.0.30

8 years ago

6.0.29

8 years ago

6.0.28

8 years ago

6.0.27

8 years ago

6.0.26

8 years ago

6.0.25

8 years ago

6.0.24

8 years ago

6.0.23

8 years ago

6.0.22

8 years ago

6.0.21

8 years ago

6.0.20

8 years ago

6.0.19

8 years ago

6.0.18

8 years ago

6.0.17

8 years ago

6.0.16

8 years ago

6.0.15

8 years ago

6.0.14

8 years ago

6.0.13

8 years ago

6.0.12

8 years ago

6.0.11

8 years ago

6.0.10

8 years ago

6.0.9

8 years ago

6.0.8

8 years ago

6.0.7

8 years ago

6.0.6

8 years ago

6.0.5

8 years ago

6.0.4

8 years ago

6.0.3

8 years ago

6.0.2

8 years ago

6.0.1

8 years ago

6.0.0

8 years ago

5.1.0

8 years ago

5.0.4

9 years ago

5.0.3

9 years ago

5.0.2

9 years ago

5.0.1

9 years ago

5.0.0

9 years ago

4.0.3

9 years ago

4.0.1

9 years ago

4.0.0

9 years ago

3.0.0

9 years ago

2.1.1

9 years ago

2.1.0

9 years ago

2.0.0

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago