(accounting.customers)
- list - List Customers
- create - Create Customer
- get - Get Customer
- update - Update Customer
- delete - Delete Customer
List Customers
import { Apideck } from "@apideck/unify";
const apideck = new Apideck({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const result = await apideck.accounting.customers.list({
serviceId: "salesforce",
filter: {
companyName: "SpaceX",
displayName: "Elon Musk",
firstName: "Elon",
lastName: "Musk",
email: "elon@musk.com",
status: "active",
updatedSince: new Date("2020-09-30T07:43:32.000Z"),
},
sort: {
by: "updated_at",
direction: "desc",
},
passThrough: {
"search": "San Francisco",
},
fields: "id,updated_at",
});
for await (const page of result) {
// Handle the page
console.log(page);
}
}
run();
The standalone function version of this method:
import { ApideckCore } from "@apideck/unify/core.js";
import { accountingCustomersList } from "@apideck/unify/funcs/accountingCustomersList.js";
// Use `ApideckCore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const apideck = new ApideckCore({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const res = await accountingCustomersList(apideck, {
serviceId: "salesforce",
filter: {
companyName: "SpaceX",
displayName: "Elon Musk",
firstName: "Elon",
lastName: "Musk",
email: "elon@musk.com",
status: "active",
updatedSince: new Date("2020-09-30T07:43:32.000Z"),
},
sort: {
by: "updated_at",
direction: "desc",
},
passThrough: {
"search": "San Francisco",
},
fields: "id,updated_at",
});
if (!res.ok) {
throw res.error;
}
const { value: result } = res;
for await (const page of result) {
// Handle the page
console.log(page);
}
}
run();
Parameter | Type | Required | Description |
---|---|---|---|
request |
operations.AccountingCustomersAllRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body , are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Promise<operations.AccountingCustomersAllResponse>
Error Type | Status Code | Content Type |
---|---|---|
errors.BadRequestResponse | 400 | application/json |
errors.UnauthorizedResponse | 401 | application/json |
errors.PaymentRequiredResponse | 402 | application/json |
errors.NotFoundResponse | 404 | application/json |
errors.UnprocessableResponse | 422 | application/json |
errors.APIError | 4XX, 5XX | */* |
Create Customer
import { Apideck } from "@apideck/unify";
const apideck = new Apideck({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const result = await apideck.accounting.customers.create({
serviceId: "salesforce",
customer: {
displayId: "EMP00101",
displayName: "Windsurf Shop",
companyName: "SpaceX",
companyId: "12345",
title: "CEO",
firstName: "Elon",
middleName: "D.",
lastName: "Musk",
suffix: "Jr.",
individual: true,
project: false,
addresses: [
{
id: "123",
type: "primary",
string: "25 Spring Street, Blackburn, VIC 3130",
name: "HQ US",
line1: "Main street",
line2: "apt #",
line3: "Suite #",
line4: "delivery instructions",
streetNumber: "25",
city: "San Francisco",
state: "CA",
postalCode: "94104",
country: "US",
latitude: "40.759211",
longitude: "-73.984638",
county: "Santa Clara",
contactName: "Elon Musk",
salutation: "Mr",
phoneNumber: "111-111-1111",
fax: "122-111-1111",
email: "elon@musk.com",
website: "https://elonmusk.com",
notes: "Address notes or delivery instructions.",
rowVersion: "1-12345",
},
],
phoneNumbers: [
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
],
emails: [
{
id: "123",
email: "elon@musk.com",
type: "primary",
},
{
id: "123",
email: "elon@musk.com",
type: "primary",
},
],
websites: [
{
id: "12345",
url: "http://example.com",
type: "primary",
},
{
id: "12345",
url: "http://example.com",
type: "primary",
},
{
id: "12345",
url: "http://example.com",
type: "primary",
},
],
bankAccounts: [
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
],
notes: "Some notes about this customer",
taxRate: {
id: "123456",
rate: 10,
},
taxNumber: "US123945459",
currency: "USD",
account: {
id: "123456",
nominalCode: "N091",
code: "453",
},
parent: {
id: "12345",
name: "Windsurf Shop",
},
status: "active",
paymentMethod: "cash",
channel: "email",
rowVersion: "1-12345",
passThrough: [
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
],
},
});
// Handle the result
console.log(result);
}
run();
The standalone function version of this method:
import { ApideckCore } from "@apideck/unify/core.js";
import { accountingCustomersCreate } from "@apideck/unify/funcs/accountingCustomersCreate.js";
// Use `ApideckCore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const apideck = new ApideckCore({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const res = await accountingCustomersCreate(apideck, {
serviceId: "salesforce",
customer: {
displayId: "EMP00101",
displayName: "Windsurf Shop",
companyName: "SpaceX",
companyId: "12345",
title: "CEO",
firstName: "Elon",
middleName: "D.",
lastName: "Musk",
suffix: "Jr.",
individual: true,
project: false,
addresses: [
{
id: "123",
type: "primary",
string: "25 Spring Street, Blackburn, VIC 3130",
name: "HQ US",
line1: "Main street",
line2: "apt #",
line3: "Suite #",
line4: "delivery instructions",
streetNumber: "25",
city: "San Francisco",
state: "CA",
postalCode: "94104",
country: "US",
latitude: "40.759211",
longitude: "-73.984638",
county: "Santa Clara",
contactName: "Elon Musk",
salutation: "Mr",
phoneNumber: "111-111-1111",
fax: "122-111-1111",
email: "elon@musk.com",
website: "https://elonmusk.com",
notes: "Address notes or delivery instructions.",
rowVersion: "1-12345",
},
],
phoneNumbers: [
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
],
emails: [
{
id: "123",
email: "elon@musk.com",
type: "primary",
},
{
id: "123",
email: "elon@musk.com",
type: "primary",
},
],
websites: [
{
id: "12345",
url: "http://example.com",
type: "primary",
},
{
id: "12345",
url: "http://example.com",
type: "primary",
},
{
id: "12345",
url: "http://example.com",
type: "primary",
},
],
bankAccounts: [
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
],
notes: "Some notes about this customer",
taxRate: {
id: "123456",
rate: 10,
},
taxNumber: "US123945459",
currency: "USD",
account: {
id: "123456",
nominalCode: "N091",
code: "453",
},
parent: {
id: "12345",
name: "Windsurf Shop",
},
status: "active",
paymentMethod: "cash",
channel: "email",
rowVersion: "1-12345",
passThrough: [
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
],
},
});
if (!res.ok) {
throw res.error;
}
const { value: result } = res;
// Handle the result
console.log(result);
}
run();
Parameter | Type | Required | Description |
---|---|---|---|
request |
operations.AccountingCustomersAddRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body , are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Promise<operations.AccountingCustomersAddResponse>
Error Type | Status Code | Content Type |
---|---|---|
errors.BadRequestResponse | 400 | application/json |
errors.UnauthorizedResponse | 401 | application/json |
errors.PaymentRequiredResponse | 402 | application/json |
errors.NotFoundResponse | 404 | application/json |
errors.UnprocessableResponse | 422 | application/json |
errors.APIError | 4XX, 5XX | */* |
Get Customer
import { Apideck } from "@apideck/unify";
const apideck = new Apideck({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const result = await apideck.accounting.customers.get({
id: "<id>",
serviceId: "salesforce",
fields: "id,updated_at",
});
// Handle the result
console.log(result);
}
run();
The standalone function version of this method:
import { ApideckCore } from "@apideck/unify/core.js";
import { accountingCustomersGet } from "@apideck/unify/funcs/accountingCustomersGet.js";
// Use `ApideckCore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const apideck = new ApideckCore({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const res = await accountingCustomersGet(apideck, {
id: "<id>",
serviceId: "salesforce",
fields: "id,updated_at",
});
if (!res.ok) {
throw res.error;
}
const { value: result } = res;
// Handle the result
console.log(result);
}
run();
Parameter | Type | Required | Description |
---|---|---|---|
request |
operations.AccountingCustomersOneRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body , are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Promise<operations.AccountingCustomersOneResponse>
Error Type | Status Code | Content Type |
---|---|---|
errors.BadRequestResponse | 400 | application/json |
errors.UnauthorizedResponse | 401 | application/json |
errors.PaymentRequiredResponse | 402 | application/json |
errors.NotFoundResponse | 404 | application/json |
errors.UnprocessableResponse | 422 | application/json |
errors.APIError | 4XX, 5XX | */* |
Update Customer
import { Apideck } from "@apideck/unify";
const apideck = new Apideck({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const result = await apideck.accounting.customers.update({
id: "<id>",
serviceId: "salesforce",
customer: {
displayId: "EMP00101",
displayName: "Windsurf Shop",
companyName: "SpaceX",
companyId: "12345",
title: "CEO",
firstName: "Elon",
middleName: "D.",
lastName: "Musk",
suffix: "Jr.",
individual: true,
project: false,
addresses: [
{
id: "123",
type: "primary",
string: "25 Spring Street, Blackburn, VIC 3130",
name: "HQ US",
line1: "Main street",
line2: "apt #",
line3: "Suite #",
line4: "delivery instructions",
streetNumber: "25",
city: "San Francisco",
state: "CA",
postalCode: "94104",
country: "US",
latitude: "40.759211",
longitude: "-73.984638",
county: "Santa Clara",
contactName: "Elon Musk",
salutation: "Mr",
phoneNumber: "111-111-1111",
fax: "122-111-1111",
email: "elon@musk.com",
website: "https://elonmusk.com",
notes: "Address notes or delivery instructions.",
rowVersion: "1-12345",
},
],
phoneNumbers: [
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
],
emails: [
{
id: "123",
email: "elon@musk.com",
type: "primary",
},
],
websites: [
{
id: "12345",
url: "http://example.com",
type: "primary",
},
],
bankAccounts: [
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
],
notes: "Some notes about this customer",
taxRate: {
id: "123456",
rate: 10,
},
taxNumber: "US123945459",
currency: "USD",
account: {
id: "123456",
nominalCode: "N091",
code: "453",
},
parent: {
id: "12345",
name: "Windsurf Shop",
},
status: "active",
paymentMethod: "cash",
channel: "email",
rowVersion: "1-12345",
passThrough: [
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
],
},
});
// Handle the result
console.log(result);
}
run();
The standalone function version of this method:
import { ApideckCore } from "@apideck/unify/core.js";
import { accountingCustomersUpdate } from "@apideck/unify/funcs/accountingCustomersUpdate.js";
// Use `ApideckCore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const apideck = new ApideckCore({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const res = await accountingCustomersUpdate(apideck, {
id: "<id>",
serviceId: "salesforce",
customer: {
displayId: "EMP00101",
displayName: "Windsurf Shop",
companyName: "SpaceX",
companyId: "12345",
title: "CEO",
firstName: "Elon",
middleName: "D.",
lastName: "Musk",
suffix: "Jr.",
individual: true,
project: false,
addresses: [
{
id: "123",
type: "primary",
string: "25 Spring Street, Blackburn, VIC 3130",
name: "HQ US",
line1: "Main street",
line2: "apt #",
line3: "Suite #",
line4: "delivery instructions",
streetNumber: "25",
city: "San Francisco",
state: "CA",
postalCode: "94104",
country: "US",
latitude: "40.759211",
longitude: "-73.984638",
county: "Santa Clara",
contactName: "Elon Musk",
salutation: "Mr",
phoneNumber: "111-111-1111",
fax: "122-111-1111",
email: "elon@musk.com",
website: "https://elonmusk.com",
notes: "Address notes or delivery instructions.",
rowVersion: "1-12345",
},
],
phoneNumbers: [
{
id: "12345",
countryCode: "1",
areaCode: "323",
number: "111-111-1111",
extension: "105",
type: "primary",
},
],
emails: [
{
id: "123",
email: "elon@musk.com",
type: "primary",
},
],
websites: [
{
id: "12345",
url: "http://example.com",
type: "primary",
},
],
bankAccounts: [
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
{
bankName: "Monzo",
accountNumber: "123465",
accountName: "SPACEX LLC",
accountType: "credit_card",
iban: "CH2989144532982975332",
bic: "AUDSCHGGXXX",
routingNumber: "012345678",
bsbNumber: "062-001",
branchIdentifier: "001",
bankCode: "BNH",
currency: "USD",
},
],
notes: "Some notes about this customer",
taxRate: {
id: "123456",
rate: 10,
},
taxNumber: "US123945459",
currency: "USD",
account: {
id: "123456",
nominalCode: "N091",
code: "453",
},
parent: {
id: "12345",
name: "Windsurf Shop",
},
status: "active",
paymentMethod: "cash",
channel: "email",
rowVersion: "1-12345",
passThrough: [
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
{
serviceId: "<id>",
extendPaths: [
{
path: "$.nested.property",
value: {
"TaxClassificationRef": {
"value": "EUC-99990201-V1-00020000",
},
},
},
],
},
],
},
});
if (!res.ok) {
throw res.error;
}
const { value: result } = res;
// Handle the result
console.log(result);
}
run();
Parameter | Type | Required | Description |
---|---|---|---|
request |
operations.AccountingCustomersUpdateRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body , are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Promise<operations.AccountingCustomersUpdateResponse>
Error Type | Status Code | Content Type |
---|---|---|
errors.BadRequestResponse | 400 | application/json |
errors.UnauthorizedResponse | 401 | application/json |
errors.PaymentRequiredResponse | 402 | application/json |
errors.NotFoundResponse | 404 | application/json |
errors.UnprocessableResponse | 422 | application/json |
errors.APIError | 4XX, 5XX | */* |
Delete Customer
import { Apideck } from "@apideck/unify";
const apideck = new Apideck({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const result = await apideck.accounting.customers.delete({
id: "<id>",
serviceId: "salesforce",
});
// Handle the result
console.log(result);
}
run();
The standalone function version of this method:
import { ApideckCore } from "@apideck/unify/core.js";
import { accountingCustomersDelete } from "@apideck/unify/funcs/accountingCustomersDelete.js";
// Use `ApideckCore` for best tree-shaking performance.
// You can create one instance of it to use across an application.
const apideck = new ApideckCore({
apiKey: process.env["APIDECK_API_KEY"] ?? "",
consumerId: "test-consumer",
appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
});
async function run() {
const res = await accountingCustomersDelete(apideck, {
id: "<id>",
serviceId: "salesforce",
});
if (!res.ok) {
throw res.error;
}
const { value: result } = res;
// Handle the result
console.log(result);
}
run();
Parameter | Type | Required | Description |
---|---|---|---|
request |
operations.AccountingCustomersDeleteRequest | ✔️ | The request object to use for the request. |
options |
RequestOptions | ➖ | Used to set various options for making HTTP requests. |
options.fetchOptions |
RequestInit | ➖ | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All Request options, except method and body , are allowed. |
options.retries |
RetryConfig | ➖ | Enables retrying HTTP requests under certain failure conditions. |
Promise<operations.AccountingCustomersDeleteResponse>
Error Type | Status Code | Content Type |
---|---|---|
errors.BadRequestResponse | 400 | application/json |
errors.UnauthorizedResponse | 401 | application/json |
errors.PaymentRequiredResponse | 402 | application/json |
errors.NotFoundResponse | 404 | application/json |
errors.UnprocessableResponse | 422 | application/json |
errors.APIError | 4XX, 5XX | */* |