@shim-finance/typescript-sdk 0.0.2 → 0.0.3
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 +69 -20
- package/dist/client/client.gen.d.ts.map +1 -1
- package/dist/client/client.gen.js +2 -1
- package/dist/client/types.gen.d.ts +1 -1
- package/dist/client/types.gen.d.ts.map +1 -1
- package/dist/core/bodySerializer.gen.d.ts +4 -4
- package/dist/core/bodySerializer.gen.d.ts.map +1 -1
- package/dist/core/params.gen.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @shim-finance/typescript-sdk
|
|
2
2
|
|
|
3
|
-
TypeScript SDK for the Shim.Finance REST API.
|
|
3
|
+
TypeScript SDK for the [Shim.Finance](https://shim.finance) REST API.
|
|
4
4
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
@@ -8,56 +8,105 @@ TypeScript SDK for the Shim.Finance REST API.
|
|
|
8
8
|
npm install @shim-finance/typescript-sdk
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## Quick Start
|
|
12
12
|
|
|
13
13
|
```typescript
|
|
14
|
-
import { client, institutionsList } from '@shim-finance/typescript-sdk';
|
|
14
|
+
import { client, institutionsList, accountsList, transactionsList } from '@shim-finance/typescript-sdk';
|
|
15
15
|
|
|
16
|
-
// Configure the client
|
|
16
|
+
// Configure the client with your API key
|
|
17
17
|
client.setConfig({
|
|
18
18
|
baseUrl: 'https://api.shim.finance',
|
|
19
19
|
headers: {
|
|
20
|
-
Authorization: 'Bearer
|
|
20
|
+
Authorization: 'Bearer sk_live_YOUR_API_KEY',
|
|
21
21
|
},
|
|
22
22
|
});
|
|
23
23
|
|
|
24
|
-
// List institutions
|
|
25
|
-
const
|
|
24
|
+
// List connected institutions
|
|
25
|
+
const institutions = await institutionsList();
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
// List all accounts
|
|
28
|
+
const accounts = await accountsList();
|
|
29
|
+
|
|
30
|
+
// List transactions with filtering
|
|
31
|
+
const transactions = await transactionsList({
|
|
32
|
+
query: {
|
|
33
|
+
startDate: '2026-01-01',
|
|
34
|
+
endDate: '2026-01-31',
|
|
35
|
+
limit: '50',
|
|
36
|
+
},
|
|
37
|
+
});
|
|
32
38
|
```
|
|
33
39
|
|
|
34
40
|
## Custom Client
|
|
35
41
|
|
|
42
|
+
Use `createClient` if you need multiple clients or custom configuration:
|
|
43
|
+
|
|
36
44
|
```typescript
|
|
37
|
-
import { createClient, createConfig,
|
|
45
|
+
import { createClient, createConfig, transactionsSync } from '@shim-finance/typescript-sdk';
|
|
38
46
|
|
|
39
47
|
const myClient = createClient(
|
|
40
48
|
createConfig({
|
|
41
49
|
baseUrl: 'https://api.shim.finance',
|
|
42
50
|
headers: {
|
|
43
|
-
Authorization: 'Bearer
|
|
51
|
+
Authorization: 'Bearer sk_live_YOUR_API_KEY',
|
|
44
52
|
},
|
|
45
53
|
})
|
|
46
54
|
);
|
|
47
55
|
|
|
48
|
-
const { data } = await
|
|
56
|
+
const { data } = await transactionsSync({ client: myClient });
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Error Handling
|
|
60
|
+
|
|
61
|
+
All SDK functions return `{ data, error }`. Check `error` before using `data`:
|
|
62
|
+
|
|
63
|
+
```typescript
|
|
64
|
+
const { data, error } = await transactionsList();
|
|
65
|
+
|
|
66
|
+
if (error) {
|
|
67
|
+
console.error('API error:', error);
|
|
68
|
+
} else {
|
|
69
|
+
console.log(\`Found \${data.total} transactions\`);
|
|
70
|
+
}
|
|
49
71
|
```
|
|
50
72
|
|
|
51
73
|
## API Reference
|
|
52
74
|
|
|
53
75
|
### `institutionsList()`
|
|
54
76
|
|
|
55
|
-
Returns all connected financial institutions for the authenticated user.
|
|
77
|
+
Returns all connected financial institutions (banks) for the authenticated user.
|
|
78
|
+
|
|
79
|
+
### `accountsList()`
|
|
80
|
+
|
|
81
|
+
Returns all bank accounts across all connected institutions.
|
|
82
|
+
|
|
83
|
+
### `transactionsList(options?)`
|
|
84
|
+
|
|
85
|
+
Returns transactions with optional filtering and pagination.
|
|
86
|
+
|
|
87
|
+
| Parameter | Type | Description |
|
|
88
|
+
|-----------|------|-------------|
|
|
89
|
+
| `query.accountId` | `string` | Filter by account ID |
|
|
90
|
+
| `query.startDate` | `string` | Inclusive start date (YYYY-MM-DD) |
|
|
91
|
+
| `query.endDate` | `string` | Inclusive end date (YYYY-MM-DD) |
|
|
92
|
+
| `query.limit` | `string` | Max results per page (default 100, max 500) |
|
|
93
|
+
| `query.offset` | `string` | Number of results to skip |
|
|
94
|
+
|
|
95
|
+
### `transactionsSync(options?)`
|
|
96
|
+
|
|
97
|
+
Incrementally sync transaction changes. Omit `cursor` for initial sync, then pass the returned `cursor` to subsequent calls.
|
|
98
|
+
|
|
99
|
+
| Parameter | Type | Description |
|
|
100
|
+
|-----------|------|-------------|
|
|
101
|
+
| `query.cursor` | `string` | Sync cursor from a previous response |
|
|
102
|
+
|
|
103
|
+
Returns `{ added, modified, removed, cursor, hasMore }`.
|
|
104
|
+
|
|
105
|
+
## Authentication
|
|
106
|
+
|
|
107
|
+
All endpoints require an API key. Create one in your [Shim.Finance dashboard](https://app.shim.finance) under Settings > API Keys.
|
|
56
108
|
|
|
57
|
-
|
|
58
|
-
- `200`: `Institution[]` - Array of institutions
|
|
59
|
-
- `401`: `Unauthorized` - Missing or invalid authorization
|
|
60
|
-
- `500`: `InternalError` - Server error
|
|
109
|
+
API keys use the format `sk_live_<token>`. Include it as a Bearer token in the Authorization header.
|
|
61
110
|
|
|
62
111
|
## License
|
|
63
112
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.gen.d.ts","sourceRoot":"","sources":["../../src/client/client.gen.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAA0C,MAAM,aAAa,CAAC;AAgB1F,eAAO,MAAM,YAAY,GAAI,SAAQ,MAAW,KAAG,
|
|
1
|
+
{"version":3,"file":"client.gen.d.ts","sourceRoot":"","sources":["../../src/client/client.gen.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAA0C,MAAM,aAAa,CAAC;AAgB1F,eAAO,MAAM,YAAY,GAAI,SAAQ,MAAW,KAAG,MA4QlD,CAAC"}
|
|
@@ -204,8 +204,9 @@ export const createClient = (config = {}) => {
|
|
|
204
204
|
url,
|
|
205
205
|
});
|
|
206
206
|
};
|
|
207
|
+
const _buildUrl = (options) => buildUrl({ ..._config, ...options });
|
|
207
208
|
return {
|
|
208
|
-
buildUrl,
|
|
209
|
+
buildUrl: _buildUrl,
|
|
209
210
|
connect: makeMethodFn('CONNECT'),
|
|
210
211
|
delete: makeMethodFn('DELETE'),
|
|
211
212
|
get: makeMethodFn('GET'),
|
|
@@ -47,7 +47,7 @@ export interface Config<T extends ClientOptions = ClientOptions> extends Omit<Re
|
|
|
47
47
|
export interface RequestOptions<TData = unknown, TResponseStyle extends ResponseStyle = 'fields', ThrowOnError extends boolean = boolean, Url extends string = string> extends Config<{
|
|
48
48
|
responseStyle: TResponseStyle;
|
|
49
49
|
throwOnError: ThrowOnError;
|
|
50
|
-
}>, Pick<ServerSentEventsOptions<TData>, 'onSseError' | 'onSseEvent' | 'sseDefaultRetryDelay' | 'sseMaxRetryAttempts' | 'sseMaxRetryDelay'> {
|
|
50
|
+
}>, Pick<ServerSentEventsOptions<TData>, 'onRequest' | 'onSseError' | 'onSseEvent' | 'sseDefaultRetryDelay' | 'sseMaxRetryAttempts' | 'sseMaxRetryDelay'> {
|
|
51
51
|
/**
|
|
52
52
|
* Any body that you want to add to your request.
|
|
53
53
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.gen.d.ts","sourceRoot":"","sources":["../../src/client/types.gen.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.gen.d.ts","sourceRoot":"","sources":["../../src/client/types.gen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ArrayStyle, ObjectStyle, SerializerOptions } from './pathSerializer.gen';
|
|
2
2
|
export type QuerySerializer = (query: Record<string, unknown>) => string;
|
|
3
|
-
export type BodySerializer = (body:
|
|
3
|
+
export type BodySerializer = (body: unknown) => unknown;
|
|
4
4
|
type QuerySerializerOptionsObject = {
|
|
5
5
|
allowReserved?: boolean;
|
|
6
6
|
array?: Partial<SerializerOptions<ArrayStyle>>;
|
|
@@ -14,13 +14,13 @@ export type QuerySerializerOptions = QuerySerializerOptionsObject & {
|
|
|
14
14
|
parameters?: Record<string, QuerySerializerOptionsObject>;
|
|
15
15
|
};
|
|
16
16
|
export declare const formDataBodySerializer: {
|
|
17
|
-
bodySerializer:
|
|
17
|
+
bodySerializer: (body: unknown) => FormData;
|
|
18
18
|
};
|
|
19
19
|
export declare const jsonBodySerializer: {
|
|
20
|
-
bodySerializer:
|
|
20
|
+
bodySerializer: (body: unknown) => string;
|
|
21
21
|
};
|
|
22
22
|
export declare const urlSearchParamsBodySerializer: {
|
|
23
|
-
bodySerializer:
|
|
23
|
+
bodySerializer: (body: unknown) => string;
|
|
24
24
|
};
|
|
25
25
|
export {};
|
|
26
26
|
//# sourceMappingURL=bodySerializer.gen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bodySerializer.gen.d.ts","sourceRoot":"","sources":["../../src/core/bodySerializer.gen.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEvF,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;AAEzE,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"bodySerializer.gen.d.ts","sourceRoot":"","sources":["../../src/core/bodySerializer.gen.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEvF,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC;AAEzE,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC;AAExD,KAAK,4BAA4B,GAAG;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,4BAA4B,GAAG;IAClE;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;CAC3D,CAAC;AAoBF,eAAO,MAAM,sBAAsB;2BACV,OAAO,KAAG,QAAQ;CAgB1C,CAAC;AAEF,eAAO,MAAM,kBAAkB;2BACN,OAAO,KAAG,MAAM;CAExC,CAAC;AAEF,eAAO,MAAM,6BAA6B;2BACjB,OAAO,KAAG,MAAM;CAgBxC,CAAC"}
|
package/dist/core/params.gen.js
CHANGED
|
@@ -32,7 +32,7 @@ const buildKeyMap = (fields, map) => {
|
|
|
32
32
|
};
|
|
33
33
|
const stripEmptySlots = (params) => {
|
|
34
34
|
for (const [slot, value] of Object.entries(params)) {
|
|
35
|
-
if (value && typeof value === 'object' && !Object.keys(value).length) {
|
|
35
|
+
if (value && typeof value === 'object' && !Array.isArray(value) && !Object.keys(value).length) {
|
|
36
36
|
delete params[slot];
|
|
37
37
|
}
|
|
38
38
|
}
|