Skip to content
This repository was archived by the owner on Nov 15, 2024. It is now read-only.

Commit 04e5250

Browse files
committed
feat: add request ID to thrown errors
Closes #34
1 parent 47635a6 commit 04e5250

File tree

6 files changed

+21
-8
lines changed

6 files changed

+21
-8
lines changed

docs/classes/SeamAPIError.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
- [message](SeamAPIError.md#message)
2020
- [metadata](SeamAPIError.md#metadata)
2121
- [name](SeamAPIError.md#name)
22+
- [requestId](SeamAPIError.md#requestid)
2223
- [stack](SeamAPIError.md#stack)
2324
- [status](SeamAPIError.md#status)
2425
- [prepareStackTrace](SeamAPIError.md#preparestacktrace)
@@ -33,13 +34,14 @@
3334

3435
### constructor
3536

36-
**new SeamAPIError**(`status`, `metadata?`)
37+
**new SeamAPIError**(`status`, `requestId`, `metadata?`)
3738

3839
#### Parameters
3940

4041
| Name | Type |
4142
| :------ | :------ |
4243
| `status` | `number` |
44+
| `requestId` | `string` |
4345
| `metadata?` | [`SeamAPIErrorMetadata`](../interfaces/SeamAPIErrorMetadata.md) |
4446

4547
#### Overrides
@@ -86,6 +88,12 @@ node_modules/typescript/lib/lib.es5.d.ts:1022
8688

8789
___
8890

91+
### requestId
92+
93+
**requestId**: `string`
94+
95+
___
96+
8997
### stack
9098

9199
`Optional` **stack**: `string`
@@ -163,7 +171,7 @@ node_modules/@types/node/globals.d.ts:13
163171

164172
#### Defined in
165173

166-
[src/lib/api-error.ts:16](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L16)
174+
[src/lib/api-error.ts:20](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L20)
167175

168176
___
169177

docs/classes/SeamActionAttemptError.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ Error.constructor
4949

5050
#### Defined in
5151

52-
[src/lib/api-error.ts:22](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L22)
52+
[src/lib/api-error.ts:26](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L26)
5353

5454
## Properties
5555

@@ -160,7 +160,7 @@ node_modules/@types/node/globals.d.ts:13
160160

161161
#### Defined in
162162

163-
[src/lib/api-error.ts:34](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L34)
163+
[src/lib/api-error.ts:38](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L38)
164164

165165
___
166166

docs/classes/SeamMalformedInputError.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Error.constructor
4646

4747
#### Defined in
4848

49-
[src/lib/api-error.ts:40](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L40)
49+
[src/lib/api-error.ts:44](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L44)
5050

5151
## Properties
5252

@@ -155,7 +155,7 @@ node_modules/@types/node/globals.d.ts:13
155155

156156
#### Defined in
157157

158-
[src/lib/api-error.ts:48](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L48)
158+
[src/lib/api-error.ts:52](https://github.com/seamapi/seamapi-javascript/blob/main/src/lib/api-error.ts#L52)
159159

160160
___
161161

src/client.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ export class Seam extends Routes {
8181

8282
throw new SeamAPIError(
8383
error.response.status,
84+
error.response.headers["seam-request-id"],
8485
(error.response.data as ErroredAPIResponse).error
8586
)
8687
}

src/lib/api-error.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@ export interface SeamAPIErrorMetadata {
55
}
66

77
export class SeamAPIError extends Error {
8-
constructor(public status: number, public metadata?: SeamAPIErrorMetadata) {
8+
constructor(
9+
public status: number,
10+
public requestId: string,
11+
public metadata?: SeamAPIErrorMetadata
12+
) {
913
super(metadata?.message ?? "Unknown Error")
1014

1115
if (Error.captureStackTrace) {

tests

Submodule tests updated from 70adac6 to be66652

0 commit comments

Comments
 (0)