@surgeapi/node 0.25.3 → 0.25.5

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.
Files changed (119) hide show
  1. package/Client.d.ts +6 -0
  2. package/Client.js +20 -10
  3. package/README.md +3 -5
  4. package/api/index.d.ts +1 -1
  5. package/api/index.js +1 -1
  6. package/api/resources/accounts/client/Client.d.ts +57 -0
  7. package/api/resources/accounts/client/Client.js +167 -0
  8. package/api/resources/accounts/client/index.d.ts +1 -0
  9. package/api/resources/accounts/client/index.js +17 -0
  10. package/api/resources/accounts/client/requests/CreateAccountRequest.d.ts +16 -0
  11. package/api/resources/accounts/client/requests/CreateAccountRequest.js +5 -0
  12. package/api/resources/accounts/client/requests/UpdateAccountRequest.d.ts +16 -0
  13. package/api/resources/accounts/client/requests/UpdateAccountRequest.js +5 -0
  14. package/api/resources/accounts/client/requests/index.d.ts +2 -0
  15. package/api/resources/accounts/client/requests/index.js +2 -0
  16. package/api/resources/accounts/index.d.ts +1 -0
  17. package/api/resources/accounts/index.js +17 -0
  18. package/api/resources/blasts/client/Client.js +1 -1
  19. package/api/resources/contacts/client/Client.d.ts +2 -2
  20. package/api/resources/contacts/client/Client.js +7 -7
  21. package/api/resources/index.d.ts +5 -0
  22. package/api/resources/index.js +6 -1
  23. package/api/resources/messages/client/Client.d.ts +1 -3
  24. package/api/resources/messages/client/Client.js +2 -4
  25. package/api/resources/messages/client/requests/MessageRequest.d.ts +3 -3
  26. package/api/resources/phoneNumbers/client/Client.d.ts +44 -0
  27. package/api/resources/phoneNumbers/client/Client.js +117 -0
  28. package/api/resources/phoneNumbers/client/index.d.ts +1 -0
  29. package/api/resources/phoneNumbers/client/index.js +17 -0
  30. package/api/resources/phoneNumbers/client/requests/CreatePhoneNumberRequest.d.ts +17 -0
  31. package/api/resources/phoneNumbers/client/requests/CreatePhoneNumberRequest.js +5 -0
  32. package/api/resources/phoneNumbers/client/requests/index.d.ts +1 -0
  33. package/api/resources/phoneNumbers/client/requests/index.js +2 -0
  34. package/api/resources/phoneNumbers/index.d.ts +2 -0
  35. package/api/resources/phoneNumbers/index.js +18 -0
  36. package/api/resources/phoneNumbers/types/CreatePhoneNumberRequestType.d.ts +11 -0
  37. package/api/resources/phoneNumbers/types/CreatePhoneNumberRequestType.js +10 -0
  38. package/api/resources/phoneNumbers/types/index.d.ts +1 -0
  39. package/api/resources/phoneNumbers/types/index.js +17 -0
  40. package/api/resources/users/client/Client.d.ts +2 -2
  41. package/api/resources/users/client/Client.js +4 -4
  42. package/api/resources/verifications/client/Client.js +2 -2
  43. package/api/types/AccountResponse.d.ts +14 -0
  44. package/api/types/AccountResponse.js +5 -0
  45. package/api/types/Conversation.d.ts +1 -0
  46. package/api/types/ConversationPhoneNumber.d.ts +15 -0
  47. package/api/types/ConversationPhoneNumber.js +5 -0
  48. package/api/types/ConversationPhoneNumberType.d.ts +13 -0
  49. package/api/types/ConversationPhoneNumberType.js +12 -0
  50. package/api/types/MessageConversationContactParams.d.ts +0 -2
  51. package/api/types/MessageConversationParams.d.ts +3 -3
  52. package/api/types/PhoneNumber.d.ts +15 -0
  53. package/api/types/PhoneNumber.js +5 -0
  54. package/api/types/PhoneNumberType.d.ts +11 -0
  55. package/api/types/PhoneNumberType.js +10 -0
  56. package/api/types/index.d.ts +5 -0
  57. package/api/types/index.js +5 -0
  58. package/dist/Client.d.ts +6 -0
  59. package/dist/Client.js +20 -10
  60. package/dist/api/index.d.ts +1 -1
  61. package/dist/api/index.js +1 -1
  62. package/dist/api/resources/accounts/client/Client.d.ts +57 -0
  63. package/dist/api/resources/accounts/client/Client.js +167 -0
  64. package/dist/api/resources/accounts/client/index.d.ts +1 -0
  65. package/dist/api/resources/accounts/client/index.js +17 -0
  66. package/dist/api/resources/accounts/client/requests/CreateAccountRequest.d.ts +16 -0
  67. package/dist/api/resources/accounts/client/requests/CreateAccountRequest.js +5 -0
  68. package/dist/api/resources/accounts/client/requests/UpdateAccountRequest.d.ts +16 -0
  69. package/dist/api/resources/accounts/client/requests/UpdateAccountRequest.js +5 -0
  70. package/dist/api/resources/accounts/client/requests/index.d.ts +2 -0
  71. package/dist/api/resources/accounts/client/requests/index.js +2 -0
  72. package/dist/api/resources/accounts/index.d.ts +1 -0
  73. package/dist/api/resources/accounts/index.js +17 -0
  74. package/dist/api/resources/blasts/client/Client.js +1 -1
  75. package/dist/api/resources/contacts/client/Client.d.ts +2 -2
  76. package/dist/api/resources/contacts/client/Client.js +7 -7
  77. package/dist/api/resources/index.d.ts +5 -0
  78. package/dist/api/resources/index.js +6 -1
  79. package/dist/api/resources/messages/client/Client.d.ts +1 -3
  80. package/dist/api/resources/messages/client/Client.js +2 -4
  81. package/dist/api/resources/messages/client/requests/MessageRequest.d.ts +3 -3
  82. package/dist/api/resources/phoneNumbers/client/Client.d.ts +44 -0
  83. package/dist/api/resources/phoneNumbers/client/Client.js +117 -0
  84. package/dist/api/resources/phoneNumbers/client/index.d.ts +1 -0
  85. package/dist/api/resources/phoneNumbers/client/index.js +17 -0
  86. package/dist/api/resources/phoneNumbers/client/requests/CreatePhoneNumberRequest.d.ts +17 -0
  87. package/dist/api/resources/phoneNumbers/client/requests/CreatePhoneNumberRequest.js +5 -0
  88. package/dist/api/resources/phoneNumbers/client/requests/index.d.ts +1 -0
  89. package/dist/api/resources/phoneNumbers/client/requests/index.js +2 -0
  90. package/dist/api/resources/phoneNumbers/index.d.ts +2 -0
  91. package/dist/api/resources/phoneNumbers/index.js +18 -0
  92. package/dist/api/resources/phoneNumbers/types/CreatePhoneNumberRequestType.d.ts +11 -0
  93. package/dist/api/resources/phoneNumbers/types/CreatePhoneNumberRequestType.js +10 -0
  94. package/dist/api/resources/phoneNumbers/types/index.d.ts +1 -0
  95. package/dist/api/resources/phoneNumbers/types/index.js +17 -0
  96. package/dist/api/resources/users/client/Client.d.ts +2 -2
  97. package/dist/api/resources/users/client/Client.js +4 -4
  98. package/dist/api/resources/verifications/client/Client.js +2 -2
  99. package/dist/api/types/AccountResponse.d.ts +14 -0
  100. package/dist/api/types/AccountResponse.js +5 -0
  101. package/dist/api/types/Conversation.d.ts +1 -0
  102. package/dist/api/types/ConversationPhoneNumber.d.ts +15 -0
  103. package/dist/api/types/ConversationPhoneNumber.js +5 -0
  104. package/dist/api/types/ConversationPhoneNumberType.d.ts +13 -0
  105. package/dist/api/types/ConversationPhoneNumberType.js +12 -0
  106. package/dist/api/types/MessageConversationContactParams.d.ts +0 -2
  107. package/dist/api/types/MessageConversationParams.d.ts +3 -3
  108. package/dist/api/types/PhoneNumber.d.ts +15 -0
  109. package/dist/api/types/PhoneNumber.js +5 -0
  110. package/dist/api/types/PhoneNumberType.d.ts +11 -0
  111. package/dist/api/types/PhoneNumberType.js +10 -0
  112. package/dist/api/types/index.d.ts +5 -0
  113. package/dist/api/types/index.js +5 -0
  114. package/dist/version.d.ts +1 -1
  115. package/dist/version.js +1 -1
  116. package/package.json +2 -2
  117. package/reference.md +222 -6
  118. package/version.d.ts +1 -1
  119. package/version.js +1 -1
package/Client.d.ts CHANGED
@@ -3,9 +3,11 @@
3
3
  */
4
4
  import * as environments from "./environments";
5
5
  import * as core from "./core";
6
+ import { Accounts } from "./api/resources/accounts/client/Client";
6
7
  import { Blasts } from "./api/resources/blasts/client/Client";
7
8
  import { Contacts } from "./api/resources/contacts/client/Client";
8
9
  import { Messages } from "./api/resources/messages/client/Client";
10
+ import { PhoneNumbers } from "./api/resources/phoneNumbers/client/Client";
9
11
  import { Users } from "./api/resources/users/client/Client";
10
12
  import { Verifications } from "./api/resources/verifications/client/Client";
11
13
  export declare namespace SurgeClient {
@@ -29,15 +31,19 @@ export declare namespace SurgeClient {
29
31
  }
30
32
  export declare class SurgeClient {
31
33
  protected readonly _options: SurgeClient.Options;
34
+ protected _accounts: Accounts | undefined;
32
35
  protected _blasts: Blasts | undefined;
33
36
  protected _contacts: Contacts | undefined;
34
37
  protected _messages: Messages | undefined;
38
+ protected _phoneNumbers: PhoneNumbers | undefined;
35
39
  protected _users: Users | undefined;
36
40
  protected _verifications: Verifications | undefined;
37
41
  constructor(_options: SurgeClient.Options);
42
+ get accounts(): Accounts;
38
43
  get blasts(): Blasts;
39
44
  get contacts(): Contacts;
40
45
  get messages(): Messages;
46
+ get phoneNumbers(): PhoneNumbers;
41
47
  get users(): Users;
42
48
  get verifications(): Verifications;
43
49
  }
package/Client.js CHANGED
@@ -4,34 +4,44 @@
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SurgeClient = void 0;
7
- const Client_1 = require("./api/resources/blasts/client/Client");
8
- const Client_2 = require("./api/resources/contacts/client/Client");
9
- const Client_3 = require("./api/resources/messages/client/Client");
10
- const Client_4 = require("./api/resources/users/client/Client");
11
- const Client_5 = require("./api/resources/verifications/client/Client");
7
+ const Client_1 = require("./api/resources/accounts/client/Client");
8
+ const Client_2 = require("./api/resources/blasts/client/Client");
9
+ const Client_3 = require("./api/resources/contacts/client/Client");
10
+ const Client_4 = require("./api/resources/messages/client/Client");
11
+ const Client_5 = require("./api/resources/phoneNumbers/client/Client");
12
+ const Client_6 = require("./api/resources/users/client/Client");
13
+ const Client_7 = require("./api/resources/verifications/client/Client");
12
14
  class SurgeClient {
13
15
  constructor(_options) {
14
16
  this._options = _options;
15
17
  }
18
+ get accounts() {
19
+ var _a;
20
+ return ((_a = this._accounts) !== null && _a !== void 0 ? _a : (this._accounts = new Client_1.Accounts(this._options)));
21
+ }
16
22
  get blasts() {
17
23
  var _a;
18
- return ((_a = this._blasts) !== null && _a !== void 0 ? _a : (this._blasts = new Client_1.Blasts(this._options)));
24
+ return ((_a = this._blasts) !== null && _a !== void 0 ? _a : (this._blasts = new Client_2.Blasts(this._options)));
19
25
  }
20
26
  get contacts() {
21
27
  var _a;
22
- return ((_a = this._contacts) !== null && _a !== void 0 ? _a : (this._contacts = new Client_2.Contacts(this._options)));
28
+ return ((_a = this._contacts) !== null && _a !== void 0 ? _a : (this._contacts = new Client_3.Contacts(this._options)));
23
29
  }
24
30
  get messages() {
25
31
  var _a;
26
- return ((_a = this._messages) !== null && _a !== void 0 ? _a : (this._messages = new Client_3.Messages(this._options)));
32
+ return ((_a = this._messages) !== null && _a !== void 0 ? _a : (this._messages = new Client_4.Messages(this._options)));
33
+ }
34
+ get phoneNumbers() {
35
+ var _a;
36
+ return ((_a = this._phoneNumbers) !== null && _a !== void 0 ? _a : (this._phoneNumbers = new Client_5.PhoneNumbers(this._options)));
27
37
  }
28
38
  get users() {
29
39
  var _a;
30
- return ((_a = this._users) !== null && _a !== void 0 ? _a : (this._users = new Client_4.Users(this._options)));
40
+ return ((_a = this._users) !== null && _a !== void 0 ? _a : (this._users = new Client_6.Users(this._options)));
31
41
  }
32
42
  get verifications() {
33
43
  var _a;
34
- return ((_a = this._verifications) !== null && _a !== void 0 ? _a : (this._verifications = new Client_5.Verifications(this._options)));
44
+ return ((_a = this._verifications) !== null && _a !== void 0 ? _a : (this._verifications = new Client_7.Verifications(this._options)));
35
45
  }
36
46
  }
37
47
  exports.SurgeClient = SurgeClient;
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Surge TypeScript Library
2
2
 
3
- [![fern shield](https://img.shields.io/badge/%F0%9F%8C%BF-Built%20with%20Fern-brightgreen)](https://buildwithfern.com?utm_source=github&utm_medium=github&utm_campaign=readme&utm_source=https%3A%2F%2Fgithub.com%2Fsurgemsg%2Ftypescript-sdk)
3
+ [![fern shield](https://img.shields.io/badge/%F0%9F%8C%BF-Built%20with%20Fern-brightgreen)](https://buildwithfern.com?utm_source=github&utm_medium=github&utm_campaign=readme&utm_source=https%3A%2F%2Fgithub.com%2Fsurgeapi%2Ftypescript-sdk)
4
4
  [![npm shield](https://img.shields.io/npm/v/@surgeapi/node)](https://www.npmjs.com/package/@surgeapi/node)
5
5
 
6
6
  The Surge TypeScript library provides convenient access to the Surge API from TypeScript.
@@ -17,7 +17,7 @@ npm i -s @surgeapi/node
17
17
 
18
18
  ## Reference
19
19
 
20
- A full reference for this library is available [here](./reference.md).
20
+ A full reference for this library is available [here](https://github.com/surgeapi/typescript-sdk/blob/HEAD/./reference.md).
21
21
 
22
22
  ## Usage
23
23
 
@@ -37,11 +37,9 @@ await client.messages.send("acct_01j9a43avnfqzbjfch6pygv1td", {
37
37
  conversation: {
38
38
  contact: {
39
39
  first_name: "Dominic",
40
- id: "ctc_01j9dy8mdzfn3r0e8x1tbdrdrf",
41
40
  last_name: "Toretto",
42
41
  phone_number: "+18015551234",
43
42
  },
44
- id: "cnv_01j9e0dgmdfkj86c877ws0znae",
45
43
  },
46
44
  });
47
45
  ```
@@ -54,7 +52,7 @@ following namespace:
54
52
  ```typescript
55
53
  import { Surge } from "@surgeapi/node";
56
54
 
57
- const request: Surge.BlastRequest = {
55
+ const request: Surge.CreateAccountRequest = {
58
56
  ...
59
57
  };
60
58
  ```
package/api/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
+ export * from "./resources";
1
2
  export * from "./types";
2
3
  export * from "./errors";
3
- export * from "./resources";
package/api/index.js CHANGED
@@ -14,6 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./resources"), exports);
17
18
  __exportStar(require("./types"), exports);
18
19
  __exportStar(require("./errors"), exports);
19
- __exportStar(require("./resources"), exports);
@@ -0,0 +1,57 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ import * as environments from "../../../../environments";
5
+ import * as core from "../../../../core";
6
+ import * as Surge from "../../../index";
7
+ export declare namespace Accounts {
8
+ interface Options {
9
+ environment?: core.Supplier<environments.SurgeEnvironment | string>;
10
+ /** Specify a custom URL to connect the client to. */
11
+ baseUrl?: core.Supplier<string>;
12
+ token: core.Supplier<core.BearerToken>;
13
+ fetcher?: core.FetchFunction;
14
+ }
15
+ interface RequestOptions {
16
+ /** The maximum time to wait for a response in seconds. */
17
+ timeoutInSeconds?: number;
18
+ /** The number of times to retry the request. Defaults to 2. */
19
+ maxRetries?: number;
20
+ /** A hook to abort the request. */
21
+ abortSignal?: AbortSignal;
22
+ /** Additional headers to include in the request. */
23
+ headers?: Record<string, string>;
24
+ }
25
+ }
26
+ export declare class Accounts {
27
+ protected readonly _options: Accounts.Options;
28
+ constructor(_options: Accounts.Options);
29
+ /**
30
+ * Creates a new Account within the calling Platform.
31
+ *
32
+ * @param {Surge.CreateAccountRequest} request
33
+ * @param {Accounts.RequestOptions} requestOptions - Request-specific configuration.
34
+ *
35
+ * @example
36
+ * await client.accounts.create({
37
+ * name: "D\u00B7T Precision Auto Shop",
38
+ * time_zone: "America/Los_Angeles"
39
+ * })
40
+ */
41
+ create(request: Surge.CreateAccountRequest, requestOptions?: Accounts.RequestOptions): Promise<Surge.AccountResponse>;
42
+ /**
43
+ * Updates an Account
44
+ *
45
+ * @param {string} id -
46
+ * @param {Surge.UpdateAccountRequest} request
47
+ * @param {Accounts.RequestOptions} requestOptions - Request-specific configuration.
48
+ *
49
+ * @example
50
+ * await client.accounts.update("acct_01jpqjvfg9enpt7pyxd60pcmxj", {
51
+ * name: "D\u00B7T Precision Auto Shop",
52
+ * time_zone: "America/Los_Angeles"
53
+ * })
54
+ */
55
+ update(id: string, request?: Surge.UpdateAccountRequest, requestOptions?: Accounts.RequestOptions): Promise<Surge.AccountResponse>;
56
+ protected _getAuthorizationHeader(): Promise<string>;
57
+ }
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+ /**
3
+ * This file was auto-generated by Fern from our API Definition.
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
39
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
40
+ return new (P || (P = Promise))(function (resolve, reject) {
41
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
42
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
43
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
44
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
45
+ });
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ exports.Accounts = void 0;
52
+ const environments = __importStar(require("../../../../environments"));
53
+ const core = __importStar(require("../../../../core"));
54
+ const url_join_1 = __importDefault(require("url-join"));
55
+ const errors = __importStar(require("../../../../errors/index"));
56
+ class Accounts {
57
+ constructor(_options) {
58
+ this._options = _options;
59
+ }
60
+ /**
61
+ * Creates a new Account within the calling Platform.
62
+ *
63
+ * @param {Surge.CreateAccountRequest} request
64
+ * @param {Accounts.RequestOptions} requestOptions - Request-specific configuration.
65
+ *
66
+ * @example
67
+ * await client.accounts.create({
68
+ * name: "D\u00B7T Precision Auto Shop",
69
+ * time_zone: "America/Los_Angeles"
70
+ * })
71
+ */
72
+ create(request, requestOptions) {
73
+ return __awaiter(this, void 0, void 0, function* () {
74
+ var _a, _b, _c;
75
+ const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
76
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.SurgeEnvironment.Default, "accounts"),
77
+ method: "POST",
78
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.5", "User-Agent": "@surgeapi/node/0.25.5", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
79
+ contentType: "application/json",
80
+ requestType: "json",
81
+ body: request,
82
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
83
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
84
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
85
+ });
86
+ if (_response.ok) {
87
+ return _response.body;
88
+ }
89
+ if (_response.error.reason === "status-code") {
90
+ throw new errors.SurgeError({
91
+ statusCode: _response.error.statusCode,
92
+ body: _response.error.body,
93
+ });
94
+ }
95
+ switch (_response.error.reason) {
96
+ case "non-json":
97
+ throw new errors.SurgeError({
98
+ statusCode: _response.error.statusCode,
99
+ body: _response.error.rawBody,
100
+ });
101
+ case "timeout":
102
+ throw new errors.SurgeTimeoutError("Timeout exceeded when calling POST /accounts.");
103
+ case "unknown":
104
+ throw new errors.SurgeError({
105
+ message: _response.error.errorMessage,
106
+ });
107
+ }
108
+ });
109
+ }
110
+ /**
111
+ * Updates an Account
112
+ *
113
+ * @param {string} id -
114
+ * @param {Surge.UpdateAccountRequest} request
115
+ * @param {Accounts.RequestOptions} requestOptions - Request-specific configuration.
116
+ *
117
+ * @example
118
+ * await client.accounts.update("acct_01jpqjvfg9enpt7pyxd60pcmxj", {
119
+ * name: "D\u00B7T Precision Auto Shop",
120
+ * time_zone: "America/Los_Angeles"
121
+ * })
122
+ */
123
+ update(id_1) {
124
+ return __awaiter(this, arguments, void 0, function* (id, request = {}, requestOptions) {
125
+ var _a, _b, _c;
126
+ const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
127
+ url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.SurgeEnvironment.Default, `accounts/${encodeURIComponent(id)}`),
128
+ method: "PATCH",
129
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.5", "User-Agent": "@surgeapi/node/0.25.5", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
130
+ contentType: "application/json",
131
+ requestType: "json",
132
+ body: request,
133
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
134
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
135
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
136
+ });
137
+ if (_response.ok) {
138
+ return _response.body;
139
+ }
140
+ if (_response.error.reason === "status-code") {
141
+ throw new errors.SurgeError({
142
+ statusCode: _response.error.statusCode,
143
+ body: _response.error.body,
144
+ });
145
+ }
146
+ switch (_response.error.reason) {
147
+ case "non-json":
148
+ throw new errors.SurgeError({
149
+ statusCode: _response.error.statusCode,
150
+ body: _response.error.rawBody,
151
+ });
152
+ case "timeout":
153
+ throw new errors.SurgeTimeoutError("Timeout exceeded when calling PATCH /accounts/{id}.");
154
+ case "unknown":
155
+ throw new errors.SurgeError({
156
+ message: _response.error.errorMessage,
157
+ });
158
+ }
159
+ });
160
+ }
161
+ _getAuthorizationHeader() {
162
+ return __awaiter(this, void 0, void 0, function* () {
163
+ return `Bearer ${yield core.Supplier.get(this._options.token)}`;
164
+ });
165
+ }
166
+ }
167
+ exports.Accounts = Accounts;
@@ -0,0 +1 @@
1
+ export * from "./requests";
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./requests"), exports);
@@ -0,0 +1,16 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ /**
5
+ * @example
6
+ * {
7
+ * name: "D\u00B7T Precision Auto Shop",
8
+ * time_zone: "America/Los_Angeles"
9
+ * }
10
+ */
11
+ export interface CreateAccountRequest {
12
+ /** The name of the account */
13
+ name: string;
14
+ /** The time zone for the account */
15
+ time_zone?: string;
16
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ /**
3
+ * This file was auto-generated by Fern from our API Definition.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,16 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ /**
5
+ * @example
6
+ * {
7
+ * name: "D\u00B7T Precision Auto Shop",
8
+ * time_zone: "America/Los_Angeles"
9
+ * }
10
+ */
11
+ export interface UpdateAccountRequest {
12
+ /** The name of the account */
13
+ name?: string;
14
+ /** The time zone for the account */
15
+ time_zone?: string;
16
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ /**
3
+ * This file was auto-generated by Fern from our API Definition.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ export { type CreateAccountRequest } from "./CreateAccountRequest";
2
+ export { type UpdateAccountRequest } from "./UpdateAccountRequest";
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export * from "./client";
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./client"), exports);
@@ -82,7 +82,7 @@ class Blasts {
82
82
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
83
83
  url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.SurgeEnvironment.Default, `accounts/${encodeURIComponent(accountId)}/blasts`),
84
84
  method: "POST",
85
- headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.3", "User-Agent": "@surgeapi/node/0.25.3", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
85
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.5", "User-Agent": "@surgeapi/node/0.25.5", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
86
86
  contentType: "application/json",
87
87
  requestType: "json",
88
88
  body: request,
@@ -52,9 +52,9 @@ export declare class Contacts {
52
52
  * @param {Contacts.RequestOptions} requestOptions - Request-specific configuration.
53
53
  *
54
54
  * @example
55
- * await client.contacts.surgeWebContactControllerShow("ctc_01j9dy8mdzfn3r0e8x1tbdrdrf")
55
+ * await client.contacts.getContact("ctc_01j9dy8mdzfn3r0e8x1tbdrdrf")
56
56
  */
57
- surgeWebContactControllerShow(id: string, requestOptions?: Contacts.RequestOptions): Promise<Surge.ContactResponse>;
57
+ getContact(id: string, requestOptions?: Contacts.RequestOptions): Promise<Surge.ContactResponse>;
58
58
  /**
59
59
  * Updates the specified contact by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
60
60
  *
@@ -81,7 +81,7 @@ class Contacts {
81
81
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
82
82
  url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.SurgeEnvironment.Default, `accounts/${encodeURIComponent(accountId)}/contacts`),
83
83
  method: "POST",
84
- headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.3", "User-Agent": "@surgeapi/node/0.25.3", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
84
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.5", "User-Agent": "@surgeapi/node/0.25.5", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
85
85
  contentType: "application/json",
86
86
  requestType: "json",
87
87
  body: request,
@@ -120,15 +120,15 @@ class Contacts {
120
120
  * @param {Contacts.RequestOptions} requestOptions - Request-specific configuration.
121
121
  *
122
122
  * @example
123
- * await client.contacts.surgeWebContactControllerShow("ctc_01j9dy8mdzfn3r0e8x1tbdrdrf")
123
+ * await client.contacts.getContact("ctc_01j9dy8mdzfn3r0e8x1tbdrdrf")
124
124
  */
125
- surgeWebContactControllerShow(id, requestOptions) {
125
+ getContact(id, requestOptions) {
126
126
  return __awaiter(this, void 0, void 0, function* () {
127
127
  var _a, _b, _c;
128
128
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
129
129
  url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.SurgeEnvironment.Default, `contacts/${encodeURIComponent(id)}`),
130
130
  method: "GET",
131
- headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.3", "User-Agent": "@surgeapi/node/0.25.3", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
131
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.5", "User-Agent": "@surgeapi/node/0.25.5", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
132
132
  contentType: "application/json",
133
133
  requestType: "json",
134
134
  timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
@@ -182,8 +182,8 @@ class Contacts {
182
182
  var _a, _b, _c;
183
183
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
184
184
  url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.SurgeEnvironment.Default, `contacts/${encodeURIComponent(id)}`),
185
- method: "PUT",
186
- headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.3", "User-Agent": "@surgeapi/node/0.25.3", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
185
+ method: "PATCH",
186
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.5", "User-Agent": "@surgeapi/node/0.25.5", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
187
187
  contentType: "application/json",
188
188
  requestType: "json",
189
189
  body: request,
@@ -207,7 +207,7 @@ class Contacts {
207
207
  body: _response.error.rawBody,
208
208
  });
209
209
  case "timeout":
210
- throw new errors.SurgeTimeoutError("Timeout exceeded when calling PUT /contacts/{id}.");
210
+ throw new errors.SurgeTimeoutError("Timeout exceeded when calling PATCH /contacts/{id}.");
211
211
  case "unknown":
212
212
  throw new errors.SurgeError({
213
213
  message: _response.error.errorMessage,
@@ -1,9 +1,14 @@
1
+ export * as phoneNumbers from "./phoneNumbers";
2
+ export * from "./phoneNumbers/types";
3
+ export * as accounts from "./accounts";
1
4
  export * as blasts from "./blasts";
2
5
  export * as contacts from "./contacts";
3
6
  export * as messages from "./messages";
4
7
  export * as users from "./users";
5
8
  export * as verifications from "./verifications";
9
+ export * from "./accounts/client/requests";
6
10
  export * from "./blasts/client/requests";
7
11
  export * from "./messages/client/requests";
12
+ export * from "./phoneNumbers/client/requests";
8
13
  export * from "./users/client/requests";
9
14
  export * from "./verifications/client/requests";
@@ -36,13 +36,18 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.verifications = exports.users = exports.messages = exports.contacts = exports.blasts = void 0;
39
+ exports.verifications = exports.users = exports.messages = exports.contacts = exports.blasts = exports.accounts = exports.phoneNumbers = void 0;
40
+ exports.phoneNumbers = __importStar(require("./phoneNumbers"));
41
+ __exportStar(require("./phoneNumbers/types"), exports);
42
+ exports.accounts = __importStar(require("./accounts"));
40
43
  exports.blasts = __importStar(require("./blasts"));
41
44
  exports.contacts = __importStar(require("./contacts"));
42
45
  exports.messages = __importStar(require("./messages"));
43
46
  exports.users = __importStar(require("./users"));
44
47
  exports.verifications = __importStar(require("./verifications"));
48
+ __exportStar(require("./accounts/client/requests"), exports);
45
49
  __exportStar(require("./blasts/client/requests"), exports);
46
50
  __exportStar(require("./messages/client/requests"), exports);
51
+ __exportStar(require("./phoneNumbers/client/requests"), exports);
47
52
  __exportStar(require("./users/client/requests"), exports);
48
53
  __exportStar(require("./verifications/client/requests"), exports);
@@ -42,11 +42,9 @@ export declare class Messages {
42
42
  * conversation: {
43
43
  * contact: {
44
44
  * first_name: "Dominic",
45
- * id: "ctc_01j9dy8mdzfn3r0e8x1tbdrdrf",
46
45
  * last_name: "Toretto",
47
46
  * phone_number: "+18015551234"
48
- * },
49
- * id: "cnv_01j9e0dgmdfkj86c877ws0znae"
47
+ * }
50
48
  * }
51
49
  * })
52
50
  */
@@ -73,11 +73,9 @@ class Messages {
73
73
  * conversation: {
74
74
  * contact: {
75
75
  * first_name: "Dominic",
76
- * id: "ctc_01j9dy8mdzfn3r0e8x1tbdrdrf",
77
76
  * last_name: "Toretto",
78
77
  * phone_number: "+18015551234"
79
- * },
80
- * id: "cnv_01j9e0dgmdfkj86c877ws0znae"
78
+ * }
81
79
  * }
82
80
  * })
83
81
  */
@@ -87,7 +85,7 @@ class Messages {
87
85
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
88
86
  url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.SurgeEnvironment.Default, `accounts/${encodeURIComponent(accountId)}/messages`),
89
87
  method: "POST",
90
- headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.3", "User-Agent": "@surgeapi/node/0.25.3", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
88
+ headers: Object.assign({ Authorization: yield this._getAuthorizationHeader(), "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@surgeapi/node", "X-Fern-SDK-Version": "0.25.5", "User-Agent": "@surgeapi/node/0.25.5", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
91
89
  contentType: "application/json",
92
90
  requestType: "json",
93
91
  body: request,
@@ -12,11 +12,9 @@ import * as Surge from "../../../../index";
12
12
  * conversation: {
13
13
  * contact: {
14
14
  * first_name: "Dominic",
15
- * id: "ctc_01j9dy8mdzfn3r0e8x1tbdrdrf",
16
15
  * last_name: "Toretto",
17
16
  * phone_number: "+18015551234"
18
- * },
19
- * id: "cnv_01j9e0dgmdfkj86c877ws0znae"
17
+ * }
20
18
  * }
21
19
  * }
22
20
  */
@@ -25,4 +23,6 @@ export interface MessageRequest {
25
23
  /** The message body. */
26
24
  body?: string;
27
25
  conversation: Surge.MessageConversationParams;
26
+ /** An optional datetime for scheduling message up to a couple of months in the future. */
27
+ send_at?: string;
28
28
  }