Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/apideck-libraries/node-sdk
Apideck Node + Typescript SDK
https://github.com/apideck-libraries/node-sdk
accounting api ats cloud-storage crm file-storage hris javascript messaging nodejs quickbooks sdk sms typescript unified-api xero
Last synced: about 2 months ago
JSON representation
Apideck Node + Typescript SDK
- Host: GitHub
- URL: https://github.com/apideck-libraries/node-sdk
- Owner: apideck-libraries
- License: other
- Created: 2021-08-11T10:49:52.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-29T08:18:05.000Z (about 2 months ago)
- Last Synced: 2024-10-29T09:37:44.798Z (about 2 months ago)
- Topics: accounting, api, ats, cloud-storage, crm, file-storage, hris, javascript, messaging, nodejs, quickbooks, sdk, sms, typescript, unified-api, xero
- Language: TypeScript
- Homepage: https://developers.apideck.com/sdks
- Size: 14.3 MB
- Stars: 11
- Watchers: 3
- Forks: 3
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Apideck Node.js SDK
## Table of Contents
- [Table of Contents](#table-of-contents)
- [Installation](#installation)
- [Getting started](#getting-started)
- [Example](#example)
- [Support](#support)
- [License](#license)## Installation
Install the latest SDK using npm:
```console
$ npm install @apideck/node
```or Yarn
```console
$ yarn add @apideck/node
```## Getting started
The module supports all Apideck API endpoints. For complete information about the API, head
to the [docs][2].### Configuration
A new Apideck instance is initialized by passing in required settings to the configuration.
```typescript
import Apideck from '@apideck/node';const apideck = new Apideck({
apiKey: '',
appId: '',
consumerId: ''
})const { crm } = apideck
```
Top level parameters (except for apiKey) can be overriden in specific resource calls.
```typescript
// Declare Unify Api to use
const { crm } = apideck// Override consumerId serviceId as declared in initial configuration for this operation.
const response = await crm.contactsAll({
// serviceId: 'salesforce', // optional
limit: '10'
})
```## Example
Retrieving a list of all contacts and updating the first record with a new address.
```typescript
import Apideck, { PhoneNumberType } from '@apideck/node';
const apideck = new Apideck({
apiKey: '',
appId: '',
consumerId: ''
})const { crm } = apideck
const { data } = await crm.contactsAll({
limit: 10
})const result = await crm.contactsUpdate({
id: data[0].id!,
contact: {
name: "John Doe",
first_name: "John",
last_name: "Doe",
addresses: [{
city: "Hoboken",
line1: "Streetname 19",
state: "NY"
}],
phone_numbers: [{
number: '0486565656',
phoneType: PhoneNumberType.Home
}]
}
})console.info(result)
```The following Apis are currently available:
### AccountingApi
Read the full documentation of the AccountingApi [here](./src/gen/docs/apis/AccountingApi.md).
### AtsApi
Read the full documentation of the AtsApi [here](./src/gen/docs/apis/AtsApi.md).
### ConnectorApi
Read the full documentation of the ConnectorApi [here](./src/gen/docs/apis/ConnectorApi.md).
### CrmApi
Read the full documentation of the CrmApi [here](./src/gen/docs/apis/CrmApi.md).
### EcommerceApi
Read the full documentation of the EcommerceApi [here](./src/gen/docs/apis/EcommerceApi.md).
### FileStorageApi
Read the full documentation of the FileStorageApi [here](./src/gen/docs/apis/FileStorageApi.md).
### HrisApi
Read the full documentation of the HrisApi [here](./src/gen/docs/apis/HrisApi.md).
### IssueTrackingApi
Read the full documentation of the IssueTrackingApi [here](./src/gen/docs/apis/IssueTrackingApi.md).
### LeadApi
Read the full documentation of the LeadApi [here](./src/gen/docs/apis/LeadApi.md).
### PosApi
Read the full documentation of the PosApi [here](./src/gen/docs/apis/PosApi.md).
### SmsApi
Read the full documentation of the SmsApi [here](./src/gen/docs/apis/SmsApi.md).
### VaultApi
Read the full documentation of the VaultApi [here](./src/gen/docs/apis/VaultApi.md).
### WebhookApi
Read the full documentation of the WebhookApi [here](./src/gen/docs/apis/WebhookApi.md).
### Utils
#### uploadFile
A utility for uploading files using the File Storage API. `uploadFile` will automatically use upload sessions for files larger than 4MB. Smaller files will be uploaded with a simple upload call.
**Example Usage**
```ts
const apideck = new Apideck({
apiKey: '',
appId: '',
consumerId: ''
});const file = await apideck.utils.uploadFile({
serviceId: 'dropbox',
file: buffer, // Buffer | string
name: "test.jpg",
size: fileSize, // file size in bytes
contentType: "image/jpg", // optional
});
```## Support
Open an [issue][3]!
## License
[Apache-2.0][4]
[1]: https://apideck.com
[2]: https://developers.apideck.com/
[3]: https://github.com/apideck-libraries/node-sdk/issues/new
[4]: https://github.com/apideck-libraries/node-sdk/blob/main/LICENSE