UNPKG

@apideck/node

Version:
201 lines (129 loc) 4.74 kB
# Apideck Node.js SDK > ⚠️ **DEPRECATION NOTICE**: This SDK is deprecated and will be archived on May 31, 2025. Please transition to the [new SDK](https://github.com/apideck-libraries/sdk-typescript) before this date. After May 31, 2025, this repository will be archived and will no longer receive any updates. To support you during this transition please refer to our [migration guide](https://developers.apideck.com/guides/sdk-migration). ## 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: '<insert-api-key-here>', appId: '<insert-application-id-here>', consumerId: '<insert-consumer-id-here>' }) 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: '<insert-api-key-here>', appId: '<insert-application-id-here>', consumerId: '<insert-consumer-id-here>' }) 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) ``` <a name="documentation-for-api-endpoints"></a> ## Apideck Unified Apis 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: '<insert-api-key-here>', appId: '<insert-application-id-here>', consumerId: '<insert-consumer-id-here>' }); 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