diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock
new file mode 100644
index 000000000..0e5fbbd58
--- /dev/null
+++ b/.speakeasy/workflow.lock
@@ -0,0 +1,135 @@
+speakeasyVersion: 1.330.0
+sources:
+ platform-source:
+ sourceNamespace: platform-source
+ sourceRevisionDigest: sha256:21c7d92d97f2e2590415892e0149f4f7072060fdadd7cc544b70e6408411d517
+ sourceBlobDigest: sha256:fe9f98f1d772444335621febe2e373cdfc4b32d31e7206a224ea01c238a44a05
+ tags:
+ - latest
+ - main
+targets:
+ platform-library:
+ source: platform-source
+ sourceNamespace: platform-source
+ sourceRevisionDigest: sha256:21c7d92d97f2e2590415892e0149f4f7072060fdadd7cc544b70e6408411d517
+ sourceBlobDigest: sha256:fe9f98f1d772444335621febe2e373cdfc4b32d31e7206a224ea01c238a44a05
+ outLocation: ./platform
+workflow:
+ workflowVersion: 1.0.0
+ speakeasyVersion: latest
+ sources:
+ accounting-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Accounting.yaml
+ assess-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Assess.yaml
+ bank-feeds-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Bank-Feeds.yaml
+ banking-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Banking.yaml
+ commerce-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Commerce.yaml
+ common-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Platform.yaml
+ files-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Files.yaml
+ lending-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Lending.yaml
+ platform-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Platform.yaml
+ registry:
+ location: registry.speakeasyapi.dev/codat/codat/platform-source
+ sync-for-commerce-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Commerce.yaml
+ sync-for-commerce-version-1-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Commerce-v1.yaml
+ sync-for-expenses-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Expenses.yaml
+ sync-for-expenses-version-1-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Expenses-v1.yaml
+ sync-for-payables-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payables.yaml
+ sync-for-payables-version-1-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payables-v1.yaml
+ sync-for-payroll-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payroll.yaml
+ targets:
+ accounting-library:
+ target: typescript
+ source: accounting-source
+ output: ./previous-versions/accounting
+ assess-library:
+ target: typescript
+ source: assess-source
+ output: ./previous-versions/assess
+ bank-feeds-library:
+ target: typescript
+ source: bank-feeds-source
+ output: ./bank-feeds
+ banking-library:
+ target: typescript
+ source: banking-source
+ output: ./previous-versions/banking
+ commerce-library:
+ target: typescript
+ source: commerce-source
+ output: ./previous-versions/commerce
+ common-library:
+ target: typescript
+ source: common-source
+ output: ./previous-versions/common
+ files-library:
+ target: typescript
+ source: files-source
+ output: ./previous-versions/files
+ lending-library:
+ target: typescript
+ source: lending-source
+ output: ./lending
+ platform-library:
+ target: typescript
+ source: platform-source
+ output: ./platform
+ sync-for-commerce-library:
+ target: typescript
+ source: sync-for-commerce-source
+ output: ./sync-for-commerce
+ sync-for-commerce-version-1-library:
+ target: typescript
+ source: sync-for-commerce-version-1-source
+ output: ./previous-versions/sync-for-commerce-version-1
+ sync-for-expenses-library:
+ target: typescript
+ source: sync-for-expenses-source
+ output: ./sync-for-expenses
+ sync-for-expenses-version-1-library:
+ target: typescript
+ source: sync-for-expenses-version-1-source
+ output: ./previous-versions/sync-for-expenses-version-1
+ sync-for-payables-library:
+ target: typescript
+ source: sync-for-payables-source
+ output: ./sync-for-payables
+ sync-for-payables-version-1-library:
+ target: typescript
+ source: sync-for-payables-version-1-source
+ output: ./previous-versions/sync-for-payables-version-1
+ sync-for-payroll-library:
+ target: typescript
+ source: sync-for-payroll-source
+ output: ./sync-for-payroll
diff --git a/.speakeasy/workflow.yaml b/.speakeasy/workflow.yaml
index 809d80d6f..7d0b571c0 100644
--- a/.speakeasy/workflow.yaml
+++ b/.speakeasy/workflow.yaml
@@ -1,115 +1,118 @@
workflowVersion: 1.0.0
+speakeasyVersion: latest
sources:
- common-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Platform.yaml
- platform-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Platform.yaml
- bank-feeds-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Bank-Feeds.yaml
- sync-for-commerce-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Commerce.yaml
- sync-for-expenses-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Expenses.yaml
- lending-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Lending.yaml
- sync-for-payroll-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payroll.yaml
- sync-for-payables-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payables.yaml
- accounting-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Accounting.yaml
- banking-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Banking.yaml
- commerce-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Commerce.yaml
- assess-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Assess.yaml
- sync-for-commerce-version-1-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Commerce-v1.yaml
- sync-for-expenses-version-1-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Expenses-v1.yaml
- sync-for-payables-version-1-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payables-v1.yaml
- files-source:
- inputs:
- - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Files.yaml
+ accounting-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Accounting.yaml
+ assess-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Assess.yaml
+ bank-feeds-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Bank-Feeds.yaml
+ banking-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Banking.yaml
+ commerce-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Commerce.yaml
+ common-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Platform.yaml
+ files-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Files.yaml
+ lending-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Lending.yaml
+ platform-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Platform.yaml
+ registry:
+ location: registry.speakeasyapi.dev/codat/codat/platform-source
+ sync-for-commerce-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Commerce.yaml
+ sync-for-commerce-version-1-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Commerce-v1.yaml
+ sync-for-expenses-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Expenses.yaml
+ sync-for-expenses-version-1-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Expenses-v1.yaml
+ sync-for-payables-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payables.yaml
+ sync-for-payables-version-1-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payables-v1.yaml
+ sync-for-payroll-source:
+ inputs:
+ - location: https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Sync-Payroll.yaml
targets:
- common-library:
- target: typescript
- source: common-source
- output: ./previous-versions/common
- platform-library:
- target: typescript
- source: platform-source
- output: ./platform
- bank-feeds-library:
- target: typescript
- source: bank-feeds-source
- output: ./bank-feeds
- sync-for-commerce-library:
- target: typescript
- source: sync-for-commerce-source
- output: ./sync-for-commerce
- sync-for-expenses-library:
- target: typescript
- source: sync-for-expenses-source
- output: ./sync-for-expenses
- lending-library:
- target: typescript
- source: lending-source
- output: ./lending
- sync-for-payroll-library:
- target: typescript
- source: sync-for-payroll-source
- output: ./sync-for-payroll
- sync-for-payables-library:
- target: typescript
- source: sync-for-payables-source
- output: ./sync-for-payables
- accounting-library:
- target: typescript
- source: accounting-source
- output: ./previous-versions/accounting
- banking-library:
- target: typescript
- source: banking-source
- output: ./previous-versions/banking
- commerce-library:
- target: typescript
- source: commerce-source
- output: ./previous-versions/commerce
- assess-library:
- target: typescript
- source: assess-source
- output: ./previous-versions/assess
- sync-for-commerce-version-1-library:
- target: typescript
- source: sync-for-commerce-version-1-source
- output: ./previous-versions/sync-for-commerce-version-1
- sync-for-expenses-version-1-library:
- target: typescript
- source: sync-for-expenses-version-1-source
- output: ./previous-versions/sync-for-expenses-version-1
- sync-for-payables-version-1-library:
- target: typescript
- source: sync-for-payables-version-1-source
- output: ./previous-versions/sync-for-payables-version-1
- files-library:
- target: typescript
- source: files-source
- output: ./previous-versions/files
+ accounting-library:
+ target: typescript
+ source: accounting-source
+ output: ./previous-versions/accounting
+ assess-library:
+ target: typescript
+ source: assess-source
+ output: ./previous-versions/assess
+ bank-feeds-library:
+ target: typescript
+ source: bank-feeds-source
+ output: ./bank-feeds
+ banking-library:
+ target: typescript
+ source: banking-source
+ output: ./previous-versions/banking
+ commerce-library:
+ target: typescript
+ source: commerce-source
+ output: ./previous-versions/commerce
+ common-library:
+ target: typescript
+ source: common-source
+ output: ./previous-versions/common
+ files-library:
+ target: typescript
+ source: files-source
+ output: ./previous-versions/files
+ lending-library:
+ target: typescript
+ source: lending-source
+ output: ./lending
+ platform-library:
+ target: typescript
+ source: platform-source
+ output: ./platform
+ sync-for-commerce-library:
+ target: typescript
+ source: sync-for-commerce-source
+ output: ./sync-for-commerce
+ sync-for-commerce-version-1-library:
+ target: typescript
+ source: sync-for-commerce-version-1-source
+ output: ./previous-versions/sync-for-commerce-version-1
+ sync-for-expenses-library:
+ target: typescript
+ source: sync-for-expenses-source
+ output: ./sync-for-expenses
+ sync-for-expenses-version-1-library:
+ target: typescript
+ source: sync-for-expenses-version-1-source
+ output: ./previous-versions/sync-for-expenses-version-1
+ sync-for-payables-library:
+ target: typescript
+ source: sync-for-payables-source
+ output: ./sync-for-payables
+ sync-for-payables-version-1-library:
+ target: typescript
+ source: sync-for-payables-version-1-source
+ output: ./previous-versions/sync-for-payables-version-1
+ sync-for-payroll-library:
+ target: typescript
+ source: sync-for-payroll-source
+ output: ./sync-for-payroll
diff --git a/platform/.eslintrc.cjs b/platform/.eslintrc.cjs
new file mode 100644
index 000000000..4d160bd21
--- /dev/null
+++ b/platform/.eslintrc.cjs
@@ -0,0 +1,28 @@
+/* eslint-env node */
+module.exports = {
+ root: true,
+ extends: [
+ "eslint:recommended",
+ "plugin:@typescript-eslint/recommended",
+ "plugin:import/recommended",
+ "plugin:import/typescript",
+ ],
+ parser: "@typescript-eslint/parser",
+ plugins: ["@typescript-eslint"],
+ settings: {
+ "import/resolver": {
+ typescript: true,
+ node: true,
+ },
+ },
+ rules: {
+ // Handled by typescript compiler
+ "@typescript-eslint/no-unused-vars": "off",
+ "@typescript-eslint/ban-types": "off",
+ "@typescript-eslint/no-namespace": "off",
+ "@typescript-eslint/no-explicit-any": "off",
+ "import/no-named-as-default-member": "off",
+
+ "import/no-default-export": "error",
+ },
+};
diff --git a/platform/.eslintrc.yml b/platform/.eslintrc.yml
deleted file mode 100644
index 565e62401..000000000
--- a/platform/.eslintrc.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-env:
- browser: true
- es2021: true
- node: true
-extends:
- - eslint:recommended
- - plugin:@typescript-eslint/recommended
-overrides: []
-parser: "@typescript-eslint/parser"
-parserOptions:
- ecmaVersion: latest
- sourceType: module
-plugins:
- - "@typescript-eslint"
-rules:
- "@typescript-eslint/no-explicit-any": "off"
- "no-prototype-builtins": "off"
diff --git a/platform/.gitignore b/platform/.gitignore
index 1eae0cf67..e36ba19d5 100755
--- a/platform/.gitignore
+++ b/platform/.gitignore
@@ -1,2 +1,16 @@
+/models
+/sdk/models/errors
+/sdk/types
+/node_modules
+/lib
+/sdk
+/hooks
+/index.*
+/cjs
+/esm
+/dist
+/.tsbuildinfo
+/.tshy
+/.tshy-*
dist/
node_modules/
diff --git a/platform/.npmignore b/platform/.npmignore
new file mode 100644
index 000000000..3ef05d12d
--- /dev/null
+++ b/platform/.npmignore
@@ -0,0 +1,9 @@
+**/*
+!/**/*.ts
+!/**/*.js
+!/**/*.map
+
+/.eslintrc.js
+/cjs
+/.tshy
+/.tshy-*
diff --git a/platform/.speakeasy/gen.lock b/platform/.speakeasy/gen.lock
index 9b37d5e9f..8edd0d232 100755
--- a/platform/.speakeasy/gen.lock
+++ b/platform/.speakeasy/gen.lock
@@ -1,185 +1,145 @@
lockVersion: 2.0.0
id: 6a970e30-8d0a-42f0-a8ce-621dfe880a1d
management:
- docChecksum: 91b86a7707fc536ccbdc7b7345d775a0
+ docChecksum: ced98ff1180e32d5026f7d960a49babc
docVersion: 3.0.0
- speakeasyVersion: 1.274.1
- generationVersion: 2.314.0
- releaseVersion: 2.5.0
- configChecksum: c4a672dcbfe52dae902773d203aac4e1
+ speakeasyVersion: 1.330.0
+ generationVersion: 2.361.10
+ releaseVersion: 3.0.0
+ configChecksum: 686d1b240ce42e186264e41a09710bb0
repoURL: https://github.com/codatio/client-sdk-typescript.git
repoSubDirectory: platform
installationURL: https://gitpkg.now.sh/codatio/client-sdk-typescript/platform
published: true
features:
typescript:
- core: 3.4.8
+ additionalDependencies: 0.1.0
+ constsAndDefaults: 0.1.5
+ core: 3.11.5
deprecations: 2.81.1
- examples: 2.81.3
- globalSecurity: 2.82.5
- globalServerURLs: 2.82.2
+ examples: 2.81.4
+ globalSecurity: 2.82.9
+ globalSecurityCallbacks: 0.1.0
+ globalSecurityFlattening: 0.1.0
+ globalServerURLs: 2.82.4
groups: 2.81.2
ignores: 2.81.1
- inputOutputModels: 2.83.0
nameOverrides: 2.81.2
- retries: 2.82.1
+ nullables: 0.1.0
+ responseFormat: 0.2.3
+ retries: 2.83.0
+ sdkHooks: 0.1.0
webhooks: 1.0.0
generatedFiles:
- - src/sdk/settings.ts
- src/sdk/companies.ts
+ - src/sdk/connections.ts
- src/sdk/corssettings.ts
- src/sdk/connectionmanagement.ts
- - src/sdk/connections.ts
- - src/sdk/customdatatype.ts
- - src/sdk/pushdata.ts
- src/sdk/refreshdata.ts
- src/sdk/groups.ts
+ - src/sdk/webhooks.ts
- src/sdk/integrations.ts
+ - src/sdk/settings.ts
+ - src/sdk/pushdata.ts
- src/sdk/supplementaldata.ts
- - src/sdk/webhooks.ts
+ - src/sdk/customdatatype.ts
- src/sdk/sdk.ts
- - .eslintrc.yml
- - jest.config.js
- - package-lock.json
+ - .eslintrc.cjs
+ - .npmignore
+ - RUNTIMES.md
+ - jsr.json
- package.json
- src/index.ts
- - src/internal/utils/contenttype.ts
- - src/internal/utils/headers.ts
- - src/internal/utils/index.ts
- - src/internal/utils/pathparams.ts
- - src/internal/utils/queryparams.ts
- - src/internal/utils/requestbody.ts
- - src/internal/utils/retries.ts
- - src/internal/utils/security.ts
- - src/internal/utils/utils.ts
+ - src/lib/base64.ts
+ - src/lib/config.ts
+ - src/lib/encodings.ts
+ - src/lib/http.ts
+ - src/lib/is-plain-object.ts
+ - src/lib/primitives.ts
+ - src/lib/retries.ts
+ - src/lib/schemas.ts
+ - src/lib/sdks.ts
+ - src/lib/security.ts
+ - src/lib/url.ts
- src/sdk/index.ts
- src/sdk/models/errors/sdkerror.ts
+ - src/sdk/models/errors/sdkvalidationerror.ts
+ - src/sdk/types/blobs.ts
+ - src/sdk/types/enums.ts
- src/sdk/types/index.ts
+ - src/sdk/types/operations.ts
- src/sdk/types/rfcdate.ts
- tsconfig.json
- - src/sdk/models/operations/createapikey.ts
- - src/sdk/models/operations/deleteapikey.ts
- - src/sdk/models/operations/getprofile.ts
- - src/sdk/models/operations/getprofilesyncsettings.ts
- - src/sdk/models/operations/listapikeys.ts
- - src/sdk/models/operations/updateprofile.ts
- - src/sdk/models/operations/updateprofilesyncsettings.ts
- - src/sdk/models/operations/createcompany.ts
- - src/sdk/models/operations/deletecompany.ts
- - src/sdk/models/operations/getcompany.ts
- - src/sdk/models/operations/listcompanies.ts
- - src/sdk/models/operations/updatecompany.ts
- - src/sdk/models/operations/getconnectionmanagementaccesstoken.ts
- - src/sdk/models/operations/getconnectionmanagementcorssettings.ts
- - src/sdk/models/operations/setconnectionmanagementcorssettings.ts
- - src/sdk/models/operations/createconnection.ts
- - src/sdk/models/operations/deleteconnection.ts
- - src/sdk/models/operations/getconnection.ts
- - src/sdk/models/operations/listconnections.ts
- - src/sdk/models/operations/unlinkconnection.ts
- - src/sdk/models/operations/updateconnectionauthorization.ts
- - src/sdk/models/operations/configurecustomdatatype.ts
- - src/sdk/models/operations/getcustomdatatypeconfiguration.ts
- - src/sdk/models/operations/listcustomdatatyperecords.ts
- - src/sdk/models/operations/refreshcustomdatatype.ts
- - src/sdk/models/operations/getcreateupdatemodeloptionsbydatatype.ts
- - src/sdk/models/operations/getpushoperation.ts
- - src/sdk/models/operations/getcompanypushhistory.ts
- - src/sdk/models/operations/refreshcompanydata.ts
- - src/sdk/models/operations/refreshdatatype.ts
- - src/sdk/models/operations/getcompanydatastatus.ts
- - src/sdk/models/operations/getpulloperation.ts
- - src/sdk/models/operations/listpulloperations.ts
- - src/sdk/models/operations/addcompanytogroup.ts
- - src/sdk/models/operations/creategroup.ts
- - src/sdk/models/operations/listgroups.ts
- - src/sdk/models/operations/removecompanyfromgroup.ts
- - src/sdk/models/operations/getintegration.ts
- - src/sdk/models/operations/getintegrationsbranding.ts
- - src/sdk/models/operations/listintegrations.ts
- - src/sdk/models/operations/configuresupplementaldata.ts
- - src/sdk/models/operations/getsupplementaldataconfiguration.ts
- - src/sdk/models/operations/createrule.ts
- - src/sdk/models/operations/createwebhookconsumer.ts
- - src/sdk/models/operations/deletewebhookconsumer.ts
- - src/sdk/models/operations/getwebhook.ts
- - src/sdk/models/operations/listrules.ts
- - src/sdk/models/operations/listwebhookconsumers.ts
- - src/sdk/models/shared/errormessage.ts
- - src/sdk/models/shared/errorvalidation.ts
- - src/sdk/models/shared/errorvalidationitem.ts
- - src/sdk/models/shared/apikeydetails.ts
- - src/sdk/models/shared/createapikey.ts
- - src/sdk/models/shared/profile.ts
- - src/sdk/models/shared/syncsettings.ts
- - src/sdk/models/shared/syncsetting.ts
- - src/sdk/models/shared/datatype.ts
- - src/sdk/models/shared/apikeys.ts
+ - src/sdk/models/shared/companies.ts
+ - src/sdk/models/shared/links.ts
+ - src/sdk/models/shared/halref.ts
- src/sdk/models/shared/company.ts
- src/sdk/models/shared/groupref.ts
- src/sdk/models/shared/connection.ts
+ - src/sdk/models/shared/dataconnectionerror.ts
- src/sdk/models/shared/dataconnectionstatus.ts
- src/sdk/models/shared/sourcetype.ts
- - src/sdk/models/shared/dataconnectionerror.ts
+ - src/sdk/models/shared/errorvalidation.ts
+ - src/sdk/models/shared/errorvalidationitem.ts
- src/sdk/models/shared/companyrequestbody.ts
- - src/sdk/models/shared/companies.ts
- - src/sdk/models/shared/links.ts
- - src/sdk/models/shared/halref.ts
- - src/sdk/models/shared/connectionmanagementaccesstoken.ts
- - src/sdk/models/shared/connectionmanagementallowedorigins.ts
- src/sdk/models/shared/connections.ts
- src/sdk/models/shared/updateconnectionstatus.ts
- - src/sdk/models/shared/customdatatypeconfiguration.ts
- - src/sdk/models/shared/customdatatyperecords.ts
- - src/sdk/models/shared/customdatatyperecord.ts
+ - src/sdk/models/shared/connectionmanagementaccesstoken.ts
+ - src/sdk/models/shared/connectionmanagementallowedorigins.ts
- src/sdk/models/shared/pulloperation.ts
- - src/sdk/models/shared/pushoption.ts
- - src/sdk/models/shared/pushvalidationinfo.ts
- - src/sdk/models/shared/pushfieldvalidation.ts
- - src/sdk/models/shared/pushoptiontype.ts
- - src/sdk/models/shared/pushoptionproperty.ts
- - src/sdk/models/shared/pushoptionchoice.ts
- - src/sdk/models/shared/schemadatatype.ts
- - src/sdk/models/shared/pushoperation.ts
- - src/sdk/models/shared/validation.ts
- - src/sdk/models/shared/validationitem.ts
- - src/sdk/models/shared/pushoperationstatus.ts
- - src/sdk/models/shared/pushoperationchange.ts
- - src/sdk/models/shared/pushchangetype.ts
- - src/sdk/models/shared/pushoperationref.ts
- - src/sdk/models/shared/pushoperations.ts
+ - src/sdk/models/shared/datatype.ts
- src/sdk/models/shared/datastatuses.ts
- src/sdk/models/shared/datastatus.ts
- src/sdk/models/shared/status.ts
- src/sdk/models/shared/pulloperations.ts
- src/sdk/models/shared/companygroupassignment.ts
+ - src/sdk/models/shared/groups.ts
- src/sdk/models/shared/group.ts
- src/sdk/models/shared/groupprototype.ts
- - src/sdk/models/shared/groups.ts
+ - src/sdk/models/shared/webhooks.ts
+ - src/sdk/models/shared/webhook.ts
+ - src/sdk/models/shared/webhooknotifier.ts
+ - src/sdk/models/shared/createrule.ts
+ - src/sdk/models/shared/webhookconsumers.ts
+ - src/sdk/models/shared/webhookconsumer.ts
+ - src/sdk/models/shared/webhookconsumerprototype.ts
+ - src/sdk/models/shared/integrations.ts
- src/sdk/models/shared/integration.ts
- src/sdk/models/shared/datatypefeature.ts
- src/sdk/models/shared/supportedfeature.ts
- - src/sdk/models/shared/featuretype.ts
- src/sdk/models/shared/featurestate.ts
+ - src/sdk/models/shared/featuretype.ts
+ - src/sdk/models/shared/propertiedatatype.ts
- src/sdk/models/shared/branding.ts
- - src/sdk/models/shared/brandinglogo.ts
+ - src/sdk/models/shared/brandingbutton.ts
- src/sdk/models/shared/brandingimage.ts
- src/sdk/models/shared/imagereference.ts
- - src/sdk/models/shared/brandingbutton.ts
- - src/sdk/models/shared/integrations.ts
+ - src/sdk/models/shared/brandinglogo.ts
+ - src/sdk/models/shared/profile.ts
+ - src/sdk/models/shared/syncsettings.ts
+ - src/sdk/models/shared/syncsetting.ts
+ - src/sdk/models/shared/apikeys.ts
+ - src/sdk/models/shared/apikeydetails.ts
+ - src/sdk/models/shared/createapikey.ts
+ - src/sdk/models/shared/pushoption.ts
+ - src/sdk/models/shared/pushvalidationinfo.ts
+ - src/sdk/models/shared/pushfieldvalidation.ts
+ - src/sdk/models/shared/pushoptionchoice.ts
+ - src/sdk/models/shared/pushoptiontype.ts
+ - src/sdk/models/shared/pushoptionproperty.ts
+ - src/sdk/models/shared/pushoperations.ts
+ - src/sdk/models/shared/pushoperation.ts
+ - src/sdk/models/shared/validation.ts
+ - src/sdk/models/shared/validationitem.ts
+ - src/sdk/models/shared/pushoperationstatus.ts
+ - src/sdk/models/shared/pushoperationchange.ts
+ - src/sdk/models/shared/pushoperationref.ts
+ - src/sdk/models/shared/pushchangetype.ts
- src/sdk/models/shared/supplementaldataconfiguration.ts
- - src/sdk/models/shared/webhook.ts
- - src/sdk/models/shared/webhooknotifier.ts
- - src/sdk/models/shared/createrule.ts
- - src/sdk/models/shared/webhookconsumer.ts
- - src/sdk/models/shared/webhookconsumerprototype.ts
- - src/sdk/models/shared/webhooks.ts
- - src/sdk/models/shared/webhookconsumers.ts
+ - src/sdk/models/shared/customdatatypeconfiguration.ts
+ - src/sdk/models/shared/customdatatyperecords.ts
+ - src/sdk/models/shared/customdatatyperecord.ts
- src/sdk/models/shared/security.ts
- - src/sdk/models/shared/clientratelimitreachedwebhook.ts
- - src/sdk/models/shared/clientratelimitreachedwebhookdata.ts
- - src/sdk/models/shared/clientratelimitresetwebhook.ts
- - src/sdk/models/shared/clientratelimitresetwebhookdata.ts
- src/sdk/models/shared/connectionstatuschangedwebhook.ts
- src/sdk/models/shared/connectionstatuschangedwebhookdata.ts
- src/sdk/models/shared/datasynccompletedwebhook.ts
@@ -189,189 +149,129 @@ generatedFiles:
- src/sdk/models/shared/datasetstatuschangederrorwebhookdata.ts
- src/sdk/models/shared/newcompanysynchronizedwebhook.ts
- src/sdk/models/shared/newcompanysynchronizedwebhookdata.ts
- - src/sdk/models/shared/pushoperationtimedoutwebhook.ts
- - src/sdk/models/shared/pushoperationtimedoutwebhookdata.ts
- src/sdk/models/shared/pushoperationstatuschangedwebhook.ts
- src/sdk/models/shared/pushoperationstatuschangedwebhookdata.ts
- - src/sdk/models/webhooks/clientratelimitreached.ts
- - src/sdk/models/webhooks/clientratelimitreset.ts
- - src/sdk/models/webhooks/companydataconnectionstatuschanged.ts
- - src/sdk/models/webhooks/datasynccompleted.ts
- - src/sdk/models/webhooks/datasetdatachanged.ts
- - src/sdk/models/webhooks/datasetstatushaschangedtoanerrorstate.ts
- - src/sdk/models/webhooks/newcompanysynchronized.ts
- - src/sdk/models/webhooks/pushoperationhastimedout.ts
- - src/sdk/models/webhooks/pushoperationstatushaschanged.ts
+ - src/sdk/models/shared/pushoperationtimedoutwebhook.ts
+ - src/sdk/models/shared/pushoperationtimedoutwebhookdata.ts
+ - src/sdk/models/shared/clientratelimitreachedwebhook.ts
+ - src/sdk/models/shared/clientratelimitreachedwebhookdata.ts
+ - src/sdk/models/shared/clientratelimitresetwebhook.ts
+ - src/sdk/models/shared/clientratelimitresetwebhookdata.ts
+ - src/sdk/models/errors/errormessage.ts
+ - src/sdk/models/operations/listcompanies.ts
+ - src/sdk/models/operations/getcompany.ts
+ - src/sdk/models/operations/deletecompany.ts
+ - src/sdk/models/operations/updatecompany.ts
+ - src/sdk/models/operations/listconnections.ts
+ - src/sdk/models/operations/createconnection.ts
+ - src/sdk/models/operations/getconnection.ts
+ - src/sdk/models/operations/deleteconnection.ts
+ - src/sdk/models/operations/unlinkconnection.ts
+ - src/sdk/models/operations/updateconnectionauthorization.ts
+ - src/sdk/models/operations/getconnectionmanagementaccesstoken.ts
+ - src/sdk/models/operations/refreshcompanydata.ts
+ - src/sdk/models/operations/refreshdatatype.ts
+ - src/sdk/models/operations/getcompanydatastatus.ts
+ - src/sdk/models/operations/listpulloperations.ts
+ - src/sdk/models/operations/getpulloperation.ts
+ - src/sdk/models/operations/addcompanytogroup.ts
+ - src/sdk/models/operations/removecompanyfromgroup.ts
+ - src/sdk/models/operations/listrules.ts
+ - src/sdk/models/operations/getwebhook.ts
+ - src/sdk/models/operations/deletewebhookconsumer.ts
+ - src/sdk/models/operations/listintegrations.ts
+ - src/sdk/models/operations/getintegration.ts
+ - src/sdk/models/operations/getintegrationsbranding.ts
+ - src/sdk/models/operations/updateprofilesyncsettings.ts
+ - src/sdk/models/operations/deleteapikey.ts
+ - src/sdk/models/operations/getcreateupdatemodeloptionsbydatatype.ts
+ - src/sdk/models/operations/getcompanypushhistory.ts
+ - src/sdk/models/operations/getpushoperation.ts
+ - src/sdk/models/operations/configuresupplementaldata.ts
+ - src/sdk/models/operations/getsupplementaldataconfiguration.ts
+ - src/sdk/models/operations/configurecustomdatatype.ts
+ - src/sdk/models/operations/getcustomdatatypeconfiguration.ts
+ - src/sdk/models/operations/refreshcustomdatatype.ts
+ - src/sdk/models/operations/listcustomdatatyperecords.ts
- src/sdk/models/errors/index.ts
- - src/sdk/models/operations/index.ts
- src/sdk/models/shared/index.ts
- - src/sdk/models/webhooks/index.ts
- - docs/sdk/models/operations/createapikeyresponse.md
- - docs/sdk/models/operations/deleteapikeyrequest.md
- - docs/sdk/models/operations/deleteapikeyresponse.md
- - docs/sdk/models/operations/getprofileresponse.md
- - docs/sdk/models/operations/getprofilesyncsettingsresponse.md
- - docs/sdk/models/operations/listapikeysresponse.md
- - docs/sdk/models/operations/updateprofileresponse.md
- - docs/sdk/models/operations/updateprofilesyncsettingsrequestbody.md
- - docs/sdk/models/operations/updateprofilesyncsettingsresponse.md
- - docs/sdk/models/operations/createcompanyresponse.md
- - docs/sdk/models/operations/deletecompanyrequest.md
- - docs/sdk/models/operations/deletecompanyresponse.md
- - docs/sdk/models/operations/getcompanyrequest.md
- - docs/sdk/models/operations/getcompanyresponse.md
- - docs/sdk/models/operations/listcompaniesrequest.md
- - docs/sdk/models/operations/listcompaniesresponse.md
- - docs/sdk/models/operations/updatecompanyrequest.md
- - docs/sdk/models/operations/updatecompanyresponse.md
- - docs/sdk/models/operations/getconnectionmanagementaccesstokenrequest.md
- - docs/sdk/models/operations/getconnectionmanagementaccesstokenresponse.md
- - docs/sdk/models/operations/getconnectionmanagementcorssettingsresponse.md
- - docs/sdk/models/operations/setconnectionmanagementcorssettingsresponse.md
- - docs/sdk/models/operations/createconnectionrequestbody.md
- - docs/sdk/models/operations/createconnectionrequest.md
- - docs/sdk/models/operations/createconnectionresponse.md
- - docs/sdk/models/operations/deleteconnectionrequest.md
- - docs/sdk/models/operations/deleteconnectionresponse.md
- - docs/sdk/models/operations/getconnectionrequest.md
- - docs/sdk/models/operations/getconnectionresponse.md
- - docs/sdk/models/operations/listconnectionsrequest.md
- - docs/sdk/models/operations/listconnectionsresponse.md
- - docs/sdk/models/operations/unlinkconnectionrequest.md
- - docs/sdk/models/operations/unlinkconnectionresponse.md
- - docs/sdk/models/operations/updateconnectionauthorizationrequest.md
- - docs/sdk/models/operations/updateconnectionauthorizationresponse.md
- - docs/sdk/models/operations/configurecustomdatatyperequest.md
- - docs/sdk/models/operations/configurecustomdatatyperesponse.md
- - docs/sdk/models/operations/getcustomdatatypeconfigurationrequest.md
- - docs/sdk/models/operations/getcustomdatatypeconfigurationresponse.md
- - docs/sdk/models/operations/listcustomdatatyperecordsrequest.md
- - docs/sdk/models/operations/listcustomdatatyperecordsresponse.md
- - docs/sdk/models/operations/refreshcustomdatatyperequest.md
- - docs/sdk/models/operations/refreshcustomdatatyperesponse.md
- - docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md
- - docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperesponse.md
- - docs/sdk/models/operations/getpushoperationrequest.md
- - docs/sdk/models/operations/getpushoperationresponse.md
- - docs/sdk/models/operations/getcompanypushhistoryrequest.md
- - docs/sdk/models/operations/getcompanypushhistoryresponse.md
- - docs/sdk/models/operations/refreshcompanydatarequest.md
- - docs/sdk/models/operations/refreshcompanydataresponse.md
- - docs/sdk/models/operations/refreshdatatyperequest.md
- - docs/sdk/models/operations/refreshdatatyperesponse.md
- - docs/sdk/models/operations/getcompanydatastatusrequest.md
- - docs/sdk/models/operations/getcompanydatastatusresponse.md
- - docs/sdk/models/operations/getpulloperationrequest.md
- - docs/sdk/models/operations/getpulloperationresponse.md
- - docs/sdk/models/operations/listpulloperationsrequest.md
- - docs/sdk/models/operations/listpulloperationsresponse.md
- - docs/sdk/models/operations/addcompanytogrouprequest.md
- - docs/sdk/models/operations/addcompanytogroupresponse.md
- - docs/sdk/models/operations/creategroupresponse.md
- - docs/sdk/models/operations/listgroupsresponse.md
- - docs/sdk/models/operations/removecompanyfromgrouprequest.md
- - docs/sdk/models/operations/removecompanyfromgroupresponse.md
- - docs/sdk/models/operations/getintegrationrequest.md
- - docs/sdk/models/operations/getintegrationresponse.md
- - docs/sdk/models/operations/getintegrationsbrandingrequest.md
- - docs/sdk/models/operations/getintegrationsbrandingresponse.md
- - docs/sdk/models/operations/listintegrationsrequest.md
- - docs/sdk/models/operations/listintegrationsresponse.md
- - docs/sdk/models/operations/datatype.md
- - docs/sdk/models/operations/configuresupplementaldatarequest.md
- - docs/sdk/models/operations/configuresupplementaldataresponse.md
- - docs/sdk/models/operations/pathparamdatatype.md
- - docs/sdk/models/operations/getsupplementaldataconfigurationrequest.md
- - docs/sdk/models/operations/getsupplementaldataconfigurationresponse.md
- - docs/sdk/models/operations/createruleresponse.md
- - docs/sdk/models/operations/createwebhookconsumerresponse.md
- - docs/sdk/models/operations/deletewebhookconsumerrequest.md
- - docs/sdk/models/operations/deletewebhookconsumerresponse.md
- - docs/sdk/models/operations/getwebhookrequest.md
- - docs/sdk/models/operations/getwebhookresponse.md
- - docs/sdk/models/operations/listrulesrequest.md
- - docs/sdk/models/operations/listrulesresponse.md
- - docs/sdk/models/operations/listwebhookconsumersresponse.md
- - docs/sdk/models/shared/errormessage.md
- - docs/sdk/models/shared/errorvalidation.md
- - docs/sdk/models/shared/errorvalidationitem.md
- - docs/sdk/models/shared/apikeydetails.md
- - docs/sdk/models/shared/createapikey.md
- - docs/sdk/models/shared/profile.md
- - docs/sdk/models/shared/syncsettings.md
- - docs/sdk/models/shared/syncsetting.md
- - docs/sdk/models/shared/datatype.md
- - docs/sdk/models/shared/apikeys.md
+ - src/sdk/models/operations/index.ts
+ - docs/sdk/models/shared/companies.md
+ - docs/sdk/models/shared/links.md
+ - docs/sdk/models/shared/halref.md
- docs/sdk/models/shared/company.md
- docs/sdk/models/shared/groupref.md
- docs/sdk/models/shared/connection.md
+ - docs/sdk/models/shared/errorstatus.md
+ - docs/sdk/models/shared/dataconnectionerror.md
- docs/sdk/models/shared/dataconnectionstatus.md
- docs/sdk/models/shared/sourcetype.md
- - docs/sdk/models/shared/dataconnectionerror.md
+ - docs/sdk/models/shared/errorvalidation.md
+ - docs/sdk/models/shared/errorvalidationitem.md
- docs/sdk/models/shared/companyrequestbody.md
- - docs/sdk/models/shared/companies.md
- - docs/sdk/models/shared/links.md
- - docs/sdk/models/shared/halref.md
- - docs/sdk/models/shared/connectionmanagementaccesstoken.md
- - docs/sdk/models/shared/connectionmanagementallowedorigins.md
- docs/sdk/models/shared/connections.md
- docs/sdk/models/shared/updateconnectionstatus.md
- - docs/sdk/models/shared/customdatatypeconfiguration.md
- - docs/sdk/models/shared/customdatatyperecords.md
- - docs/sdk/models/shared/content.md
- - docs/sdk/models/shared/modifieddate.md
- - docs/sdk/models/shared/customdatatyperecord.md
+ - docs/sdk/models/shared/connectionmanagementaccesstoken.md
+ - docs/sdk/models/shared/connectionmanagementallowedorigins.md
- docs/sdk/models/shared/datasetstatus.md
- docs/sdk/models/shared/pulloperation.md
- - docs/sdk/models/shared/pushoption.md
- - docs/sdk/models/shared/pushvalidationinfo.md
- - docs/sdk/models/shared/pushfieldvalidation.md
- - docs/sdk/models/shared/pushoptiontype.md
- - docs/sdk/models/shared/pushoptionproperty.md
- - docs/sdk/models/shared/pushoptionchoice.md
- - docs/sdk/models/shared/schemadatatype.md
- - docs/sdk/models/shared/pushoperation.md
- - docs/sdk/models/shared/validation.md
- - docs/sdk/models/shared/validationitem.md
- - docs/sdk/models/shared/pushoperationstatus.md
- - docs/sdk/models/shared/pushoperationchange.md
- - docs/sdk/models/shared/pushchangetype.md
- - docs/sdk/models/shared/pushoperationref.md
- - docs/sdk/models/shared/pushoperations.md
+ - docs/sdk/models/shared/datatype.md
- docs/sdk/models/shared/datastatuses.md
- docs/sdk/models/shared/datatypes.md
- docs/sdk/models/shared/datastatus.md
- docs/sdk/models/shared/status.md
- docs/sdk/models/shared/pulloperations.md
- docs/sdk/models/shared/companygroupassignment.md
+ - docs/sdk/models/shared/groups.md
- docs/sdk/models/shared/group.md
- docs/sdk/models/shared/groupprototype.md
- - docs/sdk/models/shared/groups.md
+ - docs/sdk/models/shared/webhooks.md
+ - docs/sdk/models/shared/webhook.md
+ - docs/sdk/models/shared/webhooknotifier.md
+ - docs/sdk/models/shared/createrule.md
+ - docs/sdk/models/shared/webhookconsumers.md
+ - docs/sdk/models/shared/webhookconsumer.md
+ - docs/sdk/models/shared/webhookconsumerprototype.md
+ - docs/sdk/models/shared/integrations.md
- docs/sdk/models/shared/integration.md
- docs/sdk/models/shared/datatypefeature.md
- docs/sdk/models/shared/supportedfeature.md
- - docs/sdk/models/shared/featuretype.md
- docs/sdk/models/shared/featurestate.md
+ - docs/sdk/models/shared/featuretype.md
+ - docs/sdk/models/shared/propertiedatatype.md
- docs/sdk/models/shared/branding.md
- - docs/sdk/models/shared/brandinglogo.md
+ - docs/sdk/models/shared/brandingbutton.md
- docs/sdk/models/shared/brandingimage.md
- docs/sdk/models/shared/imagereference.md
- - docs/sdk/models/shared/brandingbutton.md
- - docs/sdk/models/shared/integrations.md
+ - docs/sdk/models/shared/brandinglogo.md
+ - docs/sdk/models/shared/profile.md
+ - docs/sdk/models/shared/syncsettings.md
+ - docs/sdk/models/shared/syncsetting.md
+ - docs/sdk/models/shared/apikeys.md
+ - docs/sdk/models/shared/apikeydetails.md
+ - docs/sdk/models/shared/createapikey.md
+ - docs/sdk/models/shared/pushoption.md
+ - docs/sdk/models/shared/pushvalidationinfo.md
+ - docs/sdk/models/shared/pushfieldvalidation.md
+ - docs/sdk/models/shared/pushoptionchoice.md
+ - docs/sdk/models/shared/pushoptiontype.md
+ - docs/sdk/models/shared/pushoptionproperty.md
+ - docs/sdk/models/shared/pushoperations.md
+ - docs/sdk/models/shared/pushoperation.md
+ - docs/sdk/models/shared/validation.md
+ - docs/sdk/models/shared/validationitem.md
+ - docs/sdk/models/shared/pushoperationstatus.md
+ - docs/sdk/models/shared/pushoperationchange.md
+ - docs/sdk/models/shared/pushoperationref.md
+ - docs/sdk/models/shared/pushchangetype.md
- docs/sdk/models/shared/supplementaldatasourceconfiguration.md
- docs/sdk/models/shared/supplementaldataconfiguration.md
- - docs/sdk/models/shared/webhook.md
- - docs/sdk/models/shared/webhooknotifier.md
- - docs/sdk/models/shared/createrule.md
- - docs/sdk/models/shared/webhookconsumer.md
- - docs/sdk/models/shared/webhookconsumerprototype.md
- - docs/sdk/models/shared/webhooks.md
- - docs/sdk/models/shared/webhookconsumers.md
+ - docs/sdk/models/shared/customdatatypeconfiguration.md
+ - docs/sdk/models/shared/customdatatyperecords.md
+ - docs/sdk/models/shared/content.md
+ - docs/sdk/models/shared/modifieddate.md
+ - docs/sdk/models/shared/customdatatyperecord.md
- docs/sdk/models/shared/security.md
- - docs/sdk/models/shared/clientratelimitreachedwebhook.md
- - docs/sdk/models/shared/clientratelimitreachedwebhookdata.md
- - docs/sdk/models/shared/clientratelimitresetwebhook.md
- - docs/sdk/models/shared/clientratelimitresetwebhookdata.md
- docs/sdk/models/shared/connectionstatuschangedwebhook.md
- docs/sdk/models/shared/connectionstatuschangedwebhookdata.md
- docs/sdk/models/shared/datasynccompletedwebhook.md
@@ -382,32 +282,69 @@ generatedFiles:
- docs/sdk/models/shared/datasetstatuschangederrorwebhookdata.md
- docs/sdk/models/shared/newcompanysynchronizedwebhook.md
- docs/sdk/models/shared/newcompanysynchronizedwebhookdata.md
- - docs/sdk/models/shared/pushoperationtimedoutwebhook.md
- - docs/sdk/models/shared/pushoperationtimedoutwebhookdata.md
- docs/sdk/models/shared/pushoperationstatuschangedwebhook.md
- docs/sdk/models/shared/pushoperationstatuschangedwebhookdata.md
- - docs/sdk/models/webhooks/clientratelimitreachedresponse.md
- - docs/sdk/models/webhooks/clientratelimitresetresponse.md
- - docs/sdk/models/webhooks/companydataconnectionstatuschangedresponse.md
- - docs/sdk/models/webhooks/datasynccompletedresponse.md
- - docs/sdk/models/webhooks/datasetdatachangedresponse.md
- - docs/sdk/models/webhooks/datasetstatushaschangedtoanerrorstateresponse.md
- - docs/sdk/models/webhooks/newcompanysynchronizedresponse.md
- - docs/sdk/models/webhooks/pushoperationhastimedoutresponse.md
- - docs/sdk/models/webhooks/pushoperationstatushaschangedresponse.md
+ - docs/sdk/models/shared/pushoperationtimedoutwebhook.md
+ - docs/sdk/models/shared/pushoperationtimedoutwebhookdata.md
+ - docs/sdk/models/shared/clientratelimitreachedwebhook.md
+ - docs/sdk/models/shared/clientratelimitreachedwebhookdata.md
+ - docs/sdk/models/shared/clientratelimitresetwebhook.md
+ - docs/sdk/models/shared/clientratelimitresetwebhookdata.md
+ - docs/sdk/models/errors/errormessage.md
+ - docs/sdk/models/operations/listcompaniesrequest.md
+ - docs/sdk/models/operations/getcompanyrequest.md
+ - docs/sdk/models/operations/deletecompanyrequest.md
+ - docs/sdk/models/operations/updatecompanyrequest.md
+ - docs/sdk/models/operations/listconnectionsrequest.md
+ - docs/sdk/models/operations/createconnectionrequestbody.md
+ - docs/sdk/models/operations/createconnectionrequest.md
+ - docs/sdk/models/operations/getconnectionrequest.md
+ - docs/sdk/models/operations/deleteconnectionrequest.md
+ - docs/sdk/models/operations/unlinkconnectionrequest.md
+ - docs/sdk/models/operations/updateconnectionauthorizationrequest.md
+ - docs/sdk/models/operations/getconnectionmanagementaccesstokenrequest.md
+ - docs/sdk/models/operations/refreshcompanydatarequest.md
+ - docs/sdk/models/operations/refreshdatatyperequest.md
+ - docs/sdk/models/operations/getcompanydatastatusrequest.md
+ - docs/sdk/models/operations/listpulloperationsrequest.md
+ - docs/sdk/models/operations/getpulloperationrequest.md
+ - docs/sdk/models/operations/addcompanytogrouprequest.md
+ - docs/sdk/models/operations/removecompanyfromgrouprequest.md
+ - docs/sdk/models/operations/listrulesrequest.md
+ - docs/sdk/models/operations/getwebhookrequest.md
+ - docs/sdk/models/operations/deletewebhookconsumerrequest.md
+ - docs/sdk/models/operations/listintegrationsrequest.md
+ - docs/sdk/models/operations/getintegrationrequest.md
+ - docs/sdk/models/operations/getintegrationsbrandingrequest.md
+ - docs/sdk/models/operations/updateprofilesyncsettingsrequestbody.md
+ - docs/sdk/models/operations/deleteapikeyrequest.md
+ - docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md
+ - docs/sdk/models/operations/getcompanypushhistoryrequest.md
+ - docs/sdk/models/operations/getpushoperationrequest.md
+ - docs/sdk/models/operations/datatype.md
+ - docs/sdk/models/operations/configuresupplementaldatarequest.md
+ - docs/sdk/models/operations/pathparamdatatype.md
+ - docs/sdk/models/operations/getsupplementaldataconfigurationrequest.md
+ - docs/sdk/models/operations/configurecustomdatatyperequest.md
+ - docs/sdk/models/operations/getcustomdatatypeconfigurationrequest.md
+ - docs/sdk/models/operations/refreshcustomdatatyperequest.md
+ - docs/sdk/models/operations/listcustomdatatyperecordsrequest.md
- docs/sdks/codatplatform/README.md
- - docs/internal/utils/retryconfig.md
- - docs/sdks/settings/README.md
+ - docs/lib/utils/retryconfig.md
- docs/sdks/companies/README.md
+ - docs/sdks/connections/README.md
- docs/sdks/connectionmanagement/README.md
- docs/sdks/corssettings/README.md
- - docs/sdks/connections/README.md
- - docs/sdks/customdatatype/README.md
- - docs/sdks/pushdata/README.md
- docs/sdks/refreshdata/README.md
- docs/sdks/groups/README.md
+ - docs/sdks/webhooks/README.md
- docs/sdks/integrations/README.md
+ - docs/sdks/settings/README.md
+ - docs/sdks/pushdata/README.md
- docs/sdks/supplementaldata/README.md
- - docs/sdks/webhooks/README.md
+ - docs/sdks/customdatatype/README.md
- USAGE.md
- .gitattributes
+ - src/hooks/hooks.ts
+ - src/hooks/types.ts
+ - src/hooks/index.ts
diff --git a/platform/README.md b/platform/README.md
index e3602308a..dc1b8f660 100644
--- a/platform/README.md
+++ b/platform/README.md
@@ -13,10 +13,25 @@ Manage the building blocks of Codat, including companies, connections, and more.
npm add @codat/platform
```
+### PNPM
+
+```bash
+pnpm add @codat/platform
+```
+
+### Bun
+
+```bash
+bun add @codat/platform
+```
+
### Yarn
```bash
-yarn add @codat/platform
+yarn add @codat/platform zod
+
+# Note that Yarn does not install peer dependencies automatically. You will need
+# to install zod as shown above.
```
@@ -29,20 +44,20 @@ yarn add @codat/platform
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
+async function run() {
+ const result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
@@ -53,89 +68,89 @@ run();
## Available Resources and Operations
-### [settings](docs/sdks/settings/README.md)
-
-* [createApiKey](docs/sdks/settings/README.md#createapikey) - Create API key
-* [deleteApiKey](docs/sdks/settings/README.md#deleteapikey) - Delete API key
-* [getProfile](docs/sdks/settings/README.md#getprofile) - Get profile
-* [getSyncSettings](docs/sdks/settings/README.md#getsyncsettings) - Get sync settings
-* [listApiKeys](docs/sdks/settings/README.md#listapikeys) - List API keys
-* [updateProfile](docs/sdks/settings/README.md#updateprofile) - Update profile
-* [updateSyncSettings](docs/sdks/settings/README.md#updatesyncsettings) - Update all sync settings
-
### [companies](docs/sdks/companies/README.md)
+* [list](docs/sdks/companies/README.md#list) - List companies
* [create](docs/sdks/companies/README.md#create) - Create company
-* [delete](docs/sdks/companies/README.md#delete) - Delete a company
* [get](docs/sdks/companies/README.md#get) - Get company
-* [list](docs/sdks/companies/README.md#list) - List companies
+* [delete](docs/sdks/companies/README.md#delete) - Delete a company
* [update](docs/sdks/companies/README.md#update) - Update company
-### [connectionManagement](docs/sdks/connectionmanagement/README.md)
-
-* [getAccessToken](docs/sdks/connectionmanagement/README.md#getaccesstoken) - Get access token
-
-### [connectionManagement.corsSettings](docs/sdks/corssettings/README.md)
-
-* [get](docs/sdks/corssettings/README.md#get) - Get CORS settings
-* [set](docs/sdks/corssettings/README.md#set) - Set CORS settings
-
### [connections](docs/sdks/connections/README.md)
+* [list](docs/sdks/connections/README.md#list) - List connections
* [create](docs/sdks/connections/README.md#create) - Create connection
-* [delete](docs/sdks/connections/README.md#delete) - Delete connection
* [get](docs/sdks/connections/README.md#get) - Get connection
-* [list](docs/sdks/connections/README.md#list) - List connections
+* [delete](docs/sdks/connections/README.md#delete) - Delete connection
* [unlink](docs/sdks/connections/README.md#unlink) - Unlink connection
* [updateAuthorization](docs/sdks/connections/README.md#updateauthorization) - Update authorization
-### [customDataType](docs/sdks/customdatatype/README.md)
+### [connectionManagement](docs/sdks/connectionmanagement/README.md)
-* [configure](docs/sdks/customdatatype/README.md#configure) - Configure custom data type
-* [getConfiguration](docs/sdks/customdatatype/README.md#getconfiguration) - Get custom data configuration
-* [list](docs/sdks/customdatatype/README.md#list) - List custom data type records
-* [refresh](docs/sdks/customdatatype/README.md#refresh) - Refresh custom data type
+* [getAccessToken](docs/sdks/connectionmanagement/README.md#getaccesstoken) - Get access token
-### [pushData](docs/sdks/pushdata/README.md)
+### [connectionManagement.corsSettings](docs/sdks/corssettings/README.md)
-* [getModelOptions](docs/sdks/pushdata/README.md#getmodeloptions) - Get push options
-* [getOperation](docs/sdks/pushdata/README.md#getoperation) - Get push operation
-* [listOperations](docs/sdks/pushdata/README.md#listoperations) - List push operations
+* [get](docs/sdks/corssettings/README.md#get) - Get CORS settings
+* [set](docs/sdks/corssettings/README.md#set) - Set CORS settings
### [refreshData](docs/sdks/refreshdata/README.md)
* [all](docs/sdks/refreshdata/README.md#all) - Refresh all data
* [byDataType](docs/sdks/refreshdata/README.md#bydatatype) - Refresh data type
* [get](docs/sdks/refreshdata/README.md#get) - Get data status
-* [getPullOperation](docs/sdks/refreshdata/README.md#getpulloperation) - Get pull operation
* [listPullOperations](docs/sdks/refreshdata/README.md#listpulloperations) - List pull operations
+* [getPullOperation](docs/sdks/refreshdata/README.md#getpulloperation) - Get pull operation
### [groups](docs/sdks/groups/README.md)
* [addCompany](docs/sdks/groups/README.md#addcompany) - Add company
-* [create](docs/sdks/groups/README.md#create) - Create group
-* [list](docs/sdks/groups/README.md#list) - List groups
* [removeCompany](docs/sdks/groups/README.md#removecompany) - Remove company
+* [list](docs/sdks/groups/README.md#list) - List groups
+* [create](docs/sdks/groups/README.md#create) - Create group
+
+### [webhooks](docs/sdks/webhooks/README.md)
+
+* [~~list~~](docs/sdks/webhooks/README.md#list) - List webhooks :warning: **Deprecated**
+* [~~create~~](docs/sdks/webhooks/README.md#create) - Create webhook :warning: **Deprecated**
+* [~~get~~](docs/sdks/webhooks/README.md#get) - Get webhook :warning: **Deprecated**
+* [listConsumers](docs/sdks/webhooks/README.md#listconsumers) - List webhook consumers
+* [createConsumer](docs/sdks/webhooks/README.md#createconsumer) - Create webhook consumer
+* [deleteConsumer](docs/sdks/webhooks/README.md#deleteconsumer) - Delete webhook consumer
### [integrations](docs/sdks/integrations/README.md)
+* [list](docs/sdks/integrations/README.md#list) - List integrations
* [get](docs/sdks/integrations/README.md#get) - Get integration
* [getBranding](docs/sdks/integrations/README.md#getbranding) - Get branding
-* [list](docs/sdks/integrations/README.md#list) - List integrations
+
+### [settings](docs/sdks/settings/README.md)
+
+* [getProfile](docs/sdks/settings/README.md#getprofile) - Get profile
+* [updateProfile](docs/sdks/settings/README.md#updateprofile) - Update profile
+* [getSyncSettings](docs/sdks/settings/README.md#getsyncsettings) - Get sync settings
+* [updateSyncSettings](docs/sdks/settings/README.md#updatesyncsettings) - Update all sync settings
+* [listApiKeys](docs/sdks/settings/README.md#listapikeys) - List API keys
+* [createApiKey](docs/sdks/settings/README.md#createapikey) - Create API key
+* [deleteApiKey](docs/sdks/settings/README.md#deleteapikey) - Delete API key
+
+### [pushData](docs/sdks/pushdata/README.md)
+
+* [getModelOptions](docs/sdks/pushdata/README.md#getmodeloptions) - Get push options
+* [listOperations](docs/sdks/pushdata/README.md#listoperations) - List push operations
+* [getOperation](docs/sdks/pushdata/README.md#getoperation) - Get push operation
### [supplementalData](docs/sdks/supplementaldata/README.md)
* [configure](docs/sdks/supplementaldata/README.md#configure) - Configure
* [getConfiguration](docs/sdks/supplementaldata/README.md#getconfiguration) - Get configuration
-### [webhooks](docs/sdks/webhooks/README.md)
+### [customDataType](docs/sdks/customdatatype/README.md)
-* [~~create~~](docs/sdks/webhooks/README.md#create) - Create webhook :warning: **Deprecated**
-* [createConsumer](docs/sdks/webhooks/README.md#createconsumer) - Create webhook consumer
-* [deleteConsumer](docs/sdks/webhooks/README.md#deleteconsumer) - Delete webhook consumer
-* [~~get~~](docs/sdks/webhooks/README.md#get) - Get webhook :warning: **Deprecated**
-* [~~list~~](docs/sdks/webhooks/README.md#list) - List webhooks :warning: **Deprecated**
-* [listConsumers](docs/sdks/webhooks/README.md#listconsumers) - List webhook consumers
+* [configure](docs/sdks/customdatatype/README.md#configure) - Configure custom data type
+* [getConfiguration](docs/sdks/customdatatype/README.md#getconfiguration) - Get custom data configuration
+* [refresh](docs/sdks/customdatatype/README.md#refresh) - Refresh custom data type
+* [list](docs/sdks/customdatatype/README.md#list) - List custom data type records
@@ -149,32 +164,34 @@ To change the default retry strategy for a single API call, simply provide a ret
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey(
+async function run() {
+ const result = await codatPlatform.companies.list(
{
- name: "azure-invoice-finance-processor",
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
},
{
- strategy: "backoff",
- backoff: {
- initialInterval: 1,
- maxInterval: 50,
- exponent: 1.1,
- maxElapsedTime: 100,
+ retries: {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 1,
+ maxInterval: 50,
+ exponent: 1.1,
+ maxElapsedTime: 100,
+ },
+ retryConnectionErrors: false,
},
- retryConnectionErrors: false,
}
);
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
@@ -185,30 +202,30 @@ If you'd like to override the default retry strategy for all operations that sup
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- retry_config: {
- strategy: "backoff",
- backoff: {
- initialInterval: 1,
- maxInterval: 50,
- exponent: 1.1,
- maxElapsedTime: 100,
- },
- retryConnectionErrors: false,
+const codatPlatform = new CodatPlatform({
+ retryConfig: {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 1,
+ maxInterval: 50,
+ exponent: 1.1,
+ maxElapsedTime: 100,
},
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+ retryConnectionErrors: false,
+ },
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
+async function run() {
+ const result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
@@ -219,39 +236,54 @@ run();
## Error Handling
-Handling errors in this SDK should largely match your expectations. All operations return a response object or throw an error. If Error objects are specified in your OpenAPI Spec, the SDK will throw the appropriate Error type.
+All SDK methods return a response object or throw an error. If Error objects are specified in your OpenAPI Spec, the SDK will throw the appropriate Error type.
+
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+Validation errors can also occur when either method arguments or data returned from the server do not match the expected format. The `SDKValidationError` that is thrown as a result will capture the raw value that failed validation in an attribute called `rawValue`. Additionally, a `pretty()` method is available on this error that can be used to log a nicely formatted string since validation errors can list many issues and the plain error string may be difficult read when debugging.
-Example
```typescript
import { CodatPlatform } from "@codat/platform";
+import { SDKValidationError } from "@codat/platform/sdk/models/errors";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- let res;
+async function run() {
+ let result;
try {
- res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
+ result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
} catch (err) {
- if (err instanceof errors.SDKError) {
- console.error(err); // handle exception
- throw err;
+ switch (true) {
+ case err instanceof SDKValidationError: {
+ // Validation errors can be pretty-printed
+ console.error(err.pretty());
+ // Raw value may also be inspected
+ console.error(err.rawValue);
+ return;
+ }
+ case err instanceof errors.ErrorMessage: {
+ console.error(err); // handle exception
+ return;
+ }
+ default: {
+ throw err;
+ }
}
}
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
@@ -264,32 +296,30 @@ run();
### Select Server by Index
-You can override the default server globally by passing a server index to the `serverIdx: number` optional parameter when initializing the SDK client instance. The selected server will then be used as the default on the operations that use it. This table lists the indexes associated with the available servers:
+You can override the default server globally by passing a server index to the `serverIdx` optional parameter when initializing the SDK client instance. The selected server will then be used as the default on the operations that use it. This table lists the indexes associated with the available servers:
| # | Server | Variables |
| - | ------ | --------- |
| 0 | `https://api.codat.io` | None |
-#### Example
-
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- serverIdx: 0,
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ serverIdx: 0,
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
+async function run() {
+ const result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
@@ -299,25 +329,26 @@ run();
### Override Server URL Per-Client
-The default server can also be overridden globally by passing a URL to the `serverURL: str` optional parameter when initializing the SDK client instance. For example:
+The default server can also be overridden globally by passing a URL to the `serverURL` optional parameter when initializing the SDK client instance. For example:
+
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- serverURL: "https://api.codat.io",
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ serverURL: "https://api.codat.io",
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
+async function run() {
+ const result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
@@ -328,19 +359,49 @@ run();
## Custom HTTP Client
-The Typescript SDK makes API calls using the [axios](https://axios-http.com/docs/intro) HTTP library. In order to provide a convenient way to configure timeouts, cookies, proxies, custom headers, and other low-level configuration, you can initialize the SDK client with a custom `AxiosInstance` object.
+The TypeScript SDK makes API calls using an `HTTPClient` that wraps the native
+[Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API). This
+client is a thin wrapper around `fetch` and provides the ability to attach hooks
+around the request lifecycle that can be used to modify the request or handle
+errors and response.
+
+The `HTTPClient` constructor takes an optional `fetcher` argument that can be
+used to integrate a third-party HTTP client or when writing tests to mock out
+the HTTP client and feed in fixtures.
-For example, you could specify a header for every request that your sdk makes as follows:
+The following example shows how to use the `"beforeRequest"` hook to to add a
+custom header and a timeout to requests and how to use the `"requestError"` hook
+to log errors:
```typescript
-import { @codat/platform } from "CodatPlatform";
-import axios from "axios";
+import { CodatPlatform } from "@codat/platform";
+import { HTTPClient } from "@codat/platform/lib/http";
+
+const httpClient = new HTTPClient({
+ // fetcher takes a function that has the same signature as native `fetch`.
+ fetcher: (request) => {
+ return fetch(request);
+ }
+});
+
+httpClient.addHook("beforeRequest", (request) => {
+ const nextRequest = new Request(request, {
+ signal: request.signal || AbortSignal.timeout(5000)
+ });
+
+ nextRequest.headers.set("x-custom-header", "custom value");
-const httpClient = axios.create({
- headers: {'x-custom-header': 'someValue'}
-})
+ return nextRequest;
+});
-const sdk = new CodatPlatform({defaultClient: httpClient});
+httpClient.addHook("requestError", (error, request) => {
+ console.group("Request Error");
+ console.log("Reason:", `${error}`);
+ console.log("Endpoint:", `${request.method} ${request.url}`);
+ console.groupEnd();
+});
+
+const sdk = new CodatPlatform({ httpClient });
```
@@ -355,24 +416,24 @@ This SDK supports the following security scheme globally:
| ------------ | ------------ | ------------ |
| `authHeader` | apiKey | API key |
-You can set the security parameters through the `security` optional parameter when initializing the SDK client instance. For example:
+To authenticate with the API the `authHeader` parameter must be set when initializing the SDK client instance. For example:
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
+async function run() {
+ const result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
@@ -380,6 +441,12 @@ run();
```
+
+## Requirements
+
+For supported JavaScript runtimes, please consult [RUNTIMES.md](RUNTIMES.md).
+
+
diff --git a/platform/RELEASES.md b/platform/RELEASES.md
index dc7147e12..ac149e0ae 100644
--- a/platform/RELEASES.md
+++ b/platform/RELEASES.md
@@ -108,4 +108,12 @@ Based on:
### Generated
- [typescript v2.5.0] platform
### Releases
-- [NPM v2.5.0] https://www.npmjs.com/package/@codat/platform/v/2.5.0 - platform
\ No newline at end of file
+- [NPM v2.5.0] https://www.npmjs.com/package/@codat/platform/v/2.5.0 - platform
+
+## 2024-07-09 14:47:33
+### Changes
+Based on:
+- OpenAPI Doc
+- Speakeasy CLI 1.330.0 (2.361.10) https://github.com/speakeasy-api/speakeasy
+### Generated
+- [typescript v3.0.0] ./platform
\ No newline at end of file
diff --git a/platform/RUNTIMES.md b/platform/RUNTIMES.md
new file mode 100644
index 000000000..d08a0c075
--- /dev/null
+++ b/platform/RUNTIMES.md
@@ -0,0 +1,22 @@
+# Supported JavaScript runtimes
+
+This SDK is intended to be used in JavaScript runtimes that support the following features:
+
+* [Web Fetch API][web-fetch]
+* [Web Streams API][web-streams] and in particular `ReadableStream`
+* [Async iterables][async-iter] using `Symbol.asyncIterator`
+
+[web-fetch]: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API
+[web-streams]: https://developer.mozilla.org/en-US/docs/Web/API/Streams_API
+[async-iter]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols#the_async_iterator_and_async_iterable_protocols
+
+Runtime environments that are explicitly supported are:
+
+- Evergreen browsers which include: Chrome, Safari, Edge, Firefox
+- Node.js active and maintenance LTS releases
+ - Currently, this is v18 and v20
+- Bun v1 and above
+- Deno v1.39
+ - Note that Deno does not currently have native support for streaming file uploads backed by the filesystem ([issue link][deno-file-streaming])
+
+[deno-file-streaming]: https://github.com/denoland/deno/issues/11018
diff --git a/platform/USAGE.md b/platform/USAGE.md
index 20f0cd06f..6087584cc 100644
--- a/platform/USAGE.md
+++ b/platform/USAGE.md
@@ -2,20 +2,20 @@
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
+async function run() {
+ const result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result);
}
run();
diff --git a/platform/docs/internal/utils/retryconfig.md b/platform/docs/internal/utils/retryconfig.md
deleted file mode 100644
index c0936d80c..000000000
--- a/platform/docs/internal/utils/retryconfig.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# RetryConfig
-
-Allows customizing the default retry configuration. Only usable with methods that mention they support retries.
-
-## Fields
-
-| Name | Type | Description | Example |
-| ------------------------- | ----------------------------------- | --------------------------------------- | --------- |
-| `strategy` | `*string*` | The retry strategy to use. | `backoff` |
-| `backoff` | [BackoffStrategy](#backoffstrategy) | Configuration for the backoff strategy. | |
-| `retryConnectionErrors` | `*boolean*` | Whether to retry on connection errors. | `true` |
-
-## BackoffStrategy
-
-The backoff strategy allows retrying a request with an exponential backoff between each retry.
-
-### Fields
-
-| Name | Type | Description | Example |
-| ------------------ | --------- | ----------------------------------------- | -------- |
-| `initialInterval` | `*number*` | The initial interval in milliseconds. | `500` |
-| `maxInterval` | `*number*` | The maximum interval in milliseconds. | `60000` |
-| `exponent` | `*number*` | The exponent to use for the backoff. | `1.5` |
-| `maxElapsedTime` | `*number*` | The maximum elapsed time in milliseconds. | `300000` |
\ No newline at end of file
diff --git a/platform/docs/lib/utils/retryconfig.md b/platform/docs/lib/utils/retryconfig.md
new file mode 100644
index 000000000..08f95f455
--- /dev/null
+++ b/platform/docs/lib/utils/retryconfig.md
@@ -0,0 +1,24 @@
+# RetryConfig
+
+Allows customizing the default retry configuration. It is only permitted in methods that accept retry policies.
+
+## Fields
+
+| Name | Type | Description | Example |
+| ------------------------- | ----------------------------------- | ------------------------------------------------------------------------------------------ | ----------- |
+| `strategy` | `"backoff" | "none"` | The retry strategy to use. | `"backoff"` |
+| `backoff` | [BackoffStrategy](#backoffstrategy) | When strategy is "backoff", this configurates for the backoff parameters. | |
+| `retryConnectionErrors` | `*boolean*` | When strategy is "backoff", this determines whether or not to retry on connection errors. | `true` |
+
+## BackoffStrategy
+
+The backoff strategy allows retrying a request with an exponential backoff between each retry.
+
+### Fields
+
+| Name | Type | Description | Example |
+| ------------------ | ------------ | ----------------------------------------- | -------- |
+| `initialInterval` | `*number*` | The initial interval in milliseconds. | `500` |
+| `maxInterval` | `*number*` | The maximum interval in milliseconds. | `60000` |
+| `exponent` | `*number*` | The exponent to use for the backoff. | `1.5` |
+| `maxElapsedTime` | `*number*` | The maximum elapsed time in milliseconds. | `300000` |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/errormessage.md b/platform/docs/sdk/models/errors/errormessage.md
similarity index 97%
rename from platform/docs/sdk/models/shared/errormessage.md
rename to platform/docs/sdk/models/errors/errormessage.md
index 4d3abac98..20d3f9b4a 100644
--- a/platform/docs/sdk/models/shared/errormessage.md
+++ b/platform/docs/sdk/models/errors/errormessage.md
@@ -1,14 +1,16 @@
# ErrorMessage
+The request made is not valid.
+
## Fields
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `canBeRetried` | *string* | :heavy_minus_sign: | `True` if the error occurred transiently and can be retried. |
-| `correlationId` | *string* | :heavy_minus_sign: | Unique identifier used to propagate to all downstream services and determine the source of the error. |
-| `detailedErrorCode` | *number* | :heavy_minus_sign: | Machine readable error code used to automate processes based on the code returned. |
-| `error` | *string* | :heavy_minus_sign: | A brief description of the error. |
-| `service` | *string* | :heavy_minus_sign: | Codat's service the returned the error. |
| `statusCode` | *number* | :heavy_minus_sign: | The HTTP status code returned by the error. |
-| `validation` | [shared.ErrorValidation](../../../sdk/models/shared/errorvalidation.md) | :heavy_minus_sign: | A human-readable object describing validation decisions Codat has made. If an operation has failed because of validation errors, they will be detailed here. |
\ No newline at end of file
+| `service` | *string* | :heavy_minus_sign: | Codat's service the returned the error. |
+| `error` | *string* | :heavy_minus_sign: | A brief description of the error. |
+| `correlationId` | *string* | :heavy_minus_sign: | Unique identifier used to propagate to all downstream services and determine the source of the error. |
+| `validation` | [shared.ErrorValidation](../../../sdk/models/shared/errorvalidation.md) | :heavy_minus_sign: | A human-readable object describing validation decisions Codat has made. If an operation has failed because of validation errors, they will be detailed here. |
+| `canBeRetried` | *string* | :heavy_minus_sign: | `True` if the error occurred transiently and can be retried. |
+| `detailedErrorCode` | *number* | :heavy_minus_sign: | Machine readable error code used to automate processes based on the code returned. |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/addcompanytogrouprequest.md b/platform/docs/sdk/models/operations/addcompanytogrouprequest.md
index c950c4f70..c8d75a4ea 100644
--- a/platform/docs/sdk/models/operations/addcompanytogrouprequest.md
+++ b/platform/docs/sdk/models/operations/addcompanytogrouprequest.md
@@ -5,5 +5,5 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
-| `companyGroupAssignment` | [shared.CompanyGroupAssignment](../../../sdk/models/shared/companygroupassignment.md) | :heavy_minus_sign: | N/A | |
-| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
\ No newline at end of file
+| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `companyGroupAssignment` | [shared.CompanyGroupAssignment](../../../sdk/models/shared/companygroupassignment.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/addcompanytogroupresponse.md b/platform/docs/sdk/models/operations/addcompanytogroupresponse.md
deleted file mode 100644
index a94dd2aaa..000000000
--- a/platform/docs/sdk/models/operations/addcompanytogroupresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# AddCompanyToGroupResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `company` | [shared.Company](../../../sdk/models/shared/company.md) | :heavy_minus_sign: | Success | {
"id": "0498e921-9b53-4396-a412-4f2f5983b0a2",
"name": "string",
"platform": "string",
"redirect": "https://link.codat.io/company/27628208-459c-46a2-a705-5641ce25f739",
"lastSync": "2022-01-01T12:00:00.000Z",
"created": "2022-01-01T12:00:00.000Z",
"createdByUserName": "string",
"dataConnections": [
{
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
}
],
"groups": [
{
"id": "d7a6c4b4-dc87-45f6-b803-62f466398680"
}
]
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/configurecustomdatatyperequest.md b/platform/docs/sdk/models/operations/configurecustomdatatyperequest.md
index 5103bb8d1..cb330479c 100644
--- a/platform/docs/sdk/models/operations/configurecustomdatatyperequest.md
+++ b/platform/docs/sdk/models/operations/configurecustomdatatyperequest.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `customDataTypeConfiguration` | [shared.CustomDataTypeConfiguration](../../../sdk/models/shared/customdatatypeconfiguration.md) | :heavy_minus_sign: | Custom data type configuration for the specified platform. | {
"dataSource": "api/purchaseOrders?$filter=currencyCode eq 'NOK'",
"requiredData": {
"currencyCode": "$[*].currencyCode",
"id": "$[*].id",
"number": "$[*].number",
"orderDate": "$[*].orderDate",
"totalAmountExcludingTax": "$[*].totalAmountExcludingTax",
"totalTaxAmount": "$[*].totalTaxAmount",
"vendorName": "$[*].number"
},
"keyBy": [
"$[*].id"
],
"sourceModifiedDate": [
"$[*].lastModifiedDateTime"
]
} |
+| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
| `customDataIdentifier` | *string* | :heavy_check_mark: | Unique identifier for a custom data type. | DynamicsPurchaseOrders |
-| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
\ No newline at end of file
+| `customDataTypeConfiguration` | [shared.CustomDataTypeConfiguration](../../../sdk/models/shared/customdatatypeconfiguration.md) | :heavy_minus_sign: | Custom data type configuration for the specified platform. | {
"dataSource": "api/purchaseOrders?$filter=currencyCode eq 'NOK'",
"requiredData": {
"currencyCode": "$[*].currencyCode",
"id": "$[*].id",
"number": "$[*].number",
"orderDate": "$[*].orderDate",
"totalAmountExcludingTax": "$[*].totalAmountExcludingTax",
"totalTaxAmount": "$[*].totalTaxAmount",
"vendorName": "$[*].number"
},
"keyBy": [
"$[*].id"
],
"sourceModifiedDate": [
"$[*].lastModifiedDateTime"
]
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/configurecustomdatatyperesponse.md b/platform/docs/sdk/models/operations/configurecustomdatatyperesponse.md
deleted file mode 100644
index 7d5e62e44..000000000
--- a/platform/docs/sdk/models/operations/configurecustomdatatyperesponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ConfigureCustomDataTypeResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `customDataTypeConfiguration` | [shared.CustomDataTypeConfiguration](../../../sdk/models/shared/customdatatypeconfiguration.md) | :heavy_minus_sign: | OK | {
"dataSource": "api/purchaseOrders?$filter=currencyCode eq 'NOK'",
"requiredData": {
"currencyCode": "$[*].currencyCode",
"id": "$[*].id",
"number": "$[*].number",
"orderDate": "$[*].orderDate",
"totalAmountExcludingTax": "$[*].totalAmountExcludingTax",
"totalTaxAmount": "$[*].totalTaxAmount",
"vendorName": "$[*].number"
},
"keyBy": [
"$[*].id"
],
"sourceModifiedDate": [
"$[*].lastModifiedDateTime"
]
} |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/configuresupplementaldatarequest.md b/platform/docs/sdk/models/operations/configuresupplementaldatarequest.md
index 6f7fc7f9f..a79c5198e 100644
--- a/platform/docs/sdk/models/operations/configuresupplementaldatarequest.md
+++ b/platform/docs/sdk/models/operations/configuresupplementaldatarequest.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `supplementalDataConfiguration` | [shared.SupplementalDataConfiguration](../../../sdk/models/shared/supplementaldataconfiguration.md) | :heavy_minus_sign: | The configuration for the specified platform and data type. | {
"supplementalDataConfig": {
"orders-supplemental-data": {
"dataSource": "/orders",
"pullData": {
"orderNumber": "order_num"
},
"pushData": {
"orderNumber": "order_num"
}
}
}
} |
+| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
| `dataType` | [operations.DataType](../../../sdk/models/operations/datatype.md) | :heavy_check_mark: | Supported supplemental data data type. | invoices |
-| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
\ No newline at end of file
+| `supplementalDataConfiguration` | [shared.SupplementalDataConfiguration](../../../sdk/models/shared/supplementaldataconfiguration.md) | :heavy_minus_sign: | The configuration for the specified platform and data type. | {
"supplementalDataConfig": {
"orders-supplemental-data": {
"dataSource": "/orders",
"pullData": {
"orderNumber": "order_num"
},
"pushData": {
"orderNumber": "order_num"
}
}
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/configuresupplementaldataresponse.md b/platform/docs/sdk/models/operations/configuresupplementaldataresponse.md
deleted file mode 100644
index 6430965c9..000000000
--- a/platform/docs/sdk/models/operations/configuresupplementaldataresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# ConfigureSupplementalDataResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/createapikeyresponse.md b/platform/docs/sdk/models/operations/createapikeyresponse.md
deleted file mode 100644
index e1d8a2e43..000000000
--- a/platform/docs/sdk/models/operations/createapikeyresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# CreateApiKeyResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `apiKeyDetails` | [shared.ApiKeyDetails](../../../sdk/models/shared/apikeydetails.md) | :heavy_minus_sign: | Success |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Bad Request |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/createcompanyresponse.md b/platform/docs/sdk/models/operations/createcompanyresponse.md
deleted file mode 100644
index 6a15ff31d..000000000
--- a/platform/docs/sdk/models/operations/createcompanyresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# CreateCompanyResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `company` | [shared.Company](../../../sdk/models/shared/company.md) | :heavy_minus_sign: | OK | {
"id": "0498e921-9b53-4396-a412-4f2f5983b0a2",
"name": "string",
"platform": "string",
"redirect": "https://link.codat.io/company/27628208-459c-46a2-a705-5641ce25f739",
"lastSync": "2022-01-01T12:00:00.000Z",
"created": "2022-01-01T12:00:00.000Z",
"createdByUserName": "string",
"dataConnections": [
{
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
}
],
"groups": [
{
"id": "d7a6c4b4-dc87-45f6-b803-62f466398680"
}
]
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | The request made is not valid. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/createconnectionrequest.md b/platform/docs/sdk/models/operations/createconnectionrequest.md
index 646c487b2..cc236eb9b 100644
--- a/platform/docs/sdk/models/operations/createconnectionrequest.md
+++ b/platform/docs/sdk/models/operations/createconnectionrequest.md
@@ -5,5 +5,5 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
-| `requestBody` | [operations.CreateConnectionRequestBody](../../../sdk/models/operations/createconnectionrequestbody.md) | :heavy_minus_sign: | N/A | |
-| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
\ No newline at end of file
+| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `requestBody` | [operations.CreateConnectionRequestBody](../../../sdk/models/operations/createconnectionrequestbody.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/createconnectionresponse.md b/platform/docs/sdk/models/operations/createconnectionresponse.md
deleted file mode 100644
index 0c6d8d50d..000000000
--- a/platform/docs/sdk/models/operations/createconnectionresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# CreateConnectionResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `connection` | [shared.Connection](../../../sdk/models/shared/connection.md) | :heavy_minus_sign: | OK | {
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/creategroupresponse.md b/platform/docs/sdk/models/operations/creategroupresponse.md
deleted file mode 100644
index 116e32862..000000000
--- a/platform/docs/sdk/models/operations/creategroupresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# CreateGroupResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `group` | [shared.Group](../../../sdk/models/shared/group.md) | :heavy_minus_sign: | Success |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/createruleresponse.md b/platform/docs/sdk/models/operations/createruleresponse.md
deleted file mode 100644
index fc2c21031..000000000
--- a/platform/docs/sdk/models/operations/createruleresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# CreateRuleResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
-| `webhook` | [shared.Webhook](../../../sdk/models/shared/webhook.md) | :heavy_minus_sign: | OK | {
"type": "DataConnectionStatusChanged",
"companyId": "39b73b17-cc2e-429e-915d-71654e9dcd1e",
"notifiers": {
"emails": [
"info@client.com"
],
"webhook": "https://webhook.client.com"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/createwebhookconsumerresponse.md b/platform/docs/sdk/models/operations/createwebhookconsumerresponse.md
deleted file mode 100644
index 8990d0033..000000000
--- a/platform/docs/sdk/models/operations/createwebhookconsumerresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# CreateWebhookConsumerResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
-| `webhookConsumer` | [shared.WebhookConsumer](../../../sdk/models/shared/webhookconsumer.md) | :heavy_minus_sign: | OK |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/deleteapikeyresponse.md b/platform/docs/sdk/models/operations/deleteapikeyresponse.md
deleted file mode 100644
index e24247e1a..000000000
--- a/platform/docs/sdk/models/operations/deleteapikeyresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# DeleteApiKeyResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Too many requests were made in a given amount of time. Wait a short period and then try again. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/deletecompanyresponse.md b/platform/docs/sdk/models/operations/deletecompanyresponse.md
deleted file mode 100644
index 25b7d383b..000000000
--- a/platform/docs/sdk/models/operations/deletecompanyresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# DeleteCompanyResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/deleteconnectionresponse.md b/platform/docs/sdk/models/operations/deleteconnectionresponse.md
deleted file mode 100644
index 63d8ae3ca..000000000
--- a/platform/docs/sdk/models/operations/deleteconnectionresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# DeleteConnectionResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/deletewebhookconsumerresponse.md b/platform/docs/sdk/models/operations/deletewebhookconsumerresponse.md
deleted file mode 100644
index 106f4ee07..000000000
--- a/platform/docs/sdk/models/operations/deletewebhookconsumerresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# DeleteWebhookConsumerResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcompanydatastatusresponse.md b/platform/docs/sdk/models/operations/getcompanydatastatusresponse.md
deleted file mode 100644
index 7922dd7bf..000000000
--- a/platform/docs/sdk/models/operations/getcompanydatastatusresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetCompanyDataStatusResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `dataStatuses` | [shared.DataStatuses](../../../sdk/models/shared/datastatuses.md) | :heavy_minus_sign: | OK |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcompanypushhistoryrequest.md b/platform/docs/sdk/models/operations/getcompanypushhistoryrequest.md
index 7cfc62735..df60aa608 100644
--- a/platform/docs/sdk/models/operations/getcompanypushhistoryrequest.md
+++ b/platform/docs/sdk/models/operations/getcompanypushhistoryrequest.md
@@ -6,7 +6,7 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
| `page` | *number* | :heavy_minus_sign: | Page number. [Read more](https://docs.codat.io/using-the-api/paging). | 1 |
| `pageSize` | *number* | :heavy_minus_sign: | Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging). | 100 |
-| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | |
\ No newline at end of file
+| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | id=e3334455-1aed-4e71-ab43-6bccf12092ee |
+| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcompanypushhistoryresponse.md b/platform/docs/sdk/models/operations/getcompanypushhistoryresponse.md
deleted file mode 100644
index 452e334b7..000000000
--- a/platform/docs/sdk/models/operations/getcompanypushhistoryresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetCompanyPushHistoryResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your `query` parameter was not correctly formed | |
-| `pushOperations` | [shared.PushOperations](../../../sdk/models/shared/pushoperations.md) | :heavy_minus_sign: | OK | {
"pageNumber": 1,
"pageSize": 10,
"totalResults": 1,
"_links": {
"self": {
"href": "/companies/{id}/data/{dataType}"
},
"current": {
"href": "/companies/{id}/data/{dataType}?page=1\u0026pageSize=10"
}
}
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcompanyresponse.md b/platform/docs/sdk/models/operations/getcompanyresponse.md
deleted file mode 100644
index 851530822..000000000
--- a/platform/docs/sdk/models/operations/getcompanyresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetCompanyResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `company` | [shared.Company](../../../sdk/models/shared/company.md) | :heavy_minus_sign: | OK | {
"id": "0498e921-9b53-4396-a412-4f2f5983b0a2",
"name": "string",
"platform": "string",
"redirect": "https://link.codat.io/company/27628208-459c-46a2-a705-5641ce25f739",
"lastSync": "2022-01-01T12:00:00.000Z",
"created": "2022-01-01T12:00:00.000Z",
"createdByUserName": "string",
"dataConnections": [
{
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
}
],
"groups": [
{
"id": "d7a6c4b4-dc87-45f6-b803-62f466398680"
}
]
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getconnectionmanagementaccesstokenresponse.md b/platform/docs/sdk/models/operations/getconnectionmanagementaccesstokenresponse.md
deleted file mode 100644
index 9405b5c18..000000000
--- a/platform/docs/sdk/models/operations/getconnectionmanagementaccesstokenresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetConnectionManagementAccessTokenResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
-| `connectionManagementAccessToken` | [shared.ConnectionManagementAccessToken](../../../sdk/models/shared/connectionmanagementaccesstoken.md) | :heavy_minus_sign: | Success |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getconnectionmanagementcorssettingsresponse.md b/platform/docs/sdk/models/operations/getconnectionmanagementcorssettingsresponse.md
deleted file mode 100644
index 8321e55b0..000000000
--- a/platform/docs/sdk/models/operations/getconnectionmanagementcorssettingsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetConnectionManagementCorsSettingsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
-| `connectionManagementAllowedOrigins` | [shared.ConnectionManagementAllowedOrigins](../../../sdk/models/shared/connectionmanagementallowedorigins.md) | :heavy_minus_sign: | Success | {
"allowedOrigins": [
"https://www.bank-of-dave.com"
]
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getconnectionresponse.md b/platform/docs/sdk/models/operations/getconnectionresponse.md
deleted file mode 100644
index b64afa6f5..000000000
--- a/platform/docs/sdk/models/operations/getconnectionresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetConnectionResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `connection` | [shared.Connection](../../../sdk/models/shared/connection.md) | :heavy_minus_sign: | OK | {
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md b/platform/docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md
index 21233abdf..54ec20b4e 100644
--- a/platform/docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md
+++ b/platform/docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md
@@ -3,8 +3,8 @@
## Fields
-| Field | Type | Required | Description | Example |
-| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
-| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `connectionId` | *string* | :heavy_check_mark: | Unique identifier for a connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `dataType` | [shared.SchemaDataType](../../../sdk/models/shared/schemadatatype.md) | :heavy_check_mark: | The key of a Codat data type | invoices |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- |
+| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `connectionId` | *string* | :heavy_check_mark: | Unique identifier for a connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
+| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_check_mark: | The key of a Codat data type | invoices |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperesponse.md b/platform/docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperesponse.md
deleted file mode 100644
index 9fe399002..000000000
--- a/platform/docs/sdk/models/operations/getcreateupdatemodeloptionsbydatatyperesponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetCreateUpdateModelOptionsByDataTypeResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `pushOption` | [shared.PushOption](../../../sdk/models/shared/pushoption.md) | :heavy_minus_sign: | OK |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcustomdatatypeconfigurationrequest.md b/platform/docs/sdk/models/operations/getcustomdatatypeconfigurationrequest.md
index 30fc98ff8..f16cde995 100644
--- a/platform/docs/sdk/models/operations/getcustomdatatypeconfigurationrequest.md
+++ b/platform/docs/sdk/models/operations/getcustomdatatypeconfigurationrequest.md
@@ -5,5 +5,5 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
-| `customDataIdentifier` | *string* | :heavy_check_mark: | Unique identifier for a custom data type. | DynamicsPurchaseOrders |
-| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
\ No newline at end of file
+| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
+| `customDataIdentifier` | *string* | :heavy_check_mark: | Unique identifier for a custom data type. | DynamicsPurchaseOrders |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getcustomdatatypeconfigurationresponse.md b/platform/docs/sdk/models/operations/getcustomdatatypeconfigurationresponse.md
deleted file mode 100644
index 78603243d..000000000
--- a/platform/docs/sdk/models/operations/getcustomdatatypeconfigurationresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetCustomDataTypeConfigurationResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `customDataTypeRecords` | [shared.CustomDataTypeRecords](../../../sdk/models/shared/customdatatyperecords.md) | :heavy_minus_sign: | OK |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getintegrationresponse.md b/platform/docs/sdk/models/operations/getintegrationresponse.md
deleted file mode 100644
index ef41bdda6..000000000
--- a/platform/docs/sdk/models/operations/getintegrationresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetIntegrationResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `integration` | [shared.Integration](../../../sdk/models/shared/integration.md) | :heavy_minus_sign: | OK | {
"key": "gbol",
"logoUrl": "http://example.com",
"name": "Xero",
"enabled": true,
"sourceId": "accounting",
"sourceType": "8193a927-ab7a-45a3-9dc2-d357a4932dfe",
"integrationId": "497a18ca-284e-40c0-985d-f72be35d468e",
"isOfflineConnector": true,
"isBeta": true,
"dataProvidedBy": "string",
"datatypeFeatures": [
{
"datatype": "invoices",
"supportedFeatures": [
{
"featureType": "get",
"featureState": "release"
}
]
}
]
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getintegrationsbrandingresponse.md b/platform/docs/sdk/models/operations/getintegrationsbrandingresponse.md
deleted file mode 100644
index 59caa17c6..000000000
--- a/platform/docs/sdk/models/operations/getintegrationsbrandingresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetIntegrationsBrandingResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `branding` | [shared.Branding](../../../sdk/models/shared/branding.md) | :heavy_minus_sign: | OK | {
"logo": {
"full": {
"image": {
"src": "https://static.codat.io/public/officialLogos/Full/8A156A5A-39CB-4F9D-856E-76EF9B9A9607.png",
"alt": "xero full icon"
}
},
"square": {
"image": {
"src": "https://static.codat.io/public/officialLogos/Square/8A156A5A-39CB-4F9D-856E-76EF9B2W3607.png",
"alt": "xero square icon"
}
}
},
"button": {
"default": {
"image": {
"src": "https://static.codat.io/public/officialButtons/Full/8A156A5A-39CB-4F9D-856E-76EF9Q7A9607.png",
"alt": "xero default button icon"
}
},
"hover": {
"image": {
"src": "https://static.codat.io/public/officialLogos/Full/8A156A5A-39CB-4F9D-856E-76EF9B9A9607.png",
"alt": "xero hover button icon"
}
}
},
"sourceId": "35b92968-9851-4095-ad60-395c95cbcba4"
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getprofileresponse.md b/platform/docs/sdk/models/operations/getprofileresponse.md
deleted file mode 100644
index 6f1504ebb..000000000
--- a/platform/docs/sdk/models/operations/getprofileresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetProfileResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `profile` | [shared.Profile](../../../sdk/models/shared/profile.md) | :heavy_minus_sign: | OK | {
"name": "Bob's Burgers",
"logoUrl": "https://client-images.codat.io/logo/042399f5-d104-4f38-9ce8-cac3524f4e88_5806cb1f-7342-4c0e-a0a8-99bfbc47b0ff.png",
"iconUrl": "https://client-images.codat.io/icon/042399f5-d104-4f38-9ce8-cac3524f4e88_3f5623af-d992-4c22-bc08-e58c520a8526.ico",
"redirectUrl": "https://bobs-burgers.{countrySuffix}/{companyId}",
"whiteListUrls": [
"https://bobs-burgers.com",
"https://bobs-burgers.co.uk"
],
"confirmCompanyName": true
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getprofilesyncsettingsresponse.md b/platform/docs/sdk/models/operations/getprofilesyncsettingsresponse.md
deleted file mode 100644
index ac21a3ef7..000000000
--- a/platform/docs/sdk/models/operations/getprofilesyncsettingsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetProfileSyncSettingsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
-| `syncSettings` | [shared.SyncSettings](../../../sdk/models/shared/syncsettings.md) | :heavy_minus_sign: | OK |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getpulloperationresponse.md b/platform/docs/sdk/models/operations/getpulloperationresponse.md
deleted file mode 100644
index 849552470..000000000
--- a/platform/docs/sdk/models/operations/getpulloperationresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetPullOperationResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `pullOperation` | [shared.PullOperation](../../../sdk/models/shared/pulloperation.md) | :heavy_minus_sign: | OK | {
"id": "97d60846-f07a-4d42-b5a0-0bdcc6ebf56b",
"companyId": "4645bd78-8988-45bc-ac9e-67ba5df6e4e5",
"connectionId": "51baa045-4836-4317-a42e-3542e991e581",
"dataType": "invoices",
"status": "Initial",
"statusDescription": "Paused until 2022-10-23T00:00:00.000Z",
"requested": "2022-11-14T11:18:37.2798351Z",
"progress": 10,
"isCompleted": false,
"isErrored": false
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getpushoperationresponse.md b/platform/docs/sdk/models/operations/getpushoperationresponse.md
deleted file mode 100644
index 69847367c..000000000
--- a/platform/docs/sdk/models/operations/getpushoperationresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetPushOperationResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `pushOperation` | [shared.PushOperation](../../../sdk/models/shared/pushoperation.md) | :heavy_minus_sign: | OK |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getsupplementaldataconfigurationrequest.md b/platform/docs/sdk/models/operations/getsupplementaldataconfigurationrequest.md
index 85c8eb4d9..5e72d95d5 100644
--- a/platform/docs/sdk/models/operations/getsupplementaldataconfigurationrequest.md
+++ b/platform/docs/sdk/models/operations/getsupplementaldataconfigurationrequest.md
@@ -5,5 +5,5 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
-| `dataType` | [operations.PathParamDataType](../../../sdk/models/operations/pathparamdatatype.md) | :heavy_check_mark: | Supported supplemental data data type. | invoices |
-| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
\ No newline at end of file
+| `platformKey` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. | gbol |
+| `dataType` | [operations.PathParamDataType](../../../sdk/models/operations/pathparamdatatype.md) | :heavy_check_mark: | Supported supplemental data data type. | invoices |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getsupplementaldataconfigurationresponse.md b/platform/docs/sdk/models/operations/getsupplementaldataconfigurationresponse.md
deleted file mode 100644
index e4bc845c4..000000000
--- a/platform/docs/sdk/models/operations/getsupplementaldataconfigurationresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetSupplementalDataConfigurationResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
-| `supplementalDataConfiguration` | [shared.SupplementalDataConfiguration](../../../sdk/models/shared/supplementaldataconfiguration.md) | :heavy_minus_sign: | OK | {
"supplementalDataConfig": {
"orders-supplemental-data": {
"dataSource": "/orders",
"pullData": {
"orderNumber": "order_num"
},
"pushData": {
"orderNumber": "order_num"
}
}
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/getwebhookresponse.md b/platform/docs/sdk/models/operations/getwebhookresponse.md
deleted file mode 100644
index 25eb361fe..000000000
--- a/platform/docs/sdk/models/operations/getwebhookresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# GetWebhookResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
-| `webhook` | [shared.Webhook](../../../sdk/models/shared/webhook.md) | :heavy_minus_sign: | OK | {
"type": "DataConnectionStatusChanged",
"companyId": "39b73b17-cc2e-429e-915d-71654e9dcd1e",
"notifiers": {
"emails": [
"info@client.com"
],
"webhook": "https://webhook.client.com"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listapikeysresponse.md b/platform/docs/sdk/models/operations/listapikeysresponse.md
deleted file mode 100644
index 5cf3da2ba..000000000
--- a/platform/docs/sdk/models/operations/listapikeysresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListApiKeysResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `apiKeys` | [shared.ApiKeys](../../../sdk/models/shared/apikeys.md) | :heavy_minus_sign: | Success |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listcompaniesrequest.md b/platform/docs/sdk/models/operations/listcompaniesrequest.md
index fe345adb9..fd35ced3f 100644
--- a/platform/docs/sdk/models/operations/listcompaniesrequest.md
+++ b/platform/docs/sdk/models/operations/listcompaniesrequest.md
@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
-| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
| `page` | *number* | :heavy_minus_sign: | Page number. [Read more](https://docs.codat.io/using-the-api/paging). | 1 |
| `pageSize` | *number* | :heavy_minus_sign: | Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging). | 100 |
-| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | |
\ No newline at end of file
+| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | id=e3334455-1aed-4e71-ab43-6bccf12092ee |
+| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listcompaniesresponse.md b/platform/docs/sdk/models/operations/listcompaniesresponse.md
deleted file mode 100644
index 0924fe934..000000000
--- a/platform/docs/sdk/models/operations/listcompaniesresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListCompaniesResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `companies` | [shared.Companies](../../../sdk/models/shared/companies.md) | :heavy_minus_sign: | OK | {
"pageNumber": 1,
"pageSize": 10,
"totalResults": 1,
"_links": {
"self": {
"href": "/companies/{id}/data/{dataType}"
},
"current": {
"href": "/companies/{id}/data/{dataType}?page=1\u0026pageSize=10"
}
}
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your `query` parameter was not correctly formed | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listconnectionsrequest.md b/platform/docs/sdk/models/operations/listconnectionsrequest.md
index c2548d5bf..562bbba8c 100644
--- a/platform/docs/sdk/models/operations/listconnectionsrequest.md
+++ b/platform/docs/sdk/models/operations/listconnectionsrequest.md
@@ -6,7 +6,7 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
| `page` | *number* | :heavy_minus_sign: | Page number. [Read more](https://docs.codat.io/using-the-api/paging). | 1 |
| `pageSize` | *number* | :heavy_minus_sign: | Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging). | 100 |
-| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | |
\ No newline at end of file
+| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | id=e3334455-1aed-4e71-ab43-6bccf12092ee |
+| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listconnectionsresponse.md b/platform/docs/sdk/models/operations/listconnectionsresponse.md
deleted file mode 100644
index 082d0da3a..000000000
--- a/platform/docs/sdk/models/operations/listconnectionsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListConnectionsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `connections` | [shared.Connections](../../../sdk/models/shared/connections.md) | :heavy_minus_sign: | OK | {
"pageNumber": 1,
"pageSize": 10,
"totalResults": 1,
"_links": {
"self": {
"href": "/companies/{id}/data/{dataType}"
},
"current": {
"href": "/companies/{id}/data/{dataType}?page=1\u0026pageSize=10"
}
}
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your `query` parameter was not correctly formed | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listcustomdatatyperecordsresponse.md b/platform/docs/sdk/models/operations/listcustomdatatyperecordsresponse.md
deleted file mode 100644
index 0e4272f7f..000000000
--- a/platform/docs/sdk/models/operations/listcustomdatatyperecordsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListCustomDataTypeRecordsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `customDataTypeRecords` | [shared.CustomDataTypeRecords](../../../sdk/models/shared/customdatatyperecords.md) | :heavy_minus_sign: | OK |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | The request made is not valid. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listgroupsresponse.md b/platform/docs/sdk/models/operations/listgroupsresponse.md
deleted file mode 100644
index f650a2859..000000000
--- a/platform/docs/sdk/models/operations/listgroupsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListGroupsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
-| `groups` | [shared.Groups](../../../sdk/models/shared/groups.md) | :heavy_minus_sign: | Success |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listintegrationsrequest.md b/platform/docs/sdk/models/operations/listintegrationsrequest.md
index 9f989cc17..754b2b249 100644
--- a/platform/docs/sdk/models/operations/listintegrationsrequest.md
+++ b/platform/docs/sdk/models/operations/listintegrationsrequest.md
@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
-| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
| `page` | *number* | :heavy_minus_sign: | Page number. [Read more](https://docs.codat.io/using-the-api/paging). | 1 |
| `pageSize` | *number* | :heavy_minus_sign: | Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging). | 100 |
-| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | |
\ No newline at end of file
+| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | id=e3334455-1aed-4e71-ab43-6bccf12092ee |
+| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listintegrationsresponse.md b/platform/docs/sdk/models/operations/listintegrationsresponse.md
deleted file mode 100644
index 5f4a7aba5..000000000
--- a/platform/docs/sdk/models/operations/listintegrationsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListIntegrationsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your `query` parameter was not correctly formed | |
-| `integrations` | [shared.Integrations](../../../sdk/models/shared/integrations.md) | :heavy_minus_sign: | OK | {
"pageNumber": 1,
"pageSize": 10,
"totalResults": 1,
"_links": {
"self": {
"href": "/companies/{id}/data/{dataType}"
},
"current": {
"href": "/companies/{id}/data/{dataType}?page=1\u0026pageSize=10"
}
}
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listpulloperationsrequest.md b/platform/docs/sdk/models/operations/listpulloperationsrequest.md
index 338ac9af9..47ba335d4 100644
--- a/platform/docs/sdk/models/operations/listpulloperationsrequest.md
+++ b/platform/docs/sdk/models/operations/listpulloperationsrequest.md
@@ -6,7 +6,7 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
| `page` | *number* | :heavy_minus_sign: | Page number. [Read more](https://docs.codat.io/using-the-api/paging). | 1 |
| `pageSize` | *number* | :heavy_minus_sign: | Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging). | 100 |
-| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | |
\ No newline at end of file
+| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | id=e3334455-1aed-4e71-ab43-6bccf12092ee |
+| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listpulloperationsresponse.md b/platform/docs/sdk/models/operations/listpulloperationsresponse.md
deleted file mode 100644
index f801181ef..000000000
--- a/platform/docs/sdk/models/operations/listpulloperationsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListPullOperationsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your `query` parameter was not correctly formed | |
-| `pullOperations` | [shared.PullOperations](../../../sdk/models/shared/pulloperations.md) | :heavy_minus_sign: | OK | {
"pageNumber": 1,
"pageSize": 10,
"totalResults": 1,
"_links": {
"self": {
"href": "/companies/{id}/data/{dataType}"
},
"current": {
"href": "/companies/{id}/data/{dataType}?page=1\u0026pageSize=10"
}
}
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listrulesrequest.md b/platform/docs/sdk/models/operations/listrulesrequest.md
index 864add3b7..33db30f05 100644
--- a/platform/docs/sdk/models/operations/listrulesrequest.md
+++ b/platform/docs/sdk/models/operations/listrulesrequest.md
@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
-| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
| `page` | *number* | :heavy_minus_sign: | Page number. [Read more](https://docs.codat.io/using-the-api/paging). | 1 |
| `pageSize` | *number* | :heavy_minus_sign: | Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging). | 100 |
-| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | |
\ No newline at end of file
+| `query` | *string* | :heavy_minus_sign: | Codat query string. [Read more](https://docs.codat.io/using-the-api/querying). | id=e3334455-1aed-4e71-ab43-6bccf12092ee |
+| `orderBy` | *string* | :heavy_minus_sign: | Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results). | -modifiedDate |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listrulesresponse.md b/platform/docs/sdk/models/operations/listrulesresponse.md
deleted file mode 100644
index 1a3d8fd81..000000000
--- a/platform/docs/sdk/models/operations/listrulesresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListRulesResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your `query` parameter was not correctly formed | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
-| `webhooks` | [shared.Webhooks](../../../sdk/models/shared/webhooks.md) | :heavy_minus_sign: | OK | {
"pageNumber": 1,
"pageSize": 10,
"totalResults": 1,
"_links": {
"self": {
"href": "/companies/{id}/data/{dataType}"
},
"current": {
"href": "/companies/{id}/data/{dataType}?page=1\u0026pageSize=10"
}
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/listwebhookconsumersresponse.md b/platform/docs/sdk/models/operations/listwebhookconsumersresponse.md
deleted file mode 100644
index bfaa0b07c..000000000
--- a/platform/docs/sdk/models/operations/listwebhookconsumersresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# ListWebhookConsumersResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | The request made is not valid. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
-| `webhookConsumers` | [shared.WebhookConsumers](../../../sdk/models/shared/webhookconsumers.md) | :heavy_minus_sign: | OK |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/refreshcompanydataresponse.md b/platform/docs/sdk/models/operations/refreshcompanydataresponse.md
deleted file mode 100644
index 82fa32d69..000000000
--- a/platform/docs/sdk/models/operations/refreshcompanydataresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# RefreshCompanyDataResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/refreshcustomdatatyperesponse.md b/platform/docs/sdk/models/operations/refreshcustomdatatyperesponse.md
deleted file mode 100644
index d004d33f8..000000000
--- a/platform/docs/sdk/models/operations/refreshcustomdatatyperesponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# RefreshCustomDataTypeResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `pullOperation` | [shared.PullOperation](../../../sdk/models/shared/pulloperation.md) | :heavy_minus_sign: | OK | {
"id": "97d60846-f07a-4d42-b5a0-0bdcc6ebf56b",
"companyId": "4645bd78-8988-45bc-ac9e-67ba5df6e4e5",
"connectionId": "51baa045-4836-4317-a42e-3542e991e581",
"dataType": "invoices",
"status": "Initial",
"statusDescription": "Paused until 2022-10-23T00:00:00.000Z",
"requested": "2022-11-14T11:18:37.2798351Z",
"progress": 10,
"isCompleted": false,
"isErrored": false
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/refreshdatatyperequest.md b/platform/docs/sdk/models/operations/refreshdatatyperequest.md
index 373c846f4..4880626c9 100644
--- a/platform/docs/sdk/models/operations/refreshdatatyperequest.md
+++ b/platform/docs/sdk/models/operations/refreshdatatyperequest.md
@@ -6,5 +6,5 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `connectionId` | *string* | :heavy_minus_sign: | Optionally, provide a data connection id to only queue pull operations on that connection. | |
-| `dataType` | [shared.SchemaDataType](../../../sdk/models/shared/schemadatatype.md) | :heavy_check_mark: | The key of a Codat data type | invoices |
\ No newline at end of file
+| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_check_mark: | The key of a Codat data type | invoices |
+| `connectionId` | *string* | :heavy_minus_sign: | Optionally, provide a data connection id to only queue pull operations on that connection. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/refreshdatatyperesponse.md b/platform/docs/sdk/models/operations/refreshdatatyperesponse.md
deleted file mode 100644
index 07295ec52..000000000
--- a/platform/docs/sdk/models/operations/refreshdatatyperesponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# RefreshDataTypeResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `pullOperation` | [shared.PullOperation](../../../sdk/models/shared/pulloperation.md) | :heavy_minus_sign: | OK | {
"id": "97d60846-f07a-4d42-b5a0-0bdcc6ebf56b",
"companyId": "4645bd78-8988-45bc-ac9e-67ba5df6e4e5",
"connectionId": "51baa045-4836-4317-a42e-3542e991e581",
"dataType": "invoices",
"status": "Initial",
"statusDescription": "Paused until 2022-10-23T00:00:00.000Z",
"requested": "2022-11-14T11:18:37.2798351Z",
"progress": 10,
"isCompleted": false,
"isErrored": false
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/removecompanyfromgroupresponse.md b/platform/docs/sdk/models/operations/removecompanyfromgroupresponse.md
deleted file mode 100644
index 64249df9b..000000000
--- a/platform/docs/sdk/models/operations/removecompanyfromgroupresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# RemoveCompanyFromGroupResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/setconnectionmanagementcorssettingsresponse.md b/platform/docs/sdk/models/operations/setconnectionmanagementcorssettingsresponse.md
deleted file mode 100644
index 82e5995e5..000000000
--- a/platform/docs/sdk/models/operations/setconnectionmanagementcorssettingsresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# SetConnectionManagementCorsSettingsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
-| `connectionManagementAllowedOrigins` | [shared.ConnectionManagementAllowedOrigins](../../../sdk/models/shared/connectionmanagementallowedorigins.md) | :heavy_minus_sign: | Success | {
"allowedOrigins": [
"https://www.bank-of-dave.com"
]
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/unlinkconnectionrequest.md b/platform/docs/sdk/models/operations/unlinkconnectionrequest.md
index b94422cbb..c221f341f 100644
--- a/platform/docs/sdk/models/operations/unlinkconnectionrequest.md
+++ b/platform/docs/sdk/models/operations/unlinkconnectionrequest.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
-| `updateConnectionStatus` | [shared.UpdateConnectionStatus](../../../sdk/models/shared/updateconnectionstatus.md) | :heavy_minus_sign: | N/A | |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `connectionId` | *string* | :heavy_check_mark: | Unique identifier for a connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
\ No newline at end of file
+| `connectionId` | *string* | :heavy_check_mark: | Unique identifier for a connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
+| `updateConnectionStatus` | [shared.UpdateConnectionStatus](../../../sdk/models/shared/updateconnectionstatus.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/unlinkconnectionresponse.md b/platform/docs/sdk/models/operations/unlinkconnectionresponse.md
deleted file mode 100644
index 523474bd3..000000000
--- a/platform/docs/sdk/models/operations/unlinkconnectionresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# UnlinkConnectionResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `connection` | [shared.Connection](../../../sdk/models/shared/connection.md) | :heavy_minus_sign: | OK | {
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/updatecompanyrequest.md b/platform/docs/sdk/models/operations/updatecompanyrequest.md
index 50f541a35..9e6390c3f 100644
--- a/platform/docs/sdk/models/operations/updatecompanyrequest.md
+++ b/platform/docs/sdk/models/operations/updatecompanyrequest.md
@@ -5,5 +5,5 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
-| `companyRequestBody` | [shared.CompanyRequestBody](../../../sdk/models/shared/companyrequestbody.md) | :heavy_minus_sign: | N/A | |
-| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
\ No newline at end of file
+| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `companyRequestBody` | [shared.CompanyRequestBody](../../../sdk/models/shared/companyrequestbody.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/updatecompanyresponse.md b/platform/docs/sdk/models/operations/updatecompanyresponse.md
deleted file mode 100644
index 0b613446c..000000000
--- a/platform/docs/sdk/models/operations/updatecompanyresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# UpdateCompanyResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `company` | [shared.Company](../../../sdk/models/shared/company.md) | :heavy_minus_sign: | OK | {
"id": "0498e921-9b53-4396-a412-4f2f5983b0a2",
"name": "string",
"platform": "string",
"redirect": "https://link.codat.io/company/27628208-459c-46a2-a705-5641ce25f739",
"lastSync": "2022-01-01T12:00:00.000Z",
"created": "2022-01-01T12:00:00.000Z",
"createdByUserName": "string",
"dataConnections": [
{
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
}
],
"groups": [
{
"id": "d7a6c4b4-dc87-45f6-b803-62f466398680"
}
]
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/updateconnectionauthorizationrequest.md b/platform/docs/sdk/models/operations/updateconnectionauthorizationrequest.md
index 2eef3645f..5860ae209 100644
--- a/platform/docs/sdk/models/operations/updateconnectionauthorizationrequest.md
+++ b/platform/docs/sdk/models/operations/updateconnectionauthorizationrequest.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ |
-| `requestBody` | Record | :heavy_minus_sign: | N/A | |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier for a company. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `connectionId` | *string* | :heavy_check_mark: | Unique identifier for a connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
\ No newline at end of file
+| `connectionId` | *string* | :heavy_check_mark: | Unique identifier for a connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
+| `requestBody` | Record | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/updateconnectionauthorizationresponse.md b/platform/docs/sdk/models/operations/updateconnectionauthorizationresponse.md
deleted file mode 100644
index 7de4bd034..000000000
--- a/platform/docs/sdk/models/operations/updateconnectionauthorizationresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# UpdateConnectionAuthorizationResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `connection` | [shared.Connection](../../../sdk/models/shared/connection.md) | :heavy_minus_sign: | OK | {
"id": "ee2eb431-c0fa-4dc9-93fa-d29781c12bcd",
"integrationId": "bf083d72-62c7-493e-aec9-81b4dbba7e2c",
"integrationKey": "dfxm",
"sourceId": "bdd831ce-eebd-4896-89a7-20e5ee8989ee",
"platformName": "Basiq",
"linkUrl": "https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start",
"status": "Linked",
"lastSync": "2022-10-27T10:22:43.6464237Z",
"created": "2022-10-27T09:53:29Z",
"sourceType": "Banking"
} |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/updateprofileresponse.md b/platform/docs/sdk/models/operations/updateprofileresponse.md
deleted file mode 100644
index dea0cb002..000000000
--- a/platform/docs/sdk/models/operations/updateprofileresponse.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# UpdateProfileResponse
-
-
-## Fields
-
-| Field | Type | Required | Description | Example |
-| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation | |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. | |
-| `profile` | [shared.Profile](../../../sdk/models/shared/profile.md) | :heavy_minus_sign: | OK | {
"name": "Bob's Burgers",
"logoUrl": "https://client-images.codat.io/logo/042399f5-d104-4f38-9ce8-cac3524f4e88_5806cb1f-7342-4c0e-a0a8-99bfbc47b0ff.png",
"iconUrl": "https://client-images.codat.io/icon/042399f5-d104-4f38-9ce8-cac3524f4e88_3f5623af-d992-4c22-bc08-e58c520a8526.ico",
"redirectUrl": "https://bobs-burgers.{countrySuffix}/{companyId}",
"whiteListUrls": [
"https://bobs-burgers.com",
"https://bobs-burgers.co.uk"
],
"confirmCompanyName": true
} |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation | |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/updateprofilesyncsettingsrequestbody.md b/platform/docs/sdk/models/operations/updateprofilesyncsettingsrequestbody.md
index 1164498ef..c203e1f76 100644
--- a/platform/docs/sdk/models/operations/updateprofilesyncsettingsrequestbody.md
+++ b/platform/docs/sdk/models/operations/updateprofilesyncsettingsrequestbody.md
@@ -9,5 +9,5 @@ Include a `syncSetting` object for each data type.
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `clientId` | *string* | :heavy_check_mark: | Unique identifier for your client in Codat. |
-| `overridesDefaults` | *boolean* | :heavy_check_mark: | Set to `True` if you want to override default [sync settings](https://docs.codat.io/knowledge-base/advanced-sync-settings). |
-| `settings` | [shared.SyncSetting](../../../sdk/models/shared/syncsetting.md)[] | :heavy_check_mark: | N/A |
\ No newline at end of file
+| `settings` | [shared.SyncSetting](../../../sdk/models/shared/syncsetting.md)[] | :heavy_check_mark: | N/A |
+| `overridesDefaults` | *boolean* | :heavy_minus_sign: | Set to `True` if you want to override default [sync settings](https://docs.codat.io/knowledge-base/advanced-sync-settings). |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/operations/updateprofilesyncsettingsresponse.md b/platform/docs/sdk/models/operations/updateprofilesyncsettingsresponse.md
deleted file mode 100644
index 20ffd4732..000000000
--- a/platform/docs/sdk/models/operations/updateprofilesyncsettingsresponse.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# UpdateProfileSyncSettingsResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `errorMessage` | [shared.ErrorMessage](../../../sdk/models/shared/errormessage.md) | :heavy_minus_sign: | Your API request was not properly authorized. |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/apikeydetails.md b/platform/docs/sdk/models/shared/apikeydetails.md
index e5e6f2f5a..c96da8752 100644
--- a/platform/docs/sdk/models/shared/apikeydetails.md
+++ b/platform/docs/sdk/models/shared/apikeydetails.md
@@ -7,7 +7,7 @@ Details of the API key.
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `apiKey` | *string* | :heavy_minus_sign: | The API key value used to make authenticated http requests. | ztHQGvnC4XN2CgUhaDWEG4ySLUJqWjp7zkbZkGHd |
-| `createdDate` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
| `id` | *string* | :heavy_minus_sign: | Unique identifier for the API key. | e288a972-b402-4b21-93f9-b5335ae5679c |
-| `name` | *string* | :heavy_minus_sign: | A meaningful name assigned to the API key. | azure-invoice-finance-processor |
\ No newline at end of file
+| `name` | *string* | :heavy_minus_sign: | A meaningful name assigned to the API key. | azure-invoice-finance-processor |
+| `apiKey` | *string* | :heavy_minus_sign: | The API key value used to make authenticated http requests. | ztHQGvnC4XN2CgUhaDWEG4ySLUJqWjp7zkbZkGHd |
+| `createdDate` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/branding.md b/platform/docs/sdk/models/shared/branding.md
index 1f55d501a..f7f74006e 100644
--- a/platform/docs/sdk/models/shared/branding.md
+++ b/platform/docs/sdk/models/shared/branding.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `button` | [shared.BrandingButton](../../../sdk/models/shared/brandingbutton.md) | :heavy_minus_sign: | Button branding references. | |
| `logo` | [shared.BrandingLogo](../../../sdk/models/shared/brandinglogo.md) | :heavy_minus_sign: | Logo branding references. | |
+| `button` | [shared.BrandingButton](../../../sdk/models/shared/brandingbutton.md) | :heavy_minus_sign: | Button branding references. | |
| `sourceId` | *string* | :heavy_minus_sign: | A source-specific ID used to distinguish between different sources originating from the same data connection. In general, a data connection is a single data source. However, for TrueLayer, `sourceId` is associated with a specific bank and has a many-to-one relationship with the `integrationId`. | 35b92968-9851-4095-ad60-395c95cbcba4 |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/clientratelimitreachedwebhook.md b/platform/docs/sdk/models/shared/clientratelimitreachedwebhook.md
index eedcc125b..e580f3c45 100644
--- a/platform/docs/sdk/models/shared/clientratelimitreachedwebhook.md
+++ b/platform/docs/sdk/models/shared/clientratelimitreachedwebhook.md
@@ -7,10 +7,10 @@ Webhook request body for a client that has reached their rate limit.
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. |
-| `data` | [shared.ClientRateLimitReachedWebhookData](../../../sdk/models/shared/clientratelimitreachedwebhookdata.md) | :heavy_minus_sign: | N/A |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. |
+| `data` | [shared.ClientRateLimitReachedWebhookData](../../../sdk/models/shared/clientratelimitreachedwebhookdata.md) | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/clientratelimitresetwebhook.md b/platform/docs/sdk/models/shared/clientratelimitresetwebhook.md
index de09ef001..70d6224f2 100644
--- a/platform/docs/sdk/models/shared/clientratelimitresetwebhook.md
+++ b/platform/docs/sdk/models/shared/clientratelimitresetwebhook.md
@@ -7,10 +7,10 @@ Webhook request body for a client that has had their rate limit reset.
| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. |
-| `data` | [shared.ClientRateLimitResetWebhookData](../../../sdk/models/shared/clientratelimitresetwebhookdata.md) | :heavy_minus_sign: | N/A |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. |
+| `data` | [shared.ClientRateLimitResetWebhookData](../../../sdk/models/shared/clientratelimitresetwebhookdata.md) | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/clientratelimitresetwebhookdata.md b/platform/docs/sdk/models/shared/clientratelimitresetwebhookdata.md
index 4f765a03b..909ad5bf8 100644
--- a/platform/docs/sdk/models/shared/clientratelimitresetwebhookdata.md
+++ b/platform/docs/sdk/models/shared/clientratelimitresetwebhookdata.md
@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `dailyQuota` | *number* | :heavy_minus_sign: | The number of available requests per day. | |
-| `expiresUtc` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
| `quotaRemaining` | *number* | :heavy_minus_sign: | Total number of requests remaining for your client. | |
-| `resetReason` | *string* | :heavy_minus_sign: | The reason for your rate limit quota being reset. | |
\ No newline at end of file
+| `resetReason` | *string* | :heavy_minus_sign: | The reason for your rate limit quota being reset. | |
+| `dailyQuota` | *number* | :heavy_minus_sign: | The number of available requests per day. | |
+| `expiresUtc` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/companies.md b/platform/docs/sdk/models/shared/companies.md
index 1a3d55196..40adb0609 100644
--- a/platform/docs/sdk/models/shared/companies.md
+++ b/platform/docs/sdk/models/shared/companies.md
@@ -5,8 +5,8 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
-| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
+| `results` | [shared.Company](../../../sdk/models/shared/company.md)[] | :heavy_minus_sign: | N/A | |
| `pageNumber` | *number* | :heavy_check_mark: | Current page number. | |
| `pageSize` | *number* | :heavy_check_mark: | Number of items to return in results array. | |
-| `results` | [shared.Company](../../../sdk/models/shared/company.md)[] | :heavy_minus_sign: | N/A | |
-| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
\ No newline at end of file
+| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
+| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/company.md b/platform/docs/sdk/models/shared/company.md
index 3cd9a0b14..874b50128 100644
--- a/platform/docs/sdk/models/shared/company.md
+++ b/platform/docs/sdk/models/shared/company.md
@@ -11,13 +11,13 @@ When you create a company, you can specify a `name` and we will automatically ge
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `created` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
-| `createdByUserName` | *string* | :heavy_minus_sign: | Name of user that created the company in Codat. | |
-| `dataConnections` | [shared.Connection](../../../sdk/models/shared/connection.md)[] | :heavy_minus_sign: | N/A | |
-| `description` | *string* | :heavy_minus_sign: | Additional information about the company. This can be used to store foreign IDs, references, etc. | Requested early access to the new financing scheme. |
-| `groups` | [shared.GroupRef](../../../sdk/models/shared/groupref.md)[] | :heavy_minus_sign: | An array of groups the company has been assigned to. | |
| `id` | *string* | :heavy_check_mark: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `lastSync` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
| `name` | *string* | :heavy_check_mark: | The name of the company | Codat Ltd. |
+| `description` | *string* | :heavy_minus_sign: | Additional information about the company. This can be used to store foreign IDs, references, etc. | Requested early access to the new financing scheme. |
| ~~`platform`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
`platformKeys` name used when creating the company. | Xero |
-| `redirect` | *string* | :heavy_check_mark: | The `redirect` [Link URL](https://docs.codat.io/auth-flow/authorize-hosted-link) enabling the customer to start their auth flow journey for the company. | https://link.codat.io/company/27628208-459c-46a2-a705-5641ce25f739 |
\ No newline at end of file
+| `redirect` | *string* | :heavy_check_mark: | The `redirect` [Link URL](https://docs.codat.io/auth-flow/authorize-hosted-link) enabling the customer to start their auth flow journey for the company. | https://link.codat.io/company/27628208-459c-46a2-a705-5641ce25f739 |
+| `lastSync` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
+| `created` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
+| `createdByUserName` | *string* | :heavy_minus_sign: | Name of user that created the company in Codat. | |
+| `dataConnections` | [shared.Connection](../../../sdk/models/shared/connection.md)[] | :heavy_minus_sign: | N/A | |
+| `groups` | [shared.GroupRef](../../../sdk/models/shared/groupref.md)[] | :heavy_minus_sign: | An array of groups the company has been assigned to. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/companyrequestbody.md b/platform/docs/sdk/models/shared/companyrequestbody.md
index ac23c177b..48a36b155 100644
--- a/platform/docs/sdk/models/shared/companyrequestbody.md
+++ b/platform/docs/sdk/models/shared/companyrequestbody.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
+| `name` | *string* | :heavy_check_mark: | Name of company being connected. | Bank of Dave |
| `description` | *string* | :heavy_minus_sign: | Additional information about the company. This can be used to store foreign IDs, references, etc. | Requested early access to the new financing scheme. |
-| `groups` | [shared.GroupRef](../../../sdk/models/shared/groupref.md)[] | :heavy_minus_sign: | Reference to the groups that the company is assigned to. | |
-| `name` | *string* | :heavy_check_mark: | Name of company being connected. | Bank of Dave |
\ No newline at end of file
+| `groups` | [shared.GroupRef](../../../sdk/models/shared/groupref.md)[] | :heavy_minus_sign: | Reference to the groups that the company is assigned to. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/connection.md b/platform/docs/sdk/models/shared/connection.md
index b72841ad1..3094f8f4b 100644
--- a/platform/docs/sdk/models/shared/connection.md
+++ b/platform/docs/sdk/models/shared/connection.md
@@ -16,16 +16,16 @@ Before you can use a data connection to pull or push data, the company must gran
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `additionalProperties` | *any* | :heavy_minus_sign: | N/A | |
-| `connectionInfo` | Record | :heavy_minus_sign: | N/A | |
-| `created` | *string* | :heavy_check_mark: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
-| `dataConnectionErrors` | [shared.DataConnectionError](../../../sdk/models/shared/dataconnectionerror.md)[] | :heavy_minus_sign: | N/A | |
| `id` | *string* | :heavy_check_mark: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
| `integrationId` | *string* | :heavy_check_mark: | A Codat ID representing the integration. | fd321cb6-7963-4506-b873-e99593a45e30 |
| `integrationKey` | *string* | :heavy_check_mark: | A unique four-character ID that identifies the platform of the company's data connection. This ensures continuity if the platform changes its name in the future. | |
-| `lastSync` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
-| `linkUrl` | *string* | :heavy_check_mark: | The link URL your customers can use to authorize access to their business application. | https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/2e2eb431-c1fa-4dc9-93fa-d29781c12bcd/start |
-| `platformName` | *string* | :heavy_check_mark: | Name of integration connected to company. | |
| `sourceId` | *string* | :heavy_check_mark: | A source-specific ID used to distinguish between different sources originating from the same data connection. In general, a data connection is a single data source. However, for TrueLayer, `sourceId` is associated with a specific bank and has a many-to-one relationship with the `integrationId`. | 35b92968-9851-4095-ad60-395c95cbcba4 |
| `sourceType` | [shared.SourceType](../../../sdk/models/shared/sourcetype.md) | :heavy_check_mark: | The type of platform of the connection. | Accounting |
-| `status` | [shared.DataConnectionStatus](../../../sdk/models/shared/dataconnectionstatus.md) | :heavy_check_mark: | The current authorization status of the data connection. | |
\ No newline at end of file
+| `platformName` | *string* | :heavy_check_mark: | Name of integration connected to company. | |
+| `linkUrl` | *string* | :heavy_check_mark: | The link URL your customers can use to authorize access to their business application. | https://link-api.codat.io/companies/86bd88cb-44ab-4dfb-b32f-87b19b14287f/connections/2e2eb431-c1fa-4dc9-93fa-d29781c12bcd/start |
+| `status` | [shared.DataConnectionStatus](../../../sdk/models/shared/dataconnectionstatus.md) | :heavy_check_mark: | The current authorization status of the data connection. | |
+| `lastSync` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
+| `created` | *string* | :heavy_check_mark: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
+| `dataConnectionErrors` | [shared.DataConnectionError](../../../sdk/models/shared/dataconnectionerror.md)[] | :heavy_minus_sign: | N/A | |
+| `connectionInfo` | Record | :heavy_minus_sign: | N/A | |
+| `additionalProperties` | *any* | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/connections.md b/platform/docs/sdk/models/shared/connections.md
index 44f1c1957..2e78b5f60 100644
--- a/platform/docs/sdk/models/shared/connections.md
+++ b/platform/docs/sdk/models/shared/connections.md
@@ -5,8 +5,8 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
-| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
+| `results` | [shared.Connection](../../../sdk/models/shared/connection.md)[] | :heavy_minus_sign: | N/A | |
| `pageNumber` | *number* | :heavy_check_mark: | Current page number. | |
| `pageSize` | *number* | :heavy_check_mark: | Number of items to return in results array. | |
-| `results` | [shared.Connection](../../../sdk/models/shared/connection.md)[] | :heavy_minus_sign: | N/A | |
-| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
\ No newline at end of file
+| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
+| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/connectionstatuschangedwebhook.md b/platform/docs/sdk/models/shared/connectionstatuschangedwebhook.md
index 5407bd69c..97d995d28 100644
--- a/platform/docs/sdk/models/shared/connectionstatuschangedwebhook.md
+++ b/platform/docs/sdk/models/shared/connectionstatuschangedwebhook.md
@@ -7,12 +7,12 @@ Webhook request body for a company's data connection status changed.
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. | |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `data` | [shared.ConnectionStatusChangedWebhookData](../../../sdk/models/shared/connectionstatuschangedwebhookdata.md) | :heavy_minus_sign: | N/A | |
| `dataConnectionId` | *string* | :heavy_minus_sign: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. | |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
+| `data` | [shared.ConnectionStatusChangedWebhookData](../../../sdk/models/shared/connectionstatuschangedwebhookdata.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/createrule.md b/platform/docs/sdk/models/shared/createrule.md
index e4ca13692..8ee82eb23 100644
--- a/platform/docs/sdk/models/shared/createrule.md
+++ b/platform/docs/sdk/models/shared/createrule.md
@@ -7,6 +7,6 @@ Create a message that notifies a URL of an event based on its given type or cond
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- |
+| `type` | *string* | :heavy_check_mark: | The type of webhook. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `notifiers` | [shared.WebhookNotifier](../../../sdk/models/shared/webhooknotifier.md) | :heavy_check_mark: | N/A | |
-| `type` | *string* | :heavy_check_mark: | The type of webhook. | |
\ No newline at end of file
+| `notifiers` | [shared.WebhookNotifier](../../../sdk/models/shared/webhooknotifier.md) | :heavy_check_mark: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/customdatatypeconfiguration.md b/platform/docs/sdk/models/shared/customdatatypeconfiguration.md
index 3132c2819..70fbf6e4f 100644
--- a/platform/docs/sdk/models/shared/customdatatypeconfiguration.md
+++ b/platform/docs/sdk/models/shared/customdatatypeconfiguration.md
@@ -8,6 +8,6 @@ Client's configuration details for a specific custom data type and platform pair
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `dataSource` | *string* | :heavy_minus_sign: | Underlying endpoint of the source platform that will serve as a data source for the custom data type. This value is not validated by Codat. |
-| `keyBy` | *string*[] | :heavy_minus_sign: | An array of properties from the source system that can be used to uniquely identify the records returned for the custom data type. This value is not validated by Codat. |
| `requiredData` | Record | :heavy_minus_sign: | Properties required to be fetched from the underlying platform for the custom data type that is being configured. This value is not validated by Codat. |
+| `keyBy` | *string*[] | :heavy_minus_sign: | An array of properties from the source system that can be used to uniquely identify the records returned for the custom data type. This value is not validated by Codat. |
| `sourceModifiedDate` | *string*[] | :heavy_minus_sign: | Property in the source platform nominated by the client that defines the date when a record was last modified there. This value is not validated by Codat. |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/customdatatyperecord.md b/platform/docs/sdk/models/shared/customdatatyperecord.md
index f591ddbad..ed1ee5f7e 100644
--- a/platform/docs/sdk/models/shared/customdatatyperecord.md
+++ b/platform/docs/sdk/models/shared/customdatatyperecord.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
-| `content` | Record | :heavy_minus_sign: | Values from the source system for the properties defined in the custom data type configuration. |
| `id` | *string* | :heavy_minus_sign: | Unique identifier of the record. |
+| `content` | Record | :heavy_minus_sign: | Values from the source system for the properties defined in the custom data type configuration. |
| `modifiedDate` | [shared.ModifiedDate](../../../sdk/models/shared/modifieddate.md) | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/customdatatyperecords.md b/platform/docs/sdk/models/shared/customdatatyperecords.md
index 66def893a..7a272e9cb 100644
--- a/platform/docs/sdk/models/shared/customdatatyperecords.md
+++ b/platform/docs/sdk/models/shared/customdatatyperecords.md
@@ -7,7 +7,7 @@ Resulting records pulled from the source platform for a specific custom data typ
| Field | Type | Required | Description |
| ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
+| `results` | [shared.CustomDataTypeRecord](../../../sdk/models/shared/customdatatyperecord.md)[] | :heavy_minus_sign: | N/A |
| `pageNumber` | *number* | :heavy_minus_sign: | Current page number. |
| `pageSize` | *number* | :heavy_minus_sign: | Number of items to return in results array. |
-| `results` | [shared.CustomDataTypeRecord](../../../sdk/models/shared/customdatatyperecord.md)[] | :heavy_minus_sign: | N/A |
| `totalResults` | *number* | :heavy_minus_sign: | Total number of items. |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/dataconnectionerror.md b/platform/docs/sdk/models/shared/dataconnectionerror.md
index 729a5d52b..265093f1d 100644
--- a/platform/docs/sdk/models/shared/dataconnectionerror.md
+++ b/platform/docs/sdk/models/shared/dataconnectionerror.md
@@ -5,7 +5,9 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `errorMessage` | *string* | :heavy_minus_sign: | A brief message about the error. | |
+| `statusCode` | *string* | :heavy_minus_sign: | The HTTP status code returned by the source platform when the error occurred. | |
+| `statusText` | *string* | :heavy_minus_sign: | A non-numeric status code/text returned by the source platform when the error occurred. | |
+| `errorMessage` | *string* | :heavy_minus_sign: | A message about a error returned by Codat. | |
| `erroredOnUtc` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
-| `statusCode` | *string* | :heavy_minus_sign: | The HTTP status code returned by the error. | |
-| `statusText` | *string* | :heavy_minus_sign: | A non-numeric status code/text. | |
\ No newline at end of file
+| `status` | [shared.ErrorStatus](../../../sdk/models/shared/errorstatus.md) | :heavy_minus_sign: | The current status of a transient error. Null statuses indicate that the error is not transient. | |
+| `resolvedOnUtc` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datasetdatachangedwebhook.md b/platform/docs/sdk/models/shared/datasetdatachangedwebhook.md
index 939782b2b..69edb6364 100644
--- a/platform/docs/sdk/models/shared/datasetdatachangedwebhook.md
+++ b/platform/docs/sdk/models/shared/datasetdatachangedwebhook.md
@@ -7,12 +7,12 @@ Webhook request body to notify that a data synchronization has completed.
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. | |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `data` | [shared.DatasetDataChangedWebhookData](../../../sdk/models/shared/datasetdatachangedwebhookdata.md) | :heavy_minus_sign: | N/A | |
| `dataConnectionId` | *string* | :heavy_minus_sign: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. | |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
+| `data` | [shared.DatasetDataChangedWebhookData](../../../sdk/models/shared/datasetdatachangedwebhookdata.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datasetdatachangedwebhookdata.md b/platform/docs/sdk/models/shared/datasetdatachangedwebhookdata.md
index 4437c6943..88f821378 100644
--- a/platform/docs/sdk/models/shared/datasetdatachangedwebhookdata.md
+++ b/platform/docs/sdk/models/shared/datasetdatachangedwebhookdata.md
@@ -3,7 +3,7 @@
## Fields
-| Field | Type | Required | Description | Example |
-| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
-| `datasetId` | *string* | :heavy_minus_sign: | Unique identifier for the dataset that completed its sync. | |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
+| `datasetId` | *string* | :heavy_minus_sign: | Unique identifier for the dataset that completed its sync. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhook.md b/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhook.md
index 71bb55e49..38f3de8d2 100644
--- a/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhook.md
+++ b/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhook.md
@@ -7,12 +7,12 @@ Webhook request body to notify that a data synchronization has completed.
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. | |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `data` | [shared.DatasetStatusChangedErrorWebhookData](../../../sdk/models/shared/datasetstatuschangederrorwebhookdata.md) | :heavy_minus_sign: | N/A | |
| `dataConnectionId` | *string* | :heavy_minus_sign: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. | |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
+| `data` | [shared.DatasetStatusChangedErrorWebhookData](../../../sdk/models/shared/datasetstatuschangederrorwebhookdata.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhookdata.md b/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhookdata.md
index e3aa2c269..1c0659ce9 100644
--- a/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhookdata.md
+++ b/platform/docs/sdk/models/shared/datasetstatuschangederrorwebhookdata.md
@@ -3,8 +3,8 @@
## Fields
-| Field | Type | Required | Description | Example |
-| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
-| `datasetId` | *string* | :heavy_minus_sign: | Unique identifier for the dataset that completed its sync. | |
-| `datasetStatus` | *string* | :heavy_minus_sign: | The current status of the dataset's sync. | |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
+| `datasetStatus` | *string* | :heavy_minus_sign: | The current status of the dataset's sync. | |
+| `datasetId` | *string* | :heavy_minus_sign: | Unique identifier for the dataset that completed its sync. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datastatus.md b/platform/docs/sdk/models/shared/datastatus.md
index d592ee7f0..0a78a1e4f 100644
--- a/platform/docs/sdk/models/shared/datastatus.md
+++ b/platform/docs/sdk/models/shared/datastatus.md
@@ -7,8 +7,8 @@ Describes the state of data in the Codat cache for a company and data type
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `currentStatus` | [shared.Status](../../../sdk/models/shared/status.md) | :heavy_check_mark: | The current status of the dataset. | |
| `dataType` | [shared.DataTypes](../../../sdk/models/shared/datatypes.md) | :heavy_check_mark: | Available data types | invoices |
| `lastSuccessfulSync` | *string* | :heavy_check_mark: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
-| `latestSuccessfulSyncId` | *string* | :heavy_minus_sign: | Unique identifier for the most recent successful sync of data type. | 8220fc90-55b6-47bc-9417-48ac6ea93101 |
-| `latestSyncId` | *string* | :heavy_minus_sign: | Unique identifier for most recent sync of data type. | ad474a37-2003-478e-baee-9af9f1ec2fe3 |
\ No newline at end of file
+| `currentStatus` | [shared.Status](../../../sdk/models/shared/status.md) | :heavy_check_mark: | The current status of the dataset. | |
+| `latestSyncId` | *string* | :heavy_minus_sign: | Unique identifier for most recent sync of data type. | ad474a37-2003-478e-baee-9af9f1ec2fe3 |
+| `latestSuccessfulSyncId` | *string* | :heavy_minus_sign: | Unique identifier for the most recent successful sync of data type. | 8220fc90-55b6-47bc-9417-48ac6ea93101 |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datastatuses.md b/platform/docs/sdk/models/shared/datastatuses.md
index a78babefa..7311d83d0 100644
--- a/platform/docs/sdk/models/shared/datastatuses.md
+++ b/platform/docs/sdk/models/shared/datastatuses.md
@@ -9,26 +9,11 @@
| `balanceSheet` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `bankAccounts` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `bankTransactions` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `bankingAccountBalances` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `bankingAccounts` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `bankingTransactionCategories` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `bankingTransactions` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `billCreditNotes` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `billPayments` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `bills` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `cashFlowStatement` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `chartOfAccounts` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceCompanyInfo` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceCustomers` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceDisputes` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceLocations` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceOrders` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commercePaymentMethods` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commercePayments` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceProductCategories` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceProducts` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceTaxComponents` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `commerceTransactions` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `company` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `creditNotes` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `customers` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
@@ -47,4 +32,19 @@
| `suppliers` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `taxRates` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
| `trackingCategories` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
-| `transfers` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
\ No newline at end of file
+| `transfers` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `bankingAccountBalances` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `bankingAccounts` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `bankingTransactionCategories` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `bankingTransactions` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceCompanyInfo` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceCustomers` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceDisputes` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceLocations` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceOrders` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commercePaymentMethods` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commercePayments` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceProductCategories` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceProducts` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceTaxComponents` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
+| `commerceTransactions` | [shared.DataStatus](../../../sdk/models/shared/datastatus.md) | :heavy_minus_sign: | Describes the state of data in the Codat cache for a company and data type | {
"dataType": "string",
"lastSuccessfulSync": "2022-01-01T13:00:00.000Z",
"currentStatus": "string",
"latestSyncId": "ad474a37-2003-478e-baee-9af9f1ec2fe3",
"latestSuccessfulSyncId": "8220fc90-55b6-47bc-9417-48ac6ea93101"
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datasynccompletedwebhook.md b/platform/docs/sdk/models/shared/datasynccompletedwebhook.md
index 4b0f31018..bd94e5e46 100644
--- a/platform/docs/sdk/models/shared/datasynccompletedwebhook.md
+++ b/platform/docs/sdk/models/shared/datasynccompletedwebhook.md
@@ -7,12 +7,12 @@ Webhook request body to notify the completion of a data sync.
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. | |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `data` | [shared.DataSyncCompletedWebhookData](../../../sdk/models/shared/datasynccompletedwebhookdata.md) | :heavy_minus_sign: | N/A | |
| `dataConnectionId` | *string* | :heavy_minus_sign: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. | |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
+| `data` | [shared.DataSyncCompletedWebhookData](../../../sdk/models/shared/datasynccompletedwebhookdata.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datasynccompletedwebhookdata.md b/platform/docs/sdk/models/shared/datasynccompletedwebhookdata.md
index e14127953..ac53946e0 100644
--- a/platform/docs/sdk/models/shared/datasynccompletedwebhookdata.md
+++ b/platform/docs/sdk/models/shared/datasynccompletedwebhookdata.md
@@ -3,7 +3,7 @@
## Fields
-| Field | Type | Required | Description | Example |
-| ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
-| `datasetId` | *string* | :heavy_minus_sign: | Unique identifier for the dataset that completed its sync. | |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
+| `datasetId` | *string* | :heavy_minus_sign: | Unique identifier for the dataset that completed its sync. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/datatypefeature.md b/platform/docs/sdk/models/shared/datatypefeature.md
index 9bc189440..d88d151b2 100644
--- a/platform/docs/sdk/models/shared/datatypefeature.md
+++ b/platform/docs/sdk/models/shared/datatypefeature.md
@@ -7,5 +7,5 @@ Describes support for a given datatype and associated operations
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
| `supportedFeatures` | [shared.SupportedFeature](../../../sdk/models/shared/supportedfeature.md)[] | :heavy_check_mark: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/errorstatus.md b/platform/docs/sdk/models/shared/errorstatus.md
new file mode 100644
index 000000000..9dc662553
--- /dev/null
+++ b/platform/docs/sdk/models/shared/errorstatus.md
@@ -0,0 +1,11 @@
+# ErrorStatus
+
+The current status of a transient error. Null statuses indicate that the error is not transient.
+
+
+## Values
+
+| Name | Value |
+| ---------- | ---------- |
+| `Active` | Active |
+| `Resolved` | Resolved |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/imagereference.md b/platform/docs/sdk/models/shared/imagereference.md
index 429286faf..1213ab843 100644
--- a/platform/docs/sdk/models/shared/imagereference.md
+++ b/platform/docs/sdk/models/shared/imagereference.md
@@ -7,5 +7,5 @@ Image reference.
| Field | Type | Required | Description |
| --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- |
-| `alt` | *string* | :heavy_minus_sign: | Alternative text when image is not available. |
-| `src` | *string* | :heavy_minus_sign: | Source URL for image. |
\ No newline at end of file
+| `src` | *string* | :heavy_minus_sign: | Source URL for image. |
+| `alt` | *string* | :heavy_minus_sign: | Alternative text when image is not available. |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/integration.md b/platform/docs/sdk/models/shared/integration.md
index 29ed7b6f7..94c4c6c5b 100644
--- a/platform/docs/sdk/models/shared/integration.md
+++ b/platform/docs/sdk/models/shared/integration.md
@@ -7,14 +7,14 @@ An integration that Codat supports
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `dataProvidedBy` | *string* | :heavy_minus_sign: | The name of the data provider. | |
-| `datatypeFeatures` | [shared.DataTypeFeature](../../../sdk/models/shared/datatypefeature.md)[] | :heavy_minus_sign: | N/A | |
-| `enabled` | *boolean* | :heavy_check_mark: | Whether this integration is enabled for your customers to use. | |
-| `integrationId` | *string* | :heavy_minus_sign: | A Codat ID representing the integration. | fd321cb6-7963-4506-b873-e99593a45e30 |
-| `isBeta` | *boolean* | :heavy_minus_sign: | `True` if the integration is currently in beta release. | |
-| `isOfflineConnector` | *boolean* | :heavy_minus_sign: | `True` if the integration is to an application installed and run locally on an SMBs computer. | |
| `key` | *string* | :heavy_check_mark: | A unique 4-letter key to represent a platform in each integration. View [accounting](https://docs.codat.io/integrations/accounting/overview#platform-keys), [banking](https://docs.codat.io/integrations/banking/overview#platform-keys), and [commerce](https://docs.codat.io/integrations/commerce/overview#platform-keys) platform keys. | gbol |
| `logoUrl` | *string* | :heavy_check_mark: | Static url for integration's logo. | |
| `name` | *string* | :heavy_check_mark: | Name of integration. | Xero |
+| `enabled` | *boolean* | :heavy_check_mark: | Whether this integration is enabled for your customers to use. | |
| `sourceId` | *string* | :heavy_minus_sign: | A source-specific ID used to distinguish between different sources originating from the same data connection. In general, a data connection is a single data source. However, for TrueLayer, `sourceId` is associated with a specific bank and has a many-to-one relationship with the `integrationId`. | 35b92968-9851-4095-ad60-395c95cbcba4 |
-| `sourceType` | [shared.SourceType](../../../sdk/models/shared/sourcetype.md) | :heavy_minus_sign: | The type of platform of the connection. | Accounting |
\ No newline at end of file
+| `sourceType` | [shared.SourceType](../../../sdk/models/shared/sourcetype.md) | :heavy_minus_sign: | The type of platform of the connection. | Accounting |
+| `integrationId` | *string* | :heavy_minus_sign: | A Codat ID representing the integration. | fd321cb6-7963-4506-b873-e99593a45e30 |
+| `isOfflineConnector` | *boolean* | :heavy_minus_sign: | `True` if the integration is to an application installed and run locally on an SMBs computer. | |
+| `isBeta` | *boolean* | :heavy_minus_sign: | `True` if the integration is currently in beta release. | |
+| `dataProvidedBy` | *string* | :heavy_minus_sign: | The name of the data provider. | |
+| `datatypeFeatures` | [shared.DataTypeFeature](../../../sdk/models/shared/datatypefeature.md)[] | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/integrations.md b/platform/docs/sdk/models/shared/integrations.md
index 6ade61234..105260c04 100644
--- a/platform/docs/sdk/models/shared/integrations.md
+++ b/platform/docs/sdk/models/shared/integrations.md
@@ -5,8 +5,8 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
-| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
+| `results` | [shared.Integration](../../../sdk/models/shared/integration.md)[] | :heavy_minus_sign: | N/A | |
| `pageNumber` | *number* | :heavy_check_mark: | Current page number. | |
| `pageSize` | *number* | :heavy_check_mark: | Number of items to return in results array. | |
-| `results` | [shared.Integration](../../../sdk/models/shared/integration.md)[] | :heavy_minus_sign: | N/A | |
-| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
\ No newline at end of file
+| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
+| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/links.md b/platform/docs/sdk/models/shared/links.md
index 37df2ee73..5f0c7cf35 100644
--- a/platform/docs/sdk/models/shared/links.md
+++ b/platform/docs/sdk/models/shared/links.md
@@ -5,7 +5,7 @@
| Field | Type | Required | Description |
| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- |
+| `self` | [shared.HalRef](../../../sdk/models/shared/halref.md) | :heavy_check_mark: | N/A |
| `current` | [shared.HalRef](../../../sdk/models/shared/halref.md) | :heavy_check_mark: | N/A |
| `next` | [shared.HalRef](../../../sdk/models/shared/halref.md) | :heavy_minus_sign: | N/A |
-| `previous` | [shared.HalRef](../../../sdk/models/shared/halref.md) | :heavy_minus_sign: | N/A |
-| `self` | [shared.HalRef](../../../sdk/models/shared/halref.md) | :heavy_check_mark: | N/A |
\ No newline at end of file
+| `previous` | [shared.HalRef](../../../sdk/models/shared/halref.md) | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/newcompanysynchronizedwebhook.md b/platform/docs/sdk/models/shared/newcompanysynchronizedwebhook.md
index 5a230e7ad..fba8fa4f9 100644
--- a/platform/docs/sdk/models/shared/newcompanysynchronizedwebhook.md
+++ b/platform/docs/sdk/models/shared/newcompanysynchronizedwebhook.md
@@ -7,12 +7,12 @@ Webhook request body to notify that a new company has successfully synchronized
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. | |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `data` | [shared.NewCompanySynchronizedWebhookData](../../../sdk/models/shared/newcompanysynchronizedwebhookdata.md) | :heavy_minus_sign: | N/A | |
| `dataConnectionId` | *string* | :heavy_minus_sign: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. | |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
+| `data` | [shared.NewCompanySynchronizedWebhookData](../../../sdk/models/shared/newcompanysynchronizedwebhookdata.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/profile.md b/platform/docs/sdk/models/shared/profile.md
index d96190c67..3945801e8 100644
--- a/platform/docs/sdk/models/shared/profile.md
+++ b/platform/docs/sdk/models/shared/profile.md
@@ -7,11 +7,11 @@ Describes your Codat client instance
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertAuthHeader` | *string* | :heavy_minus_sign: | Alert or webhooks authorization header. | Bearer tXEiHiRK7XCtI8TNHbpGs1LI1pumdb4Cl1QIo7B2 |
-| ~~`apiKey`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
The API key for this Codat instance. | sartANTjHAkLdbyDfaynoTQb7pkmj6hXHmnQKMrB |
-| ~~`confirmCompanyName`~~ | *boolean* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
`True` if the company name has been confirmed. | |
-| `iconUrl` | *string* | :heavy_minus_sign: | Static url to your organization's icon. | https://client-images.codat.io/icon/042399f5-d104-4f38-9ce8-cac3524f4e88_3f5623af-d992-4c22-bc08-e58c520a8526.ico |
-| `logoUrl` | *string* | :heavy_minus_sign: | Static url to your organization's logo. | https://client-images.codat.io/logo/042399f5-d104-4f38-9ce8-cac3524f4e88_5806cb1f-7342-4c0e-a0a8-99bfbc47b0ff.png |
| `name` | *string* | :heavy_check_mark: | The name given to the instance. | Bob's Burgers |
+| `logoUrl` | *string* | :heavy_minus_sign: | Static url to your organization's logo. | https://client-images.codat.io/logo/042399f5-d104-4f38-9ce8-cac3524f4e88_5806cb1f-7342-4c0e-a0a8-99bfbc47b0ff.png |
+| `iconUrl` | *string* | :heavy_minus_sign: | Static url to your organization's icon. | https://client-images.codat.io/icon/042399f5-d104-4f38-9ce8-cac3524f4e88_3f5623af-d992-4c22-bc08-e58c520a8526.ico |
| `redirectUrl` | *string* | :heavy_check_mark: | The redirect URL pasted on to the SMB once Codat's [Hosted Link](https://docs.codat.io/auth-flow/authorize-hosted-link) has been completed by the SMB. | https://bobs-burgers.{countrySuffix}/{companyId} |
-| `whiteListUrls` | *string*[] | :heavy_minus_sign: | A list of urls that are allowed to communicate with Codat. If empty any url is allowed to communicate with Codat. | |
\ No newline at end of file
+| `whiteListUrls` | *string*[] | :heavy_minus_sign: | A list of urls that are allowed to communicate with Codat. If empty any url is allowed to communicate with Codat. | |
+| ~~`apiKey`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
The API key for this Codat instance. | sartANTjHAkLdbyDfaynoTQb7pkmj6hXHmnQKMrB |
+| `alertAuthHeader` | *string* | :heavy_minus_sign: | Alert or webhooks authorization header. | Bearer tXEiHiRK7XCtI8TNHbpGs1LI1pumdb4Cl1QIo7B2 |
+| ~~`confirmCompanyName`~~ | *boolean* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
`True` if the company name has been confirmed. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/schemadatatype.md b/platform/docs/sdk/models/shared/propertiedatatype.md
similarity index 99%
rename from platform/docs/sdk/models/shared/schemadatatype.md
rename to platform/docs/sdk/models/shared/propertiedatatype.md
index a7945dd5c..1defb94d6 100644
--- a/platform/docs/sdk/models/shared/schemadatatype.md
+++ b/platform/docs/sdk/models/shared/propertiedatatype.md
@@ -1,4 +1,4 @@
-# SchemaDataType
+# PropertieDataType
Available data types
diff --git a/platform/docs/sdk/models/shared/pulloperation.md b/platform/docs/sdk/models/shared/pulloperation.md
index a0b06b847..4eebf80b5 100644
--- a/platform/docs/sdk/models/shared/pulloperation.md
+++ b/platform/docs/sdk/models/shared/pulloperation.md
@@ -8,15 +8,15 @@ Information about a queued, in progress or completed pull operation.
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| `id` | *string* | :heavy_check_mark: | Unique identifier of the pull operation. | 943accd0-4247-42d8-865b-363c8629e1da |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier of the company associated to this pull operation. | 22ece347-e5f6-4896-95e0-35a4c7f17023 |
-| `completed` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
| `connectionId` | *string* | :heavy_check_mark: | Unique identifier of the connection associated to this pull operation. | 50830828-7d39-4367-b0eb-5ddb2de5faa5 |
| `dataType` | *string* | :heavy_check_mark: | The data type you are requesting in a pull operation. | |
-| `errorMessage` | *string* | :heavy_minus_sign: | A message about a transient or persistent error. | |
-| `id` | *string* | :heavy_check_mark: | Unique identifier of the pull operation. | 943accd0-4247-42d8-865b-363c8629e1da |
-| `isCompleted` | *boolean* | :heavy_check_mark: | `True` if the pull operation is completed successfully. The `isCompleted` property is not queryable. To filter failed pull operations, query by `status!=Complete&&status!=NotSupported` instead. | |
-| `isErrored` | *boolean* | :heavy_check_mark: | `True` if the pull operation entered an error state. | |
-| `progress` | *number* | :heavy_check_mark: | An integer signifying the progress of the pull operation. | |
-| `requested` | *string* | :heavy_check_mark: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
| `status` | [shared.DatasetStatus](../../../sdk/models/shared/datasetstatus.md) | :heavy_check_mark: | The current status of the dataset. | |
-| `statusDescription` | *string* | :heavy_minus_sign: | Additional information about the dataset status. | Paused until 2022-10-23T00:00:00.000Z |
\ No newline at end of file
+| `statusDescription` | *string* | :heavy_minus_sign: | Additional information about the dataset status. | Paused until 2022-10-23T00:00:00.000Z |
+| `errorMessage` | *string* | :heavy_minus_sign: | A message about a transient or persistent error returned by Codat or the source platform. | |
+| `requested` | *string* | :heavy_check_mark: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
+| `completed` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
+| `progress` | *number* | :heavy_check_mark: | An integer signifying the progress of the pull operation. | |
+| `isCompleted` | *boolean* | :heavy_check_mark: | `True` if the pull operation is completed successfully. The `isCompleted` property is not queryable. To filter failed pull operations, query by `status!=Complete&&status!=NotSupported` instead. | |
+| `isErrored` | *boolean* | :heavy_check_mark: | `True` if the pull operation entered an error state. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pulloperations.md b/platform/docs/sdk/models/shared/pulloperations.md
index 06637797e..6455e0812 100644
--- a/platform/docs/sdk/models/shared/pulloperations.md
+++ b/platform/docs/sdk/models/shared/pulloperations.md
@@ -5,8 +5,8 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
-| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
+| `results` | [shared.PullOperation](../../../sdk/models/shared/pulloperation.md)[] | :heavy_minus_sign: | N/A | |
| `pageNumber` | *number* | :heavy_check_mark: | Current page number. | |
| `pageSize` | *number* | :heavy_check_mark: | Number of items to return in results array. | |
-| `results` | [shared.PullOperation](../../../sdk/models/shared/pulloperation.md)[] | :heavy_minus_sign: | N/A | |
-| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
\ No newline at end of file
+| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
+| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushfieldvalidation.md b/platform/docs/sdk/models/shared/pushfieldvalidation.md
index d8ab81aa1..3709c78e2 100644
--- a/platform/docs/sdk/models/shared/pushfieldvalidation.md
+++ b/platform/docs/sdk/models/shared/pushfieldvalidation.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description |
| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- |
-| `details` | *string* | :heavy_check_mark: | Details on the validation issue. |
| `field` | *string* | :heavy_minus_sign: | Field name that resulted in the validation issue. |
+| `details` | *string* | :heavy_check_mark: | Details on the validation issue. |
| `ref` | *string* | :heavy_minus_sign: | Unique reference identifier for the validation issue. |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperation.md b/platform/docs/sdk/models/shared/pushoperation.md
index fd97f106a..e08b96aee 100644
--- a/platform/docs/sdk/models/shared/pushoperation.md
+++ b/platform/docs/sdk/models/shared/pushoperation.md
@@ -6,15 +6,15 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `changes` | [shared.PushOperationChange](../../../sdk/models/shared/pushoperationchange.md)[] | :heavy_minus_sign: | Contains a single entry that communicates which record has changed and the manner in which it changed. | |
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
| `companyId` | *string* | :heavy_check_mark: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `completedOnUtc` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
-| `dataConnectionKey` | *string* | :heavy_check_mark: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
-| `errorMessage` | *string* | :heavy_minus_sign: | A message about the error. | |
| `pushOperationKey` | *string* | :heavy_check_mark: | A unique identifier generated by Codat to represent this single push operation. This identifier can be used to track the status of the push, and should be persisted. | |
+| `dataConnectionKey` | *string* | :heavy_check_mark: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
| `requestedOnUtc` | *string* | :heavy_check_mark: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
-| `status` | [shared.PushOperationStatus](../../../sdk/models/shared/pushoperationstatus.md) | :heavy_check_mark: | The current status of the push operation. | |
-| `statusCode` | *number* | :heavy_check_mark: | Push status code. | |
+| `completedOnUtc` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
| `timeoutInMinutes` | *number* | :heavy_minus_sign: | Number of minutes the push operation must complete within before it times out. | |
| ~~`timeoutInSeconds`~~ | *number* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Number of seconds the push operation must complete within before it times out. | |
-| `validation` | [shared.Validation](../../../sdk/models/shared/validation.md) | :heavy_minus_sign: | A human-readable object describing validation decisions Codat has made when pushing data into the platform. If a push has failed because of validation errors, they will be detailed here. | |
\ No newline at end of file
+| `status` | [shared.PushOperationStatus](../../../sdk/models/shared/pushoperationstatus.md) | :heavy_check_mark: | The current status of the push operation. | |
+| `errorMessage` | *string* | :heavy_minus_sign: | A message about the error. | |
+| `validation` | [shared.Validation](../../../sdk/models/shared/validation.md) | :heavy_minus_sign: | A human-readable object describing validation decisions Codat has made when pushing data into the platform. If a push has failed because of validation errors, they will be detailed here. | |
+| `statusCode` | *number* | :heavy_check_mark: | Push status code. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperationchange.md b/platform/docs/sdk/models/shared/pushoperationchange.md
index 67d462c0b..d9f7b1b12 100644
--- a/platform/docs/sdk/models/shared/pushoperationchange.md
+++ b/platform/docs/sdk/models/shared/pushoperationchange.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description |
| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
-| `attachmentId` | *string* | :heavy_minus_sign: | Unique identifier for the attachment created otherwise null. |
+| `type` | [shared.PushChangeType](../../../sdk/models/shared/pushchangetype.md) | :heavy_minus_sign: | Type of change being applied to record in third party platform. |
| `recordRef` | [shared.PushOperationRef](../../../sdk/models/shared/pushoperationref.md) | :heavy_minus_sign: | N/A |
-| `type` | [shared.PushChangeType](../../../sdk/models/shared/pushchangetype.md) | :heavy_minus_sign: | Type of change being applied to record in third party platform. |
\ No newline at end of file
+| `attachmentId` | *string* | :heavy_minus_sign: | Unique identifier for the attachment created otherwise null. |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperationref.md b/platform/docs/sdk/models/shared/pushoperationref.md
index 932968899..4d433de4f 100644
--- a/platform/docs/sdk/models/shared/pushoperationref.md
+++ b/platform/docs/sdk/models/shared/pushoperationref.md
@@ -3,7 +3,7 @@
## Fields
-| Field | Type | Required | Description | Example |
-| --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
-| `id` | *string* | :heavy_minus_sign: | Unique identifier for a push operation. | |
\ No newline at end of file
+| Field | Type | Required | Description | Example |
+| --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
+| `id` | *string* | :heavy_minus_sign: | Unique identifier for a push operation. | |
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperations.md b/platform/docs/sdk/models/shared/pushoperations.md
index ae8777491..972f1c7ad 100644
--- a/platform/docs/sdk/models/shared/pushoperations.md
+++ b/platform/docs/sdk/models/shared/pushoperations.md
@@ -5,8 +5,8 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
-| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
+| `results` | [shared.PushOperation](../../../sdk/models/shared/pushoperation.md)[] | :heavy_minus_sign: | N/A | |
| `pageNumber` | *number* | :heavy_check_mark: | Current page number. | |
| `pageSize` | *number* | :heavy_check_mark: | Number of items to return in results array. | |
-| `results` | [shared.PushOperation](../../../sdk/models/shared/pushoperation.md)[] | :heavy_minus_sign: | N/A | |
-| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
\ No newline at end of file
+| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
+| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhook.md b/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhook.md
index f487eb869..bd723ea2b 100644
--- a/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhook.md
+++ b/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhook.md
@@ -7,12 +7,12 @@ Webhook request body for a push operation status change.
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. | |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `data` | [shared.PushOperationStatusChangedWebhookData](../../../sdk/models/shared/pushoperationstatuschangedwebhookdata.md) | :heavy_minus_sign: | N/A | |
| `dataConnectionId` | *string* | :heavy_minus_sign: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. | |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
+| `data` | [shared.PushOperationStatusChangedWebhookData](../../../sdk/models/shared/pushoperationstatuschangedwebhookdata.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhookdata.md b/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhookdata.md
index 5faaef36f..1205d6fa5 100644
--- a/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhookdata.md
+++ b/platform/docs/sdk/models/shared/pushoperationstatuschangedwebhookdata.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
-| `pushOperationKey` | *string* | :heavy_minus_sign: | A unique identifier generated by Codat to represent this single push operation. This identifier can be used to track the status of the push, and should be persisted. | |
-| `status` | [shared.PushOperationStatus](../../../sdk/models/shared/pushoperationstatus.md) | :heavy_minus_sign: | The current status of the push operation. | |
\ No newline at end of file
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
+| `status` | [shared.PushOperationStatus](../../../sdk/models/shared/pushoperationstatus.md) | :heavy_minus_sign: | The current status of the push operation. | |
+| `pushOperationKey` | *string* | :heavy_minus_sign: | A unique identifier generated by Codat to represent this single push operation. This identifier can be used to track the status of the push, and should be persisted. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperationtimedoutwebhook.md b/platform/docs/sdk/models/shared/pushoperationtimedoutwebhook.md
index 39db104fc..a7502a961 100644
--- a/platform/docs/sdk/models/shared/pushoperationtimedoutwebhook.md
+++ b/platform/docs/sdk/models/shared/pushoperationtimedoutwebhook.md
@@ -7,12 +7,12 @@ Webhook request body notifying that a push push operation has timed out.
| Field | Type | Required | Description | Example |
| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. | |
| `clientName` | *string* | :heavy_minus_sign: | Name of your client in Codat. | |
| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `data` | [shared.PushOperationTimedOutWebhookData](../../../sdk/models/shared/pushoperationtimedoutwebhookdata.md) | :heavy_minus_sign: | N/A | |
| `dataConnectionId` | *string* | :heavy_minus_sign: | Unique identifier for a company's data connection. | 2e9d2c44-f675-40ba-8049-353bfcb5e171 |
-| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
| ~~`ruleId`~~ | *string* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.
Unique identifier for the rule. | |
-| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
\ No newline at end of file
+| `ruleType` | *string* | :heavy_minus_sign: | The type of rule. | |
+| `alertId` | *string* | :heavy_minus_sign: | Unique identifier of the webhook event. | |
+| `message` | *string* | :heavy_minus_sign: | A human-readable message about the webhook. | |
+| `data` | [shared.PushOperationTimedOutWebhookData](../../../sdk/models/shared/pushoperationtimedoutwebhookdata.md) | :heavy_minus_sign: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoperationtimedoutwebhookdata.md b/platform/docs/sdk/models/shared/pushoperationtimedoutwebhookdata.md
index 86be3c739..0c34b892a 100644
--- a/platform/docs/sdk/models/shared/pushoperationtimedoutwebhookdata.md
+++ b/platform/docs/sdk/models/shared/pushoperationtimedoutwebhookdata.md
@@ -5,6 +5,6 @@
| Field | Type | Required | Description | Example |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_minus_sign: | Available data types | invoices |
-| `pushOperationGuid` | *string* | :heavy_minus_sign: | A unique identifier generated by Codat to represent this single push operation. This identifier can be used to track the status of the push, and should be persisted. | |
-| `pushOperationKey` | *string* | :heavy_minus_sign: | A unique identifier generated by Codat to represent this single push operation. This identifier can be used to track the status of the push, and should be persisted. | |
\ No newline at end of file
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_minus_sign: | Available data types | invoices |
+| `pushOperationKey` | *string* | :heavy_minus_sign: | A unique identifier generated by Codat to represent this single push operation. This identifier can be used to track the status of the push, and should be persisted. | |
+| `pushOperationGuid` | *string* | :heavy_minus_sign: | A unique identifier generated by Codat to represent this single push operation. This identifier can be used to track the status of the push, and should be persisted. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoption.md b/platform/docs/sdk/models/shared/pushoption.md
index 1e8cf6a06..69ce70bae 100644
--- a/platform/docs/sdk/models/shared/pushoption.md
+++ b/platform/docs/sdk/models/shared/pushoption.md
@@ -5,10 +5,10 @@
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
-| `description` | *string* | :heavy_minus_sign: | A description of the property. |
+| `type` | [shared.PushOptionType](../../../sdk/models/shared/pushoptiontype.md) | :heavy_check_mark: | The option type. |
| `displayName` | *string* | :heavy_check_mark: | The property's display name. |
-| `options` | [shared.PushOptionChoice](../../../sdk/models/shared/pushoptionchoice.md)[] | :heavy_minus_sign: | N/A |
-| `properties` | Record | :heavy_minus_sign: | N/A |
+| `description` | *string* | :heavy_minus_sign: | A description of the property. |
| `required` | *boolean* | :heavy_check_mark: | The property is required if `True`. |
-| `type` | [shared.PushOptionType](../../../sdk/models/shared/pushoptiontype.md) | :heavy_check_mark: | The option type. |
+| `properties` | Record | :heavy_minus_sign: | N/A |
+| `options` | [shared.PushOptionChoice](../../../sdk/models/shared/pushoptionchoice.md)[] | :heavy_minus_sign: | N/A |
| `validation` | [shared.PushValidationInfo](../../../sdk/models/shared/pushvalidationinfo.md) | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoptionchoice.md b/platform/docs/sdk/models/shared/pushoptionchoice.md
index efdac3c0b..10482ef29 100644
--- a/platform/docs/sdk/models/shared/pushoptionchoice.md
+++ b/platform/docs/sdk/models/shared/pushoptionchoice.md
@@ -5,8 +5,8 @@
| Field | Type | Required | Description |
| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- |
-| `description` | *string* | :heavy_minus_sign: | A description of the property. |
-| `displayName` | *string* | :heavy_minus_sign: | The property's display name. |
-| `required` | *boolean* | :heavy_minus_sign: | The property is required if `True`. |
+| `value` | *string* | :heavy_minus_sign: | Allowed value for field. |
| `type` | [shared.PushOptionType](../../../sdk/models/shared/pushoptiontype.md) | :heavy_minus_sign: | The option type. |
-| `value` | *string* | :heavy_minus_sign: | Allowed value for field. |
\ No newline at end of file
+| `displayName` | *string* | :heavy_minus_sign: | The property's display name. |
+| `description` | *string* | :heavy_minus_sign: | A description of the property. |
+| `required` | *boolean* | :heavy_minus_sign: | The property is required if `True`. |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushoptionproperty.md b/platform/docs/sdk/models/shared/pushoptionproperty.md
index 3eaa30808..48faac411 100644
--- a/platform/docs/sdk/models/shared/pushoptionproperty.md
+++ b/platform/docs/sdk/models/shared/pushoptionproperty.md
@@ -5,10 +5,10 @@
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
-| `description` | *string* | :heavy_check_mark: | A description of the property. |
+| `type` | [shared.PushOptionType](../../../sdk/models/shared/pushoptiontype.md) | :heavy_check_mark: | The option type. |
| `displayName` | *string* | :heavy_check_mark: | The property's display name. |
-| `options` | [shared.PushOptionChoice](../../../sdk/models/shared/pushoptionchoice.md)[] | :heavy_minus_sign: | N/A |
-| `properties` | Record | :heavy_minus_sign: | N/A |
+| `description` | *string* | :heavy_check_mark: | A description of the property. |
| `required` | *boolean* | :heavy_check_mark: | The property is required if `True`. |
-| `type` | [shared.PushOptionType](../../../sdk/models/shared/pushoptiontype.md) | :heavy_check_mark: | The option type. |
+| `properties` | Record | :heavy_minus_sign: | N/A |
+| `options` | [shared.PushOptionChoice](../../../sdk/models/shared/pushoptionchoice.md)[] | :heavy_minus_sign: | N/A |
| `validation` | [shared.PushValidationInfo](../../../sdk/models/shared/pushvalidationinfo.md) | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/pushvalidationinfo.md b/platform/docs/sdk/models/shared/pushvalidationinfo.md
index 00a893d2a..7fe614014 100644
--- a/platform/docs/sdk/models/shared/pushvalidationinfo.md
+++ b/platform/docs/sdk/models/shared/pushvalidationinfo.md
@@ -5,5 +5,5 @@
| Field | Type | Required | Description |
| --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
-| `information` | [shared.PushFieldValidation](../../../sdk/models/shared/pushfieldvalidation.md)[] | :heavy_minus_sign: | N/A |
-| `warnings` | [shared.PushFieldValidation](../../../sdk/models/shared/pushfieldvalidation.md)[] | :heavy_minus_sign: | N/A |
\ No newline at end of file
+| `warnings` | [shared.PushFieldValidation](../../../sdk/models/shared/pushfieldvalidation.md)[] | :heavy_minus_sign: | N/A |
+| `information` | [shared.PushFieldValidation](../../../sdk/models/shared/pushfieldvalidation.md)[] | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/supportedfeature.md b/platform/docs/sdk/models/shared/supportedfeature.md
index dbce30ee7..3df895f91 100644
--- a/platform/docs/sdk/models/shared/supportedfeature.md
+++ b/platform/docs/sdk/models/shared/supportedfeature.md
@@ -5,5 +5,5 @@
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- |
-| `featureState` | [shared.FeatureState](../../../sdk/models/shared/featurestate.md) | :heavy_check_mark: | The current release state of the feature. | Release |
-| `featureType` | [shared.FeatureType](../../../sdk/models/shared/featuretype.md) | :heavy_check_mark: | The type of feature. | Get |
\ No newline at end of file
+| `featureType` | [shared.FeatureType](../../../sdk/models/shared/featuretype.md) | :heavy_check_mark: | The type of feature. | Get |
+| `featureState` | [shared.FeatureState](../../../sdk/models/shared/featurestate.md) | :heavy_check_mark: | The current release state of the feature. | Release |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/syncsetting.md b/platform/docs/sdk/models/shared/syncsetting.md
index 5c54e03b3..2489b8b36 100644
--- a/platform/docs/sdk/models/shared/syncsetting.md
+++ b/platform/docs/sdk/models/shared/syncsetting.md
@@ -7,11 +7,11 @@ Describes how often, and how much history, should be fetched for the given data
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `dataType` | [shared.DataType](../../../sdk/models/shared/datatype.md) | :heavy_check_mark: | Available data types | invoices |
+| `dataType` | [shared.PropertieDataType](../../../sdk/models/shared/propertiedatatype.md) | :heavy_check_mark: | Available data types | invoices |
| `fetchOnFirstLink` | *boolean* | :heavy_check_mark: | Whether this data type should be queued after a company has authorized a connection. | |
-| `isLocked` | *boolean* | :heavy_minus_sign: | `True` if the [sync setting](https://docs.codat.io/knowledge-base/advanced-sync-settings) is locked. | |
-| `monthsToSync` | *number* | :heavy_minus_sign: | Months of data to fetch, for report data types (`balanceSheet` & `profitAndLoss`) only. | 24 |
+| `syncSchedule` | *number* | :heavy_check_mark: | Number of hours after which this data type should be refreshed. | 24 |
+| `syncOrder` | *number* | :heavy_check_mark: | The sync in which data types are queued for a sync. | |
| `syncFromUtc` | *string* | :heavy_minus_sign: | In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
```
2020-10-08T22:40:50Z
2021-01-01T00:00:00
```
When syncing data that contains `DateTime` fields from Codat, make sure you support the following cases when reading time information:
- Coordinated Universal Time (UTC): `2021-11-15T06:00:00Z`
- Unqualified local time: `2021-11-15T01:00:00`
- UTC time offsets: `2021-11-15T01:00:00-05:00`
> Time zones
>
> Not all dates from Codat will contain information about time zones.
> Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced. | 2022-10-23 00:00:00 +0000 UTC |
| `syncFromWindow` | *number* | :heavy_minus_sign: | Number of months of data to be fetched. Set this *or* `syncFromUTC`. | 24 |
-| `syncOrder` | *number* | :heavy_check_mark: | The sync in which data types are queued for a sync. | |
-| `syncSchedule` | *number* | :heavy_check_mark: | Number of hours after which this data type should be refreshed. | 24 |
\ No newline at end of file
+| `monthsToSync` | *number* | :heavy_minus_sign: | Months of data to fetch, for report data types (`balanceSheet` & `profitAndLoss`) only. | 24 |
+| `isLocked` | *boolean* | :heavy_minus_sign: | `True` if the [sync setting](https://docs.codat.io/knowledge-base/advanced-sync-settings) is locked. | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/syncsettings.md b/platform/docs/sdk/models/shared/syncsettings.md
index 770e16240..bf0126c2d 100644
--- a/platform/docs/sdk/models/shared/syncsettings.md
+++ b/platform/docs/sdk/models/shared/syncsettings.md
@@ -6,5 +6,5 @@
| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `clientId` | *string* | :heavy_minus_sign: | Unique identifier for your client in Codat. |
-| `overridesDefaults` | *boolean* | :heavy_minus_sign: | Set to `True` if you want to override the default [sync settings](https://docs.codat.io/knowledge-base/advanced-sync-settings). |
-| `settings` | [shared.SyncSetting](../../../sdk/models/shared/syncsetting.md)[] | :heavy_minus_sign: | N/A |
\ No newline at end of file
+| `settings` | [shared.SyncSetting](../../../sdk/models/shared/syncsetting.md)[] | :heavy_minus_sign: | N/A |
+| `overridesDefaults` | *boolean* | :heavy_minus_sign: | Set to `True` if you want to override the default [sync settings](https://docs.codat.io/knowledge-base/advanced-sync-settings). |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/webhook.md b/platform/docs/sdk/models/shared/webhook.md
index f36a469a4..2e03432bc 100644
--- a/platform/docs/sdk/models/shared/webhook.md
+++ b/platform/docs/sdk/models/shared/webhook.md
@@ -7,7 +7,7 @@ Configuration to provide an event notification to a URL or list of email address
| Field | Type | Required | Description | Example |
| ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- |
-| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
| `id` | *string* | :heavy_minus_sign: | Unique identifier for the configured notification. | ff89c50e-a719-4ef5-a182-9917e53927b6 |
-| `notifiers` | [shared.WebhookNotifier](../../../sdk/models/shared/webhooknotifier.md) | :heavy_check_mark: | N/A | |
-| `type` | *string* | :heavy_check_mark: | The type of webhook. | |
\ No newline at end of file
+| `type` | *string* | :heavy_check_mark: | The type of webhook. | |
+| `companyId` | *string* | :heavy_minus_sign: | Unique identifier for your SMB in Codat. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `notifiers` | [shared.WebhookNotifier](../../../sdk/models/shared/webhooknotifier.md) | :heavy_check_mark: | N/A | |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/webhookconsumer.md b/platform/docs/sdk/models/shared/webhookconsumer.md
index 8f34240e5..3cb4be614 100644
--- a/platform/docs/sdk/models/shared/webhookconsumer.md
+++ b/platform/docs/sdk/models/shared/webhookconsumer.md
@@ -10,8 +10,8 @@ See our documentation for more details on [Codat's webhook service](https://docs
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `companyId` | *string* | :heavy_minus_sign: | Unique identifier of the company to indicate company-specific events. The associated webhook consumer will receive events only for the specified ID. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `id` | *string* | :heavy_minus_sign: | Unique identifier for the webhook consumer. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `url` | *string* | :heavy_minus_sign: | The URL that will consume webhook events dispatched by Codat. | |
| `disabled` | *boolean* | :heavy_minus_sign: | Flag that enables or disables the endpoint from receiving events. Disabled when set to `true`. | |
| `eventTypes` | *string*[] | :heavy_minus_sign: | An array of event types the webhook consumer subscribes to. | |
-| `id` | *string* | :heavy_minus_sign: | Unique identifier for the webhook consumer. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
-| `url` | *string* | :heavy_minus_sign: | The URL that will consume webhook events dispatched by Codat. | |
\ No newline at end of file
+| `companyId` | *string* | :heavy_minus_sign: | Unique identifier of the company to indicate company-specific events. The associated webhook consumer will receive events only for the specified ID. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/webhookconsumerprototype.md b/platform/docs/sdk/models/shared/webhookconsumerprototype.md
index 5e7907c35..3c56da5d2 100644
--- a/platform/docs/sdk/models/shared/webhookconsumerprototype.md
+++ b/platform/docs/sdk/models/shared/webhookconsumerprototype.md
@@ -5,7 +5,7 @@
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `companyId` | *string* | :heavy_minus_sign: | Unique identifier of the company to indicate company-specific events. The associated webhook consumer will receive events only for the specified ID. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
+| `url` | *string* | :heavy_minus_sign: | The URL that will consume webhook events dispatched by Codat. | |
| `disabled` | *boolean* | :heavy_minus_sign: | Flag that enables or disables the endpoint from receiving events. Disabled when set to `true`. | |
| `eventTypes` | *string*[] | :heavy_minus_sign: | An array of event types the webhook consumer subscribes to. | |
-| `url` | *string* | :heavy_minus_sign: | The URL that will consume webhook events dispatched by Codat. | |
\ No newline at end of file
+| `companyId` | *string* | :heavy_minus_sign: | Unique identifier of the company to indicate company-specific events. The associated webhook consumer will receive events only for the specified ID. | 8a210b68-6988-11ed-a1eb-0242ac120002 |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/shared/webhooks.md b/platform/docs/sdk/models/shared/webhooks.md
index e6d7cb640..f1388e542 100644
--- a/platform/docs/sdk/models/shared/webhooks.md
+++ b/platform/docs/sdk/models/shared/webhooks.md
@@ -5,8 +5,8 @@
| Field | Type | Required | Description | Example |
| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
-| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
+| `results` | [shared.Webhook](../../../sdk/models/shared/webhook.md)[] | :heavy_minus_sign: | N/A | |
| `pageNumber` | *number* | :heavy_check_mark: | Current page number. | |
| `pageSize` | *number* | :heavy_check_mark: | Number of items to return in results array. | |
-| `results` | [shared.Webhook](../../../sdk/models/shared/webhook.md)[] | :heavy_minus_sign: | N/A | |
-| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
\ No newline at end of file
+| `totalResults` | *number* | :heavy_check_mark: | Total number of items. | |
+| `links` | [shared.Links](../../../sdk/models/shared/links.md) | :heavy_check_mark: | N/A | {
"self": {
"href": "/companies"
},
"current": {
"href": "/companies?page=1\u0026pageSize=10"
}
} |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/clientratelimitreachedresponse.md b/platform/docs/sdk/models/webhooks/clientratelimitreachedresponse.md
deleted file mode 100644
index 5098d8eac..000000000
--- a/platform/docs/sdk/models/webhooks/clientratelimitreachedresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# ClientRateLimitReachedResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/clientratelimitresetresponse.md b/platform/docs/sdk/models/webhooks/clientratelimitresetresponse.md
deleted file mode 100644
index 731e95fed..000000000
--- a/platform/docs/sdk/models/webhooks/clientratelimitresetresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# ClientRateLimitResetResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/companydataconnectionstatuschangedresponse.md b/platform/docs/sdk/models/webhooks/companydataconnectionstatuschangedresponse.md
deleted file mode 100644
index ff1277def..000000000
--- a/platform/docs/sdk/models/webhooks/companydataconnectionstatuschangedresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# CompanyDataConnectionStatusChangedResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/datasetdatachangedresponse.md b/platform/docs/sdk/models/webhooks/datasetdatachangedresponse.md
deleted file mode 100644
index c2d8731b0..000000000
--- a/platform/docs/sdk/models/webhooks/datasetdatachangedresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# DatasetDataChangedResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/datasetstatushaschangedtoanerrorstateresponse.md b/platform/docs/sdk/models/webhooks/datasetstatushaschangedtoanerrorstateresponse.md
deleted file mode 100644
index cea80c7af..000000000
--- a/platform/docs/sdk/models/webhooks/datasetstatushaschangedtoanerrorstateresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# DatasetStatusHasChangedToAnErrorStateResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/datasynccompletedresponse.md b/platform/docs/sdk/models/webhooks/datasynccompletedresponse.md
deleted file mode 100644
index 6e076065e..000000000
--- a/platform/docs/sdk/models/webhooks/datasynccompletedresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# DataSyncCompletedResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/newcompanysynchronizedresponse.md b/platform/docs/sdk/models/webhooks/newcompanysynchronizedresponse.md
deleted file mode 100644
index 2b0cf3d5b..000000000
--- a/platform/docs/sdk/models/webhooks/newcompanysynchronizedresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# NewCompanySynchronizedResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/pushoperationhastimedoutresponse.md b/platform/docs/sdk/models/webhooks/pushoperationhastimedoutresponse.md
deleted file mode 100644
index ad5720604..000000000
--- a/platform/docs/sdk/models/webhooks/pushoperationhastimedoutresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# PushOperationHasTimedOutResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdk/models/webhooks/pushoperationstatushaschangedresponse.md b/platform/docs/sdk/models/webhooks/pushoperationstatushaschangedresponse.md
deleted file mode 100644
index 47a5d2848..000000000
--- a/platform/docs/sdk/models/webhooks/pushoperationstatushaschangedresponse.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# PushOperationStatusHasChangedResponse
-
-
-## Fields
-
-| Field | Type | Required | Description |
-| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- |
-| `contentType` | *string* | :heavy_check_mark: | HTTP response content type for this operation |
-| `statusCode` | *number* | :heavy_check_mark: | HTTP response status code for this operation |
-| `rawResponse` | [AxiosResponse](https://axios-http.com/docs/res_schema) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing |
\ No newline at end of file
diff --git a/platform/docs/sdks/companies/README.md b/platform/docs/sdks/companies/README.md
index 02c5c1689..1fb54d171 100644
--- a/platform/docs/sdks/companies/README.md
+++ b/platform/docs/sdks/companies/README.md
@@ -7,46 +7,38 @@ Create and manage your SMB users' companies.
### Available Operations
+* [list](#list) - List companies
* [create](#create) - Create company
-* [delete](#delete) - Delete a company
* [get](#get) - Get company
-* [list](#list) - List companies
+* [delete](#delete) - Delete a company
* [update](#update) - Update company
-## create
+## list
-Use the *Create company* endpoint to create a new [company](https://docs.codat.io/platform-api#/schemas/Company) that represents your customer in Codat.
+The *List companies* endpoint returns a list of [companies] associated to your instances.
A [company](https://docs.codat.io/platform-api#/schemas/Company) represents a business sharing access to their data.
Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources, such as one connection to Xero for accounting data, two connections to Plaid for two bank accounts, and a connection to Zettle for POS data.
-If forbidden characters (see `name` pattern) are present in the request, a company will be created with the forbidden characters removed. For example, `Company (Codat[1])` with be created as `Company Codat1`.
-
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.companies.create({
- description: "Requested early access to the new financing scheme.",
- groups: [
- {
- id: "60d2fa12-8a04-11ee-b9d1-0242ac120002",
- },
- ],
- name: "Bank of Dave",
+async function run() {
+ const result = await codatPlatform.companies.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -54,49 +46,55 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
-| `request` | [shared.CompanyRequestBody](../../sdk/models/shared/companyrequestbody.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ListCompaniesRequest](../../sdk/models/operations/listcompaniesrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.CreateCompanyResponse](../../sdk/models/operations/createcompanyresponse.md)>**
+**Promise\<[shared.Companies](../../sdk/models/shared/companies.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## delete
+## create
-The *Delete company* endpoint permanently deletes a [company](https://docs.codat.io/platform-api#/schemas/Company), its [connections](https://docs.codat.io/platform-api#/schemas/Connection) and any cached data. This operation is irreversible.
+Use the *Create company* endpoint to create a new [company](https://docs.codat.io/platform-api#/schemas/Company) that represents your customer in Codat.
A [company](https://docs.codat.io/platform-api#/schemas/Company) represents a business sharing access to their data.
Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources, such as one connection to Xero for accounting data, two connections to Plaid for two bank accounts, and a connection to Zettle for POS data.
+If forbidden characters (see `name` pattern) are present in the request, a company will be created with the forbidden characters removed. For example, `Company (Codat[1])` with be created as `Company Codat1`.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.companies.delete({
- companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
+async function run() {
+ const result = await codatPlatform.companies.create({
+ name: "Technicalium",
+ description: "Requested early access to the new financing scheme.",
+ groups: [
+ {
+ id: "60d2fa12-8a04-11ee-b9d1-0242ac120002",
+ },
+ ],
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -104,21 +102,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
-| `request` | [operations.DeleteCompanyRequest](../../sdk/models/operations/deletecompanyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [shared.CompanyRequestBody](../../sdk/models/shared/companyrequestbody.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.DeleteCompanyResponse](../../sdk/models/operations/deletecompanyresponse.md)>**
+**Promise\<[shared.Company](../../sdk/models/shared/company.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 400,401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## get
@@ -133,20 +133,17 @@ Each company can have multiple [connections](https://docs.codat.io/platform-api#
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.companies.get({
+async function run() {
+ const result = await codatPlatform.companies.get({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -154,50 +151,47 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
-| `request` | [operations.GetCompanyRequest](../../sdk/models/operations/getcompanyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetCompanyRequest](../../sdk/models/operations/getcompanyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetCompanyResponse](../../sdk/models/operations/getcompanyresponse.md)>**
+**Promise\<[shared.Company](../../sdk/models/shared/company.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## list
+## delete
-The *List companies* endpoint returns a list of [companies] associated to your instances.
+The *Delete company* endpoint permanently deletes a [company](https://docs.codat.io/platform-api#/schemas/Company), its [connections](https://docs.codat.io/platform-api#/schemas/Connection) and any cached data. This operation is irreversible.
A [company](https://docs.codat.io/platform-api#/schemas/Company) represents a business sharing access to their data.
Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources, such as one connection to Xero for accounting data, two connections to Plaid for two bank accounts, and a connection to Zettle for POS data.
+
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.companies.list({
- orderBy: "-modifiedDate",
- page: 1,
- pageSize: 100,
+async function run() {
+ await codatPlatform.companies.delete({
+ companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+
}
run();
@@ -205,21 +199,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
-| `request` | [operations.ListCompaniesRequest](../../sdk/models/operations/listcompaniesrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.DeleteCompanyRequest](../../sdk/models/operations/deletecompanyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListCompaniesResponse](../../sdk/models/operations/listcompaniesresponse.md)>**
+**Promise\**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## update
@@ -234,29 +230,26 @@ Each company can have multiple [connections](https://docs.codat.io/platform-api#
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.companies.update({
+async function run() {
+ const result = await codatPlatform.companies.update({
+ companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
companyRequestBody: {
+ name: "Bank of Dave",
description: "Requested early access to the new financing scheme.",
groups: [
{
id: "60d2fa12-8a04-11ee-b9d1-0242ac120002",
},
],
- name: "Bank of Dave",
},
- companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -264,18 +257,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
-| `request` | [operations.UpdateCompanyRequest](../../sdk/models/operations/updatecompanyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.UpdateCompanyRequest](../../sdk/models/operations/updatecompanyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.UpdateCompanyResponse](../../sdk/models/operations/updatecompanyresponse.md)>**
+**Promise\<[shared.Company](../../sdk/models/shared/company.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/connectionmanagement/README.md b/platform/docs/sdks/connectionmanagement/README.md
index ec82117be..1b02289cc 100644
--- a/platform/docs/sdks/connectionmanagement/README.md
+++ b/platform/docs/sdks/connectionmanagement/README.md
@@ -3,7 +3,7 @@
## Overview
-Configure connection management UI and retrieve access tokens for authentication.
+Configure UI and retrieve access tokens for authentication used by **Connections SDK**.
### Available Operations
@@ -11,29 +11,26 @@ Configure connection management UI and retrieve access tokens for authentication
## getAccessToken
-Use the *Get access token* endpoint to retrieve a new access token for use by the [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management).
+Use the *Get access token* endpoint to retrieve a new access token for use with the [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management). The token is only valid for one hour and applies to a single company.
-The embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
+The embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connectionManagement.getAccessToken({
+async function run() {
+ const result = await codatPlatform.connectionManagement.getAccessToken({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -41,18 +38,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.GetConnectionManagementAccessTokenRequest](../../sdk/models/operations/getconnectionmanagementaccesstokenrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetConnectionManagementAccessTokenRequest](../../sdk/models/operations/getconnectionmanagementaccesstokenrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetConnectionManagementAccessTokenResponse](../../sdk/models/operations/getconnectionmanagementaccesstokenresponse.md)>**
+**Promise\<[shared.ConnectionManagementAccessToken](../../sdk/models/shared/connectionmanagementaccesstoken.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/connections/README.md b/platform/docs/sdks/connections/README.md
index 114e9ab1c..f5dc6527a 100644
--- a/platform/docs/sdks/connections/README.md
+++ b/platform/docs/sdks/connections/README.md
@@ -7,41 +7,37 @@ Create new and manage existing data connections for a company.
### Available Operations
+* [list](#list) - List connections
* [create](#create) - Create connection
-* [delete](#delete) - Delete connection
* [get](#get) - Get connection
-* [list](#list) - List connections
+* [delete](#delete) - Delete connection
* [unlink](#unlink) - Unlink connection
* [updateAuthorization](#updateauthorization) - Update authorization
-## create
-
-Creates a connection for the company by providing a valid `platformKey`.
+## list
-Use the [List Integrations](https://docs.codat.io/platform-api#/operations/list-integrations) endpoint to access valid platform keys.
+List the connections for a company.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connections.create({
- requestBody: {
- platformKey: "gbol",
- },
+async function run() {
+ const result = await codatPlatform.connections.list({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -49,47 +45,49 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
-| `request` | [operations.CreateConnectionRequest](../../sdk/models/operations/createconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ListConnectionsRequest](../../sdk/models/operations/listconnectionsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.CreateConnectionResponse](../../sdk/models/operations/createconnectionresponse.md)>**
+**Promise\<[shared.Connections](../../sdk/models/shared/connections.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## delete
+## create
-Revoke and remove a connection from a company.
-This operation is not reversible. The end user would need to reauthorize a new data connection if you wish to view new data for this company.
+Creates a connection for the company by providing a valid `platformKey`.
+
+Use the [List Integrations](https://docs.codat.io/platform-api#/operations/list-integrations) endpoint to access valid platform keys.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connections.delete({
+async function run() {
+ const result = await codatPlatform.connections.create({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
+ requestBody: {
+ platformKey: "gbol",
+ },
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -97,21 +95,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
-| `request` | [operations.DeleteConnectionRequest](../../sdk/models/operations/deleteconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.CreateConnectionRequest](../../sdk/models/operations/createconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.DeleteConnectionResponse](../../sdk/models/operations/deleteconnectionresponse.md)>**
+**Promise\<[shared.Connection](../../sdk/models/shared/connection.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## get
@@ -122,21 +122,18 @@ run();
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connections.get({
+async function run() {
+ const result = await codatPlatform.connections.get({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -144,48 +141,45 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
-| `request` | [operations.GetConnectionRequest](../../sdk/models/operations/getconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetConnectionRequest](../../sdk/models/operations/getconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetConnectionResponse](../../sdk/models/operations/getconnectionresponse.md)>**
+**Promise\<[shared.Connection](../../sdk/models/shared/connection.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## list
+## delete
-List the connections for a company.
+Revoke and remove a connection from a company.
+This operation is not reversible. The end user would need to reauthorize a new data connection if you wish to view new data for this company.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connections.list({
+async function run() {
+ await codatPlatform.connections.delete({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- orderBy: "-modifiedDate",
- page: 1,
- pageSize: 100,
+ connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
- if (res.statusCode == 200) {
- // handle response
- }
+
}
run();
@@ -193,21 +187,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
-| `request` | [operations.ListConnectionsRequest](../../sdk/models/operations/listconnectionsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.DeleteConnectionRequest](../../sdk/models/operations/deleteconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListConnectionsResponse](../../sdk/models/operations/listconnectionsresponse.md)>**
+**Promise\**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## unlink
@@ -217,24 +213,19 @@ run();
```typescript
import { CodatPlatform } from "@codat/platform";
-import { DataConnectionStatus } from "@codat/platform/dist/sdk/models/shared";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connections.unlink({
- updateConnectionStatus: {},
+async function run() {
+ const result = await codatPlatform.connections.unlink({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -242,21 +233,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
-| `request` | [operations.UnlinkConnectionRequest](../../sdk/models/operations/unlinkconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.UnlinkConnectionRequest](../../sdk/models/operations/unlinkconnectionrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.UnlinkConnectionResponse](../../sdk/models/operations/unlinkconnectionresponse.md)>**
+**Promise\<[shared.Connection](../../sdk/models/shared/connection.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## updateAuthorization
@@ -267,24 +260,18 @@ Update data connection's authorization.
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connections.updateAuthorization({
- requestBody: {
- "key": "",
- },
+async function run() {
+ const result = await codatPlatform.connections.updateAuthorization({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -292,18 +279,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.UpdateConnectionAuthorizationRequest](../../sdk/models/operations/updateconnectionauthorizationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.UpdateConnectionAuthorizationRequest](../../sdk/models/operations/updateconnectionauthorizationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.UpdateConnectionAuthorizationResponse](../../sdk/models/operations/updateconnectionauthorizationresponse.md)>**
+**Promise\<[shared.Connection](../../sdk/models/shared/connection.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/corssettings/README.md b/platform/docs/sdks/corssettings/README.md
index f9687a263..638a24fb2 100644
--- a/platform/docs/sdks/corssettings/README.md
+++ b/platform/docs/sdks/corssettings/README.md
@@ -10,27 +10,24 @@
The *Get CORS settings* endpoint returns the allowed origins (i.e. your domains) you want to allow cross-origin resource sharing ([CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)) with Codat.
-Enabling CORS with Codat is required by our embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
+Enabling CORS with Codat is required by our embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
-The embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
+The embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connectionManagement.corsSettings.get();
+async function run() {
+ const result = await codatPlatform.connectionManagement.corsSettings.get();
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -38,50 +35,49 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetConnectionManagementCorsSettingsResponse](../../sdk/models/operations/getconnectionmanagementcorssettingsresponse.md)>**
+**Promise\<[shared.ConnectionManagementAllowedOrigins](../../sdk/models/shared/connectionmanagementallowedorigins.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## set
The *Set CORS settings* endpoint allows you to register allowed origins (i.e. your domains) for use in cross-origin resource sharing ([CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)).
-Enabling CORS with Codat is required by our embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
+Enabling CORS with Codat is required by our embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
-The embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
+The embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.connectionManagement.corsSettings.set({
+async function run() {
+ const result = await codatPlatform.connectionManagement.corsSettings.set({
allowedOrigins: [
"https://www.bank-of-dave.com",
],
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -89,18 +85,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
-| `request` | [shared.ConnectionManagementAllowedOrigins](../../sdk/models/shared/connectionmanagementallowedorigins.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [shared.ConnectionManagementAllowedOrigins](../../sdk/models/shared/connectionmanagementallowedorigins.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.SetConnectionManagementCorsSettingsResponse](../../sdk/models/operations/setconnectionmanagementcorssettingsresponse.md)>**
+**Promise\<[shared.ConnectionManagementAllowedOrigins](../../sdk/models/shared/connectionmanagementallowedorigins.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/customdatatype/README.md b/platform/docs/sdks/customdatatype/README.md
index 6165f3fa4..940edf7cc 100644
--- a/platform/docs/sdks/customdatatype/README.md
+++ b/platform/docs/sdks/customdatatype/README.md
@@ -9,8 +9,8 @@ Configure and pull additional data types that are not included in Codat's standa
* [configure](#configure) - Configure custom data type
* [getConfiguration](#getconfiguration) - Get custom data configuration
-* [list](#list) - List custom data type records
* [refresh](#refresh) - Refresh custom data type
+* [list](#list) - List custom data type records
## configure
@@ -31,19 +31,16 @@ A [custom data type](https://docs.codat.io/using-the-api/custom-data) is an addi
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.customDataType.configure({
+async function run() {
+ const result = await codatPlatform.customDataType.configure({
+ platformKey: "gbol",
+ customDataIdentifier: "DynamicsPurchaseOrders",
customDataTypeConfiguration: {
dataSource: "api/purchaseOrders?$filter=currencyCode eq 'NOK'",
- keyBy: [
- "$[*].id",
- ],
requiredData: {
"currencyCode": "$[*].currencyCode",
"id": "$[*].id",
@@ -53,17 +50,17 @@ async function run() {
"totalTaxAmount": "$[*].totalTaxAmount",
"vendorName": "$[*].number",
},
+ keyBy: [
+ "$[*].id",
+ ],
sourceModifiedDate: [
"$[*].lastModifiedDateTime",
],
},
- customDataIdentifier: "DynamicsPurchaseOrders",
- platformKey: "gbol",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -71,21 +68,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.ConfigureCustomDataTypeRequest](../../sdk/models/operations/configurecustomdatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ConfigureCustomDataTypeRequest](../../sdk/models/operations/configurecustomdatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ConfigureCustomDataTypeResponse](../../sdk/models/operations/configurecustomdatatyperesponse.md)>**
+**Promise\<[shared.CustomDataTypeConfiguration](../../sdk/models/shared/customdatatypeconfiguration.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## getConfiguration
@@ -98,21 +97,18 @@ A [custom data type](https://docs.codat.io/using-the-api/custom-data) is an addi
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.customDataType.getConfiguration({
- customDataIdentifier: "DynamicsPurchaseOrders",
+async function run() {
+ const result = await codatPlatform.customDataType.getConfiguration({
platformKey: "gbol",
+ customDataIdentifier: "DynamicsPurchaseOrders",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -120,51 +116,46 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ |
-| `request` | [operations.GetCustomDataTypeConfigurationRequest](../../sdk/models/operations/getcustomdatatypeconfigurationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetCustomDataTypeConfigurationRequest](../../sdk/models/operations/getcustomdatatypeconfigurationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetCustomDataTypeConfigurationResponse](../../sdk/models/operations/getcustomdatatypeconfigurationresponse.md)>**
+**Promise\<[shared.CustomDataTypeRecords](../../sdk/models/shared/customdatatyperecords.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
-
-## list
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-The *List custom data type records* endpoint returns a paginated list of records pulled for the specified custom data type you previously configured.
+## refresh
-A [custom data type](https://docs.codat.io/using-the-api/custom-data) is an additional data type you can create that is not included in Codat's standardized data model.s endpoint returns a paginated list of records whose schema is defined [Configure custom data type](https://docs.codat.io/platform-api#/operations/configure-custom-data-type)
+The *Refresh custom data type* endpoint refreshes the specified custom data type for a given company. This is an asynchronous operation that will sync updated data from the linked integration into Codat for you to view.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.customDataType.list({
+async function run() {
+ const result = await codatPlatform.customDataType.refresh({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
customDataIdentifier: "DynamicsPurchaseOrders",
- page: 1,
- pageSize: 100,
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -172,47 +163,50 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.ListCustomDataTypeRecordsRequest](../../sdk/models/operations/listcustomdatatyperecordsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.RefreshCustomDataTypeRequest](../../sdk/models/operations/refreshcustomdatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListCustomDataTypeRecordsResponse](../../sdk/models/operations/listcustomdatatyperecordsresponse.md)>**
+**Promise\<[shared.PullOperation](../../sdk/models/shared/pulloperation.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,451,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## refresh
+## list
-The *Refresh custom data type* endpoint refreshes the specified custom data type for a given company. This is an asynchronous operation that will sync updated data from the linked integration into Codat for you to view.
+The *List custom data type records* endpoint returns a paginated list of records pulled for the specified custom data type you previously configured.
+
+A [custom data type](https://docs.codat.io/using-the-api/custom-data) is an additional data type you can create that is not included in Codat's standardized data model.s endpoint returns a paginated list of records whose schema is defined [Configure custom data type](https://docs.codat.io/platform-api#/operations/configure-custom-data-type)
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.customDataType.refresh({
+async function run() {
+ const result = await codatPlatform.customDataType.list({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
customDataIdentifier: "DynamicsPurchaseOrders",
+ page: 1,
+ pageSize: 100,
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -220,18 +214,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
-| `request` | [operations.RefreshCustomDataTypeRequest](../../sdk/models/operations/refreshcustomdatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ListCustomDataTypeRecordsRequest](../../sdk/models/operations/listcustomdatatyperecordsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.RefreshCustomDataTypeResponse](../../sdk/models/operations/refreshcustomdatatyperesponse.md)>**
+**Promise\<[shared.CustomDataTypeRecords](../../sdk/models/shared/customdatatyperecords.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ----------------------------------- | ----------------------------------- | ----------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,404,429,451,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/groups/README.md b/platform/docs/sdks/groups/README.md
index 2e4228d21..0e1cb1b67 100644
--- a/platform/docs/sdks/groups/README.md
+++ b/platform/docs/sdks/groups/README.md
@@ -8,9 +8,9 @@ Define and manage sets of companies based on a chosen characteristic.
### Available Operations
* [addCompany](#addcompany) - Add company
-* [create](#create) - Create group
-* [list](#list) - List groups
* [removeCompany](#removecompany) - Remove company
+* [list](#list) - List groups
+* [create](#create) - Create group
## addCompany
@@ -23,23 +23,20 @@ Define and manage sets of companies based on a chosen characteristic.
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.groups.addCompany({
+async function run() {
+ const result = await codatPlatform.groups.addCompany({
+ companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
companyGroupAssignment: {
groupId: "60d2fa12-8a04-11ee-b9d1-0242ac120002",
},
- companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -47,52 +44,46 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
-| `request` | [operations.AddCompanyToGroupRequest](../../sdk/models/operations/addcompanytogrouprequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.AddCompanyToGroupRequest](../../sdk/models/operations/addcompanytogrouprequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.AddCompanyToGroupResponse](../../sdk/models/operations/addcompanytogroupresponse.md)>**
+**Promise\<[shared.Company](../../sdk/models/shared/company.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## create
+## removeCompany
-Use the *Create group* endpoint to generate a new group that you can assign your companies to.
+Use the *Remove company* endpoint to remove a company from a group.
[Groups](https://docs.codat.io/platform-api#/schemas/Group) define a set of companies that are organized based on a chosen characteristic and can be managed in the same way.
-### Tips and traps
-
-* The maximum length for the group name is 50 characters.
-* It's possible to create up to 20 groups per client.
-
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.groups.create({
- name: "Invoice finance team",
+async function run() {
+ await codatPlatform.groups.removeCompany({
+ companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
+ groupId: "60d2fa12-8a04-11ee-b9d1-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+
}
run();
@@ -100,21 +91,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `request` | [shared.GroupPrototype](../../sdk/models/shared/groupprototype.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.RemoveCompanyFromGroupRequest](../../sdk/models/operations/removecompanyfromgrouprequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.CreateGroupResponse](../../sdk/models/operations/creategroupresponse.md)>**
+**Promise\**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## list
@@ -127,18 +120,15 @@ Use the *List group* endpoint to return a list of all groups that currently exis
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.groups.list();
+async function run() {
+ const result = await codatPlatform.groups.list();
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -146,47 +136,50 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListGroupsResponse](../../sdk/models/operations/listgroupsresponse.md)>**
+**Promise\<[shared.Groups](../../sdk/models/shared/groups.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ----------------------- | ----------------------- | ----------------------- |
+| errors.ErrorMessage | 401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## removeCompany
+## create
-Use the *Remove company* endpoint to remove a company from a group.
+Use the *Create group* endpoint to generate a new group that you can assign your companies to.
[Groups](https://docs.codat.io/platform-api#/schemas/Group) define a set of companies that are organized based on a chosen characteristic and can be managed in the same way.
+### Tips and traps
+
+* The maximum length for the group name is 50 characters.
+* It's possible to create up to 20 groups per client.
+
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.groups.removeCompany({
- companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- groupId: "60d2fa12-8a04-11ee-b9d1-0242ac120002",
+async function run() {
+ const result = await codatPlatform.groups.create({
+ name: "Corporate cards department",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -194,18 +187,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.RemoveCompanyFromGroupRequest](../../sdk/models/operations/removecompanyfromgrouprequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [shared.GroupPrototype](../../sdk/models/shared/groupprototype.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.RemoveCompanyFromGroupResponse](../../sdk/models/operations/removecompanyfromgroupresponse.md)>**
+**Promise\<[shared.Group](../../sdk/models/shared/group.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,409,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/integrations/README.md b/platform/docs/sdks/integrations/README.md
index 8321792c2..7bb3d33fc 100644
--- a/platform/docs/sdks/integrations/README.md
+++ b/platform/docs/sdks/integrations/README.md
@@ -7,33 +7,33 @@ Get a list of integrations supported by Codat and their logos.
### Available Operations
+* [list](#list) - List integrations
* [get](#get) - Get integration
* [getBranding](#getbranding) - Get branding
-* [list](#list) - List integrations
-## get
+## list
-Get single integration, by platformKey
+List your available integrations
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.integrations.get({
- platformKey: "gbol",
+async function run() {
+ const result = await codatPlatform.integrations.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -41,45 +41,44 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
-| `request` | [operations.GetIntegrationRequest](../../sdk/models/operations/getintegrationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ListIntegrationsRequest](../../sdk/models/operations/listintegrationsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetIntegrationResponse](../../sdk/models/operations/getintegrationresponse.md)>**
+**Promise\<[shared.Integrations](../../sdk/models/shared/integrations.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 400,401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## getBranding
+## get
-Get branding for platform.
+Get single integration, by platformKey
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.integrations.getBranding({
+async function run() {
+ const result = await codatPlatform.integrations.get({
platformKey: "gbol",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -87,47 +86,44 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.GetIntegrationsBrandingRequest](../../sdk/models/operations/getintegrationsbrandingrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetIntegrationRequest](../../sdk/models/operations/getintegrationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetIntegrationsBrandingResponse](../../sdk/models/operations/getintegrationsbrandingresponse.md)>**
+**Promise\<[shared.Integration](../../sdk/models/shared/integration.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## list
+## getBranding
-List your available integrations
+Get branding for platform.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.integrations.list({
- orderBy: "-modifiedDate",
- page: 1,
- pageSize: 100,
+async function run() {
+ const result = await codatPlatform.integrations.getBranding({
+ platformKey: "gbol",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -135,18 +131,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
-| `request` | [operations.ListIntegrationsRequest](../../sdk/models/operations/listintegrationsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetIntegrationsBrandingRequest](../../sdk/models/operations/getintegrationsbrandingrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListIntegrationsResponse](../../sdk/models/operations/listintegrationsresponse.md)>**
+**Promise\<[shared.Branding](../../sdk/models/shared/branding.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/pushdata/README.md b/platform/docs/sdks/pushdata/README.md
index db171693a..5be25705f 100644
--- a/platform/docs/sdks/pushdata/README.md
+++ b/platform/docs/sdks/pushdata/README.md
@@ -8,8 +8,8 @@ Initiate and monitor Create, Update, and Delete operations.
### Available Operations
* [getModelOptions](#getmodeloptions) - Get push options
-* [getOperation](#getoperation) - Get push operation
* [listOperations](#listoperations) - List push operations
+* [getOperation](#getoperation) - Get push operation
## getModelOptions
@@ -28,24 +28,20 @@ Codat tries not to limit users to pushing to a very limited number of standard c
```typescript
import { CodatPlatform } from "@codat/platform";
-import { SchemaDataType } from "@codat/platform/dist/sdk/models/shared";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.pushData.getModelOptions({
+async function run() {
+ const result = await codatPlatform.pushData.getModelOptions({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
- dataType: SchemaDataType.Invoices,
+ dataType: "invoices",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -53,46 +49,48 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.GetCreateUpdateModelOptionsByDataTypeRequest](../../sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetCreateUpdateModelOptionsByDataTypeRequest](../../sdk/models/operations/getcreateupdatemodeloptionsbydatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetCreateUpdateModelOptionsByDataTypeResponse](../../sdk/models/operations/getcreateupdatemodeloptionsbydatatyperesponse.md)>**
+**Promise\<[shared.PushOption](../../sdk/models/shared/pushoption.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## getOperation
+## listOperations
-Retrieve push operation.
+List push operation records.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.pushData.getOperation({
+async function run() {
+ const result = await codatPlatform.pushData.listOperations({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- pushOperationKey: "59acd79e-29d3-4138-91d3-91d4641bf7ed",
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -100,48 +98,45 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
-| `request` | [operations.GetPushOperationRequest](../../sdk/models/operations/getpushoperationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetCompanyPushHistoryRequest](../../sdk/models/operations/getcompanypushhistoryrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetPushOperationResponse](../../sdk/models/operations/getpushoperationresponse.md)>**
+**Promise\<[shared.PushOperations](../../sdk/models/shared/pushoperations.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## listOperations
+## getOperation
-List push operation records.
+Retrieve push operation.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.pushData.listOperations({
+async function run() {
+ const result = await codatPlatform.pushData.getOperation({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- orderBy: "-modifiedDate",
- page: 1,
- pageSize: 100,
+ pushOperationKey: "59acd79e-29d3-4138-91d3-91d4641bf7ed",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -149,18 +144,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
-| `request` | [operations.GetCompanyPushHistoryRequest](../../sdk/models/operations/getcompanypushhistoryrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetPushOperationRequest](../../sdk/models/operations/getpushoperationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetCompanyPushHistoryResponse](../../sdk/models/operations/getcompanypushhistoryresponse.md)>**
+**Promise\<[shared.PushOperation](../../sdk/models/shared/pushoperation.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/refreshdata/README.md b/platform/docs/sdks/refreshdata/README.md
index 004bd4ef3..77f270451 100644
--- a/platform/docs/sdks/refreshdata/README.md
+++ b/platform/docs/sdks/refreshdata/README.md
@@ -10,8 +10,8 @@ Initiate data refreshes, view pull status and history.
* [all](#all) - Refresh all data
* [byDataType](#bydatatype) - Refresh data type
* [get](#get) - Get data status
-* [getPullOperation](#getpulloperation) - Get pull operation
* [listPullOperations](#listpulloperations) - List pull operations
+* [getPullOperation](#getpulloperation) - Get pull operation
## all
@@ -26,20 +26,16 @@ This is an asynchronous operation, and will bring updated data into Codat from t
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.refreshData.all({
+async function run() {
+ await codatPlatform.refreshData.all({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+
}
run();
@@ -47,21 +43,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
-| `request` | [operations.RefreshCompanyDataRequest](../../sdk/models/operations/refreshcompanydatarequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.RefreshCompanyDataRequest](../../sdk/models/operations/refreshcompanydatarequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.RefreshCompanyDataResponse](../../sdk/models/operations/refreshcompanydataresponse.md)>**
+**Promise\**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## byDataType
@@ -73,23 +71,19 @@ This is an asynchronous operation, and will bring updated data into Codat from t
```typescript
import { CodatPlatform } from "@codat/platform";
-import { SchemaDataType } from "@codat/platform/dist/sdk/models/shared";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.refreshData.byDataType({
+async function run() {
+ const result = await codatPlatform.refreshData.byDataType({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- dataType: SchemaDataType.Invoices,
+ dataType: "invoices",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -97,21 +91,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
-| `request` | [operations.RefreshDataTypeRequest](../../sdk/models/operations/refreshdatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.RefreshDataTypeRequest](../../sdk/models/operations/refreshdatatyperequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.RefreshDataTypeResponse](../../sdk/models/operations/refreshdatatyperesponse.md)>**
+**Promise\<[shared.PullOperation](../../sdk/models/shared/pulloperation.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## get
@@ -122,20 +118,17 @@ Get the state of each data type for a company
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.refreshData.get({
+async function run() {
+ const result = await codatPlatform.refreshData.get({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -143,46 +136,48 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
-| `request` | [operations.GetCompanyDataStatusRequest](../../sdk/models/operations/getcompanydatastatusrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetCompanyDataStatusRequest](../../sdk/models/operations/getcompanydatastatusrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetCompanyDataStatusResponse](../../sdk/models/operations/getcompanydatastatusresponse.md)>**
+**Promise\<[shared.DataStatuses](../../sdk/models/shared/datastatuses.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## getPullOperation
+## listPullOperations
-Retrieve information about a single dataset or pull operation.
+Gets the pull operation history (datasets) for a given company.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.refreshData.getPullOperation({
+async function run() {
+ const result = await codatPlatform.refreshData.listPullOperations({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- datasetId: "7911a54a-c808-4f4b-b87e-b195f52b4da5",
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -190,48 +185,45 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
-| `request` | [operations.GetPullOperationRequest](../../sdk/models/operations/getpulloperationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ListPullOperationsRequest](../../sdk/models/operations/listpulloperationsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetPullOperationResponse](../../sdk/models/operations/getpulloperationresponse.md)>**
+**Promise\<[shared.PullOperations](../../sdk/models/shared/pulloperations.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## listPullOperations
+## getPullOperation
-Gets the pull operation history (datasets) for a given company.
+Retrieve information about a single dataset or pull operation.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.refreshData.listPullOperations({
+async function run() {
+ const result = await codatPlatform.refreshData.getPullOperation({
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- orderBy: "-modifiedDate",
- page: 1,
- pageSize: 100,
+ datasetId: "7911a54a-c808-4f4b-b87e-b195f52b4da5",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -239,18 +231,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ |
-| `request` | [operations.ListPullOperationsRequest](../../sdk/models/operations/listpulloperationsrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetPullOperationRequest](../../sdk/models/operations/getpulloperationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListPullOperationsResponse](../../sdk/models/operations/listpulloperationsresponse.md)>**
+**Promise\<[shared.PullOperation](../../sdk/models/shared/pulloperation.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/settings/README.md b/platform/docs/sdks/settings/README.md
index 5c57ad40d..a0658e6b4 100644
--- a/platform/docs/sdks/settings/README.md
+++ b/platform/docs/sdks/settings/README.md
@@ -7,47 +7,32 @@ Manage company profile configuration, sync settings, and API keys.
### Available Operations
-* [createApiKey](#createapikey) - Create API key
-* [deleteApiKey](#deleteapikey) - Delete API key
* [getProfile](#getprofile) - Get profile
-* [getSyncSettings](#getsyncsettings) - Get sync settings
-* [listApiKeys](#listapikeys) - List API keys
* [updateProfile](#updateprofile) - Update profile
+* [getSyncSettings](#getsyncsettings) - Get sync settings
* [updateSyncSettings](#updatesyncsettings) - Update all sync settings
+* [listApiKeys](#listapikeys) - List API keys
+* [createApiKey](#createapikey) - Create API key
+* [deleteApiKey](#deleteapikey) - Delete API key
-## createApiKey
-
-Use the *Create API keys* endpoint to generate a new API key for your client.
-
-[API keys](https://docs.codat.io/platform-api#/schemas/apiKeys) are tokens used to control access to the API. Include this token in the `Authorization` header parameter when making API calls, following the word "Basic" and a space with your API key.
-
-You can [read more](https://docs.codat.io/using-the-api/authentication) about authentication at Codat and managing API keys via the Portal UI or API.
-
-### Tips and pitfalls
+## getProfile
-* Your first API key is created for you. Access this key via [Codat's Portal](https://app.codat.io/developers/api-keys).
-* If you require multiple API keys, perform multiple calls to the *Create API keys* endpoint.
-* The number of API keys is limited to 10. If you have reached the maximum amount of keys, use the *Delete API key* endpoint to delete an unused key first.
+Fetch your Codat profile.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.createApiKey({
- name: "azure-invoice-finance-processor",
- });
+async function run() {
+ const result = await codatPlatform.settings.getProfile();
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -55,54 +40,52 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `request` | [shared.CreateApiKey](../../sdk/models/shared/createapikey.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.CreateApiKeyResponse](../../sdk/models/operations/createapikeyresponse.md)>**
+**Promise\<[shared.Profile](../../sdk/models/shared/profile.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
-
-## deleteApiKey
-
-Use the *Delete API keys* endpoint to delete an existing API key, providing its valid `id` as a parameter. Note that this operation is not reversible.
-
-[API keys](https://docs.codat.io/platform-api#/schemas/apiKeys) are tokens used to control access to the API. Include this token in the `Authorization` header parameter when making API calls, following the word "Basic" and a space with your API key.
-
-You can [read more](https://docs.codat.io/using-the-api/authentication) about authentication at Codat and managing API keys via the Portal UI or API.
+| Error Object | Status Code | Content Type |
+| ----------------------- | ----------------------- | ----------------------- |
+| errors.ErrorMessage | 401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-### Tips and pitfalls
+## updateProfile
-* It is possible to delete the last remaining API key. If this happens, a new key can be created via the [API key management page](https://app.codat.io/developers/api-keys) of the Portal.
-* It is possible to delete the API key used to authenticate the *Delete API key* request.
+Update your Codat profile
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.deleteApiKey({
- apiKeyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
+async function run() {
+ const result = await codatPlatform.settings.updateProfile({
+ name: "Bob's Burgers",
+ logoUrl: "https://client-images.codat.io/logo/042399f5-d104-4f38-9ce8-cac3524f4e88_5806cb1f-7342-4c0e-a0a8-99bfbc47b0ff.png",
+ iconUrl: "https://client-images.codat.io/icon/042399f5-d104-4f38-9ce8-cac3524f4e88_3f5623af-d992-4c22-bc08-e58c520a8526.ico",
+ redirectUrl: "https://bobs-burgers.{countrySuffix}/{companyId}",
+ whiteListUrls: [
+ "https://bobs-burgers.com",
+ "https://bobs-burgers.co.uk",
+ ],
+ alertAuthHeader: "Bearer tXEiHiRK7XCtI8TNHbpGs1LI1pumdb4Cl1QIo7B2",
+ confirmCompanyName: true,
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -110,43 +93,42 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
-| `request` | [operations.DeleteApiKeyRequest](../../sdk/models/operations/deleteapikeyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [shared.Profile](../../sdk/models/shared/profile.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.DeleteApiKeyResponse](../../sdk/models/operations/deleteapikeyresponse.md)>**
+**Promise\<[shared.Profile](../../sdk/models/shared/profile.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ----------------------- | ----------------------- | ----------------------- |
+| errors.ErrorMessage | 401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## getProfile
+## getSyncSettings
-Fetch your Codat profile.
+Retrieve the [sync settings](https://docs.codat.io/knowledge-base/advanced-sync-settings) for your client. This includes how often data types should be queued to be updated, and how much history should be fetched.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.getProfile();
+async function run() {
+ const result = await codatPlatform.settings.getSyncSettings();
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -154,42 +136,54 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetProfileResponse](../../sdk/models/operations/getprofileresponse.md)>**
+**Promise\<[shared.SyncSettings](../../sdk/models/shared/syncsettings.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ----------------------- | ----------------------- | ----------------------- |
+| errors.ErrorMessage | 401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## getSyncSettings
+## updateSyncSettings
-Retrieve the [sync settings](https://docs.codat.io/knowledge-base/advanced-sync-settings) for your client. This includes how often data types should be queued to be updated, and how much history should be fetched.
+Update sync settings for all data types.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
+
async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
+ await codatPlatform.settings.updateSyncSettings({
+ clientId: "ce429104-79f0-4085-a720-e2d40fcc800f",
+ settings: [
+ {
+ dataType: "invoices",
+ fetchOnFirstLink: true,
+ syncSchedule: 24,
+ syncOrder: 0,
+ syncFromUtc: "2020-01-01T12:00:00.000Z",
+ syncFromWindow: 24,
+ monthsToSync: 24,
+ isLocked: true,
+ },
+ ],
});
- const res = await sdk.settings.getSyncSettings();
-
- if (res.statusCode == 200) {
- // handle response
- }
+
}
run();
@@ -197,20 +191,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.UpdateProfileSyncSettingsRequestBody](../../sdk/models/operations/updateprofilesyncsettingsrequestbody.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetProfileSyncSettingsResponse](../../sdk/models/operations/getprofilesyncsettingsresponse.md)>**
+**Promise\**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ----------------------- | ----------------------- | ----------------------- |
+| errors.ErrorMessage | 401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## listApiKeys
@@ -225,18 +222,15 @@ You can [read more](https://docs.codat.io/using-the-api/authentication) about au
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.listApiKeys();
+async function run() {
+ const result = await codatPlatform.settings.listApiKeys();
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -244,54 +238,53 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListApiKeysResponse](../../sdk/models/operations/listapikeysresponse.md)>**
+**Promise\<[shared.ApiKeys](../../sdk/models/shared/apikeys.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ----------------------- | ----------------------- | ----------------------- |
+| errors.ErrorMessage | 401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## updateProfile
+## createApiKey
-Update your Codat profile
+Use the *Create API keys* endpoint to generate a new API key for your client.
+
+[API keys](https://docs.codat.io/platform-api#/schemas/apiKeys) are tokens used to control access to the API. Include this token in the `Authorization` header parameter when making API calls, following the word "Basic" and a space with your API key.
+
+You can [read more](https://docs.codat.io/using-the-api/authentication) about authentication at Codat and managing API keys via the Portal UI or API.
+
+### Tips and pitfalls
+
+* Your first API key is created for you. Access this key via [Codat's Portal](https://app.codat.io/developers/api-keys).
+* If you require multiple API keys, perform multiple calls to the *Create API keys* endpoint.
+* The number of API keys is limited to 10. If you have reached the maximum amount of keys, use the *Delete API key* endpoint to delete an unused key first.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.updateProfile({
- alertAuthHeader: "Bearer tXEiHiRK7XCtI8TNHbpGs1LI1pumdb4Cl1QIo7B2",
- apiKey: "sartANTjHAkLdbyDfaynoTQb7pkmj6hXHmnQKMrB",
- confirmCompanyName: true,
- iconUrl: "https://client-images.codat.io/icon/042399f5-d104-4f38-9ce8-cac3524f4e88_3f5623af-d992-4c22-bc08-e58c520a8526.ico",
- logoUrl: "https://client-images.codat.io/logo/042399f5-d104-4f38-9ce8-cac3524f4e88_5806cb1f-7342-4c0e-a0a8-99bfbc47b0ff.png",
- name: "Bob's Burgers",
- redirectUrl: "https://bobs-burgers.{countrySuffix}/{companyId}",
- whiteListUrls: [
- "https://bobs-burgers.com",
- "https://bobs-burgers.co.uk",
- ],
+async function run() {
+ const result = await codatPlatform.settings.createApiKey({
+ name: "azure-invoice-finance-processor",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -299,59 +292,53 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `request` | [shared.Profile](../../sdk/models/shared/profile.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [shared.CreateApiKey](../../sdk/models/shared/createapikey.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.UpdateProfileResponse](../../sdk/models/operations/updateprofileresponse.md)>**
+**Promise\<[shared.ApiKeyDetails](../../sdk/models/shared/apikeydetails.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,409,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## updateSyncSettings
+## deleteApiKey
-Update sync settings for all data types.
+Use the *Delete API keys* endpoint to delete an existing API key, providing its valid `id` as a parameter. Note that this operation is not reversible.
+
+[API keys](https://docs.codat.io/platform-api#/schemas/apiKeys) are tokens used to control access to the API. Include this token in the `Authorization` header parameter when making API calls, following the word "Basic" and a space with your API key.
+
+You can [read more](https://docs.codat.io/using-the-api/authentication) about authentication at Codat and managing API keys via the Portal UI or API.
+
+### Tips and pitfalls
+
+* It is possible to delete the last remaining API key. If this happens, a new key can be created via the [API key management page](https://app.codat.io/developers/api-keys) of the Portal.
+* It is possible to delete the API key used to authenticate the *Delete API key* request.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-import { DataType } from "@codat/platform/dist/sdk/models/shared";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.settings.updateSyncSettings({
- clientId: "ce429104-79f0-4085-a720-e2d40fcc800f",
- overridesDefaults: false,
- settings: [
- {
- dataType: DataType.Invoices,
- fetchOnFirstLink: true,
- isLocked: true,
- monthsToSync: 24,
- syncFromUtc: "2020-01-01T12:00:00.000Z",
- syncFromWindow: 24,
- syncOrder: 0,
- syncSchedule: 24,
- },
- ],
+async function run() {
+ const result = await codatPlatform.settings.deleteApiKey({
+ apiKeyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -359,18 +346,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.UpdateProfileSyncSettingsRequestBody](../../sdk/models/operations/updateprofilesyncsettingsrequestbody.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.DeleteApiKeyRequest](../../sdk/models/operations/deleteapikeyrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.UpdateProfileSyncSettingsResponse](../../sdk/models/operations/updateprofilesyncsettingsresponse.md)>**
+**Promise\<[errors.ErrorMessage](../../sdk/models/errors/errormessage.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/supplementaldata/README.md b/platform/docs/sdks/supplementaldata/README.md
index 82edeb4ca..b5d2e1f76 100644
--- a/platform/docs/sdks/supplementaldata/README.md
+++ b/platform/docs/sdks/supplementaldata/README.md
@@ -23,16 +23,15 @@ See the *examples* for integration-specific frequently requested properties.
```typescript
import { CodatPlatform } from "@codat/platform";
-import { DataType } from "@codat/platform/dist/sdk/models/operations";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.supplementalData.configure({
+async function run() {
+ await codatPlatform.supplementalData.configure({
+ platformKey: "gbol",
+ dataType: "invoices",
supplementalDataConfiguration: {
supplementalDataConfig: {
"orders-supplemental-data": {
@@ -46,13 +45,9 @@ async function run() {
},
},
},
- dataType: DataType.Invoices,
- platformKey: "gbol",
});
- if (res.statusCode == 200) {
- // handle response
- }
+
}
run();
@@ -60,21 +55,23 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.ConfigureSupplementalDataRequest](../../sdk/models/operations/configuresupplementaldatarequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ConfigureSupplementalDataRequest](../../sdk/models/operations/configuresupplementaldatarequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ConfigureSupplementalDataResponse](../../sdk/models/operations/configuresupplementaldataresponse.md)>**
+**Promise\**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
## getConfiguration
@@ -86,23 +83,19 @@ The *Get configuration* endpoint returns supplemental data configuration previou
```typescript
import { CodatPlatform } from "@codat/platform";
-import { PathParamDataType } from "@codat/platform/dist/sdk/models/operations";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.supplementalData.getConfiguration({
- dataType: PathParamDataType.Invoices,
+async function run() {
+ const result = await codatPlatform.supplementalData.getConfiguration({
platformKey: "gbol",
+ dataType: "invoices",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -110,18 +103,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
-| `request` | [operations.GetSupplementalDataConfigurationRequest](../../sdk/models/operations/getsupplementaldataconfigurationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetSupplementalDataConfigurationRequest](../../sdk/models/operations/getsupplementaldataconfigurationrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetSupplementalDataConfigurationResponse](../../sdk/models/operations/getsupplementaldataconfigurationresponse.md)>**
+**Promise\<[shared.SupplementalDataConfiguration](../../sdk/models/shared/supplementaldataconfiguration.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/docs/sdks/webhooks/README.md b/platform/docs/sdks/webhooks/README.md
index 3b9eba3ac..a60b1968c 100644
--- a/platform/docs/sdks/webhooks/README.md
+++ b/platform/docs/sdks/webhooks/README.md
@@ -7,16 +7,16 @@ Create and manage webhooks that listen to Codat's events.
### Available Operations
+* [~~list~~](#list) - List webhooks :warning: **Deprecated**
* [~~create~~](#create) - Create webhook :warning: **Deprecated**
-* [createConsumer](#createconsumer) - Create webhook consumer
-* [deleteConsumer](#deleteconsumer) - Delete webhook consumer
* [~~get~~](#get) - Get webhook :warning: **Deprecated**
-* [~~list~~](#list) - List webhooks :warning: **Deprecated**
* [listConsumers](#listconsumers) - List webhook consumers
+* [createConsumer](#createconsumer) - Create webhook consumer
+* [deleteConsumer](#deleteconsumer) - Delete webhook consumer
-## ~~create~~
+## ~~list~~
-Create a new webhook configuration
+List webhooks that you are subscribed to.
> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible.
@@ -25,27 +25,20 @@ Create a new webhook configuration
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.webhooks.create({
- companyId: "39b73b17-cc2e-429e-915d-71654e9dcd1e",
- notifiers: {
- emails: [
- "info@client.com",
- ],
- webhook: "https://webhook.client.com",
- },
- type: "DataConnectionStatusChanged",
+async function run() {
+ const result = await codatPlatform.webhooks.list({
+ page: 1,
+ pageSize: 100,
+ query: "id=e3334455-1aed-4e71-ab43-6bccf12092ee",
+ orderBy: "-modifiedDate",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -53,50 +46,53 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `request` | [shared.CreateRule](../../sdk/models/shared/createrule.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.ListRulesRequest](../../sdk/models/operations/listrulesrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.CreateRuleResponse](../../sdk/models/operations/createruleresponse.md)>**
+**Promise\<[shared.Webhooks](../../sdk/models/shared/webhooks.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ------------------------------- | ------------------------------- | ------------------------------- |
+| errors.ErrorMessage | 400,401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## createConsumer
+## ~~create~~
-Use the *Create webhook consumer* endpoint to create a new webhook consumer that will listen to messages we send you.
+Create a new webhook configuration
-[Webhook consumer](https://docs.codat.io/platform-api#/schemas/WebhookConsumer) is an HTTP endpoint that you configure to subscribe to specific events. See our documentation for more details on [Codat's webhook service](https://docs.codat.io/using-the-api/webhooks/overview).
+> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
+
async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+ const result = await codatPlatform.webhooks.create({
+ type: "DataConnectionStatusChanged",
+ companyId: "39b73b17-cc2e-429e-915d-71654e9dcd1e",
+ notifiers: {
+ emails: [
+ "info@client.com",
+ ],
+ webhook: "https://webhook.client.com",
},
});
- const res = await sdk.webhooks.createConsumer({
- companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
- eventTypes: [
- "",
- ],
- });
-
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -104,47 +100,46 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
-| `request` | [shared.WebhookConsumerPrototype](../../sdk/models/shared/webhookconsumerprototype.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [shared.CreateRule](../../sdk/models/shared/createrule.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.CreateWebhookConsumerResponse](../../sdk/models/operations/createwebhookconsumerresponse.md)>**
+**Promise\<[shared.Webhook](../../sdk/models/shared/webhook.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| ----------------------- | ----------------------- | ----------------------- |
+| errors.ErrorMessage | 401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## deleteConsumer
+## ~~get~~
-Use the *Delete webhook consumer* endpoint to delete an existing webhoook consumer, providing its valid `id` as a parameter.
+Get a single webhook
-[Webhook consumer](https://docs.codat.io/platform-api#/schemas/WebhookConsumer) is an HTTP endpoint that you configure to subscribe to specific events. See our documentation for more details on [Codat's webhook service](https://docs.codat.io/using-the-api/webhooks/overview).
+> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.webhooks.deleteConsumer({
- webhookId: "8a210b68-6988-11ed-a1eb-0242ac120002",
+async function run() {
+ const result = await codatPlatform.webhooks.get({
+ ruleId: "7318949f-c008-4936-a8ff-10d7ab563fa6",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -152,47 +147,44 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
-| `request` | [operations.DeleteWebhookConsumerRequest](../../sdk/models/operations/deletewebhookconsumerrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.GetWebhookRequest](../../sdk/models/operations/getwebhookrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.DeleteWebhookConsumerResponse](../../sdk/models/operations/deletewebhookconsumerresponse.md)>**
+**Promise\<[shared.Webhook](../../sdk/models/shared/webhook.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## ~~get~~
+## listConsumers
-Get a single webhook
+Use the *List webhook consumers* endpoint to return a list of all webhook consumers that currently exist for your client.
-> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible.
+[Webhook consumer](https://docs.codat.io/platform-api#/schemas/WebhookConsumer) is an HTTP endpoint that you configure to subscribe to specific events. See our documentation for more details on [Codat's webhook service](https://docs.codat.io/using-the-api/webhooks/overview).
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.webhooks.get({
- ruleId: "7318949f-c008-4936-a8ff-10d7ab563fa6",
- });
+async function run() {
+ const result = await codatPlatform.webhooks.listConsumers();
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -200,49 +192,53 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
-| `request` | [operations.GetWebhookRequest](../../sdk/models/operations/getwebhookrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.GetWebhookResponse](../../sdk/models/operations/getwebhookresponse.md)>**
+**Promise\<[shared.WebhookConsumers](../../sdk/models/shared/webhookconsumers.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 400,401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## ~~list~~
+## createConsumer
-List webhooks that you are subscribed to.
+Use the *Create webhook consumer* endpoint to create a new webhook consumer that will listen to messages we send you.
-> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible.
+[Webhook consumer](https://docs.codat.io/platform-api#/schemas/WebhookConsumer) is an HTTP endpoint that you configure to subscribe to specific events. See our documentation for more details on [Codat's webhook service](https://docs.codat.io/using-the-api/webhooks/overview).
+
+### Tips and traps
+- The number of webhook consumers you can create is limited to 50. If you have reached the maximum number of consumers, use the [*Delete webhook consumer*](https://docs.codat.io/platform-api#/operations/delete-webhook-consumer) endpoint to delete an unused consumer first.
### Example Usage
```typescript
import { CodatPlatform } from "@codat/platform";
-async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
- });
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
- const res = await sdk.webhooks.list({
- orderBy: "-modifiedDate",
- page: 1,
- pageSize: 100,
+async function run() {
+ const result = await codatPlatform.webhooks.createConsumer({
+ url: "https://example.com/webhoook-consumer",
+ eventTypes: [
+ "DataSyncCompleted",
+ "Dataset data changed",
+ ],
+ companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- if (res.statusCode == 200) {
- // handle response
- }
+ // Handle the result
+ console.log(result)
}
run();
@@ -250,25 +246,27 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
-| `request` | [operations.ListRulesRequest](../../sdk/models/operations/listrulesrequest.md) | :heavy_check_mark: | The request object to use for the request. |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [shared.WebhookConsumerPrototype](../../sdk/models/shared/webhookconsumerprototype.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListRulesResponse](../../sdk/models/operations/listrulesresponse.md)>**
+**Promise\<[shared.WebhookConsumer](../../sdk/models/shared/webhookconsumer.md)\>**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 400,401,402,403,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
-## listConsumers
+## deleteConsumer
-Use the *List webhook consumers* endpoint to return a list of all webhook consumers that currently exist for your client.
+Use the *Delete webhook consumer* endpoint to delete an existing webhoook consumer, providing its valid `id` as a parameter.
[Webhook consumer](https://docs.codat.io/platform-api#/schemas/WebhookConsumer) is an HTTP endpoint that you configure to subscribe to specific events. See our documentation for more details on [Codat's webhook service](https://docs.codat.io/using-the-api/webhooks/overview).
@@ -277,18 +275,16 @@ run();
```typescript
import { CodatPlatform } from "@codat/platform";
+const codatPlatform = new CodatPlatform({
+ authHeader: "Basic BASE_64_ENCODED(API_KEY)",
+});
+
async function run() {
- const sdk = new CodatPlatform({
- security: {
- authHeader: "Basic BASE_64_ENCODED(API_KEY)",
- },
+ await codatPlatform.webhooks.deleteConsumer({
+ webhookId: "8a210b68-6988-11ed-a1eb-0242ac120002",
});
- const res = await sdk.webhooks.listConsumers();
-
- if (res.statusCode == 200) {
- // handle response
- }
+
}
run();
@@ -296,17 +292,20 @@ run();
### Parameters
-| Parameter | Type | Required | Description |
-| ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- |
-| `retries` | [utils.RetryConfig](../../internal/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. |
-| `config` | [AxiosRequestConfig](https://axios-http.com/docs/req_config) | :heavy_minus_sign: | Available config options for making requests. |
+| Parameter | Type | Required | Description |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `request` | [operations.DeleteWebhookConsumerRequest](../../sdk/models/operations/deletewebhookconsumerrequest.md) | :heavy_check_mark: | The request object to use for the request. |
+| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
+| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | 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](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
### Response
-**Promise<[operations.ListWebhookConsumersResponse](../../sdk/models/operations/listwebhookconsumersresponse.md)>**
+**Promise\**
### Errors
-| Error Object | Status Code | Content Type |
-| --------------- | --------------- | --------------- |
-| errors.SDKError | 4xx-5xx | */* |
+| Error Object | Status Code | Content Type |
+| --------------------------- | --------------------------- | --------------------------- |
+| errors.ErrorMessage | 401,402,403,404,429,500,503 | application/json |
+| errors.SDKError | 4xx-5xx | */* |
diff --git a/platform/gen.yaml b/platform/gen.yaml
index 253666b94..31b5f05bf 100644
--- a/platform/gen.yaml
+++ b/platform/gen.yaml
@@ -34,6 +34,7 @@ typescript:
inputModelSuffix: input
maxMethodParams: 0
methodArguments: infer-optional-args
+ moduleFormat: commonjs
outputModelSuffix: output
packageName: '@codat/platform'
responseFormat: flat
diff --git a/platform/jest.config.js b/platform/jest.config.js
deleted file mode 100644
index e45198852..000000000
--- a/platform/jest.config.js
+++ /dev/null
@@ -1,8 +0,0 @@
-module.exports = {
- preset: "ts-jest",
- testEnvironment: "node",
- testPathIgnorePatterns: [
- "/__tests__/helpers.ts",
- "/__tests__/common_helpers.ts",
- ],
-};
diff --git a/platform/jsr.json b/platform/jsr.json
new file mode 100644
index 000000000..a4073b56e
--- /dev/null
+++ b/platform/jsr.json
@@ -0,0 +1,27 @@
+
+
+{
+ "name": "@codat/platform",
+ "version": "3.0.0",
+ "exports": {
+ ".": "./src/index.ts",
+ "./sdk/models/errors": "./src/sdk/models/errors/index.ts",
+ "./sdk/models/shared": "./src/sdk/models/shared/index.ts",
+ "./sdk/models/operations": "./src/sdk/models/operations/index.ts",
+ "./lib/config": "./src/lib/config.ts",
+ "./lib/http": "./src/lib/http.ts",
+ "./lib/retries": "./src/lib/retries.ts",
+ "./lib/sdks": "./src/lib/sdks.ts",
+ "./types": "./src/sdk/types/index.ts"
+ },
+ "publish": {
+ "include": [
+ "LICENSE",
+ "README.md",
+ "RUNTIMES.md",
+ "USAGE.md",
+ "jsr.json",
+ "src/**/*.ts"
+ ]
+ }
+}
diff --git a/platform/package-lock.json b/platform/package-lock.json
index b96708740..1dcafbc6d 100644
--- a/platform/package-lock.json
+++ b/platform/package-lock.json
@@ -1,26 +1,24 @@
{
"name": "@codat/platform",
- "version": "2.5.0",
- "lockfileVersion": 2,
+ "version": "3.0.0",
+ "lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@codat/platform",
- "version": "2.5.0",
- "dependencies": {
- "axios": "^1.1.3",
- "class-transformer": "^0.5.1",
- "form-data": "^4.0.0",
- "jsonpath": "^1.1.1",
- "reflect-metadata": "^0.1.13"
- },
+ "version": "3.0.0",
"devDependencies": {
- "@types/jsonpath": "^0.2.0",
- "@types/node": "^18.11.5",
- "@typescript-eslint/eslint-plugin": "^5.56.0",
- "@typescript-eslint/parser": "^5.56.0",
- "eslint": "^8.36.0",
- "typescript": "^4.8.4"
+ "@types/jsonpath": "^0.2.4",
+ "@typescript-eslint/eslint-plugin": "^7.7.1",
+ "@typescript-eslint/parser": "^7.7.1",
+ "eslint": "^8.57.0",
+ "eslint-import-resolver-typescript": "^3.6.1",
+ "eslint-plugin-import": "^2.29.1",
+ "typescript": "^5.4.5",
+ "zod": "^3.23.4"
+ },
+ "peerDependencies": {
+ "zod": ">= 3"
}
},
"node_modules/@eslint-community/eslint-utils": {
@@ -39,23 +37,23 @@
}
},
"node_modules/@eslint-community/regexpp": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.1.tgz",
- "integrity": "sha512-BISJ6ZE4xQsuL/FmsyRaiffpq977bMlsKfGHTQrOGFErfByxIe6iZTxPf/00Zon9b9a7iUykfQwejN3s2ZW/Bw==",
+ "version": "4.11.0",
+ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz",
+ "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==",
"dev": true,
"engines": {
"node": "^12.0.0 || ^14.0.0 || >=16.0.0"
}
},
"node_modules/@eslint/eslintrc": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.1.tgz",
- "integrity": "sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==",
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
+ "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
"dev": true,
"dependencies": {
"ajv": "^6.12.4",
"debug": "^4.3.2",
- "espree": "^9.5.0",
+ "espree": "^9.6.0",
"globals": "^13.19.0",
"ignore": "^5.2.0",
"import-fresh": "^3.2.1",
@@ -70,29 +68,74 @@
"url": "https://opencollective.com/eslint"
}
},
+ "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/@eslint/eslintrc/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/@eslint/js": {
- "version": "8.36.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.36.0.tgz",
- "integrity": "sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==",
+ "version": "8.57.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
+ "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
"node_modules/@humanwhocodes/config-array": {
- "version": "0.11.8",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
- "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==",
+ "version": "0.11.14",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
+ "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
+ "deprecated": "Use @eslint/config-array instead",
"dev": true,
"dependencies": {
- "@humanwhocodes/object-schema": "^1.2.1",
- "debug": "^4.1.1",
+ "@humanwhocodes/object-schema": "^2.0.2",
+ "debug": "^4.3.1",
"minimatch": "^3.0.5"
},
"engines": {
"node": ">=10.10.0"
}
},
+ "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/@humanwhocodes/module-importer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
@@ -107,9 +150,10 @@
}
},
"node_modules/@humanwhocodes/object-schema": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
- "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
+ "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
+ "deprecated": "Use @eslint/object-schema instead",
"dev": true
},
"node_modules/@nodelib/fs.scandir": {
@@ -147,57 +191,44 @@
"node": ">= 8"
}
},
- "node_modules/@types/json-schema": {
- "version": "7.0.11",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
- "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==",
+ "node_modules/@types/json5": {
+ "version": "0.0.29",
+ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
+ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==",
"dev": true
},
"node_modules/@types/jsonpath": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/@types/jsonpath/-/jsonpath-0.2.0.tgz",
- "integrity": "sha512-v7qlPA0VpKUlEdhghbDqRoKMxFB3h3Ch688TApBJ6v+XLDdvWCGLJIYiPKGZnS6MAOie+IorCfNYVHOPIHSWwQ==",
- "dev": true
- },
- "node_modules/@types/node": {
- "version": "18.11.9",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz",
- "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==",
- "dev": true
- },
- "node_modules/@types/semver": {
- "version": "7.3.13",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz",
- "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==",
+ "version": "0.2.4",
+ "resolved": "https://registry.npmjs.org/@types/jsonpath/-/jsonpath-0.2.4.tgz",
+ "integrity": "sha512-K3hxB8Blw0qgW6ExKgMbXQv2UPZBoE2GqLpVY+yr7nMD2Pq86lsuIzyAaiQ7eMqFL5B6di6pxSkogLJEyEHoGA==",
"dev": true
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.56.0.tgz",
- "integrity": "sha512-ZNW37Ccl3oMZkzxrYDUX4o7cnuPgU+YrcaYXzsRtLB16I1FR5SHMqga3zGsaSliZADCWo2v8qHWqAYIj8nWCCg==",
- "dev": true,
- "dependencies": {
- "@eslint-community/regexpp": "^4.4.0",
- "@typescript-eslint/scope-manager": "5.56.0",
- "@typescript-eslint/type-utils": "5.56.0",
- "@typescript-eslint/utils": "5.56.0",
- "debug": "^4.3.4",
- "grapheme-splitter": "^1.0.4",
- "ignore": "^5.2.0",
- "natural-compare-lite": "^1.4.0",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.16.0.tgz",
+ "integrity": "sha512-py1miT6iQpJcs1BiJjm54AMzeuMPBSPuKPlnT8HlfudbcS5rYeX5jajpLf3mrdRh9dA/Ec2FVUY0ifeVNDIhZw==",
+ "dev": true,
+ "dependencies": {
+ "@eslint-community/regexpp": "^4.10.0",
+ "@typescript-eslint/scope-manager": "7.16.0",
+ "@typescript-eslint/type-utils": "7.16.0",
+ "@typescript-eslint/utils": "7.16.0",
+ "@typescript-eslint/visitor-keys": "7.16.0",
+ "graphemer": "^1.4.0",
+ "ignore": "^5.3.1",
+ "natural-compare": "^1.4.0",
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "@typescript-eslint/parser": "^5.0.0",
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ "@typescript-eslint/parser": "^7.0.0",
+ "eslint": "^8.56.0"
},
"peerDependenciesMeta": {
"typescript": {
@@ -206,25 +237,26 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.56.0.tgz",
- "integrity": "sha512-sn1OZmBxUsgxMmR8a8U5QM/Wl+tyqlH//jTqCg8daTAmhAk26L2PFhcqPLlYBhYUJMZJK276qLXlHN3a83o2cg==",
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.16.0.tgz",
+ "integrity": "sha512-ar9E+k7CU8rWi2e5ErzQiC93KKEFAXA2Kky0scAlPcxYblLt8+XZuHUZwlyfXILyQa95P6lQg+eZgh/dDs3+Vw==",
"dev": true,
"dependencies": {
- "@typescript-eslint/scope-manager": "5.56.0",
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/typescript-estree": "5.56.0",
+ "@typescript-eslint/scope-manager": "7.16.0",
+ "@typescript-eslint/types": "7.16.0",
+ "@typescript-eslint/typescript-estree": "7.16.0",
+ "@typescript-eslint/visitor-keys": "7.16.0",
"debug": "^4.3.4"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ "eslint": "^8.56.0"
},
"peerDependenciesMeta": {
"typescript": {
@@ -233,16 +265,16 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.56.0.tgz",
- "integrity": "sha512-jGYKyt+iBakD0SA5Ww8vFqGpoV2asSjwt60Gl6YcO8ksQ8s2HlUEyHBMSa38bdLopYqGf7EYQMUIGdT/Luw+sw==",
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.16.0.tgz",
+ "integrity": "sha512-8gVv3kW6n01Q6TrI1cmTZ9YMFi3ucDT7i7aI5lEikk2ebk1AEjrwX8MDTdaX5D7fPXMBLvnsaa0IFTAu+jcfOw==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/visitor-keys": "5.56.0"
+ "@typescript-eslint/types": "7.16.0",
+ "@typescript-eslint/visitor-keys": "7.16.0"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
@@ -250,25 +282,25 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.56.0.tgz",
- "integrity": "sha512-8WxgOgJjWRy6m4xg9KoSHPzBNZeQbGlQOH7l2QEhQID/+YseaFxg5J/DLwWSsi9Axj4e/cCiKx7PVzOq38tY4A==",
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.16.0.tgz",
+ "integrity": "sha512-j0fuUswUjDHfqV/UdW6mLtOQQseORqfdmoBNDFOqs9rvNVR2e+cmu6zJu/Ku4SDuqiJko6YnhwcL8x45r8Oqxg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/typescript-estree": "5.56.0",
- "@typescript-eslint/utils": "5.56.0",
+ "@typescript-eslint/typescript-estree": "7.16.0",
+ "@typescript-eslint/utils": "7.16.0",
"debug": "^4.3.4",
- "tsutils": "^3.21.0"
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "*"
+ "eslint": "^8.56.0"
},
"peerDependenciesMeta": {
"typescript": {
@@ -277,12 +309,12 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.56.0.tgz",
- "integrity": "sha512-JyAzbTJcIyhuUhogmiu+t79AkdnqgPUEsxMTMc/dCZczGMJQh1MK2wgrju++yMN6AWroVAy2jxyPcPr3SWCq5w==",
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.16.0.tgz",
+ "integrity": "sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw==",
"dev": true,
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
@@ -290,21 +322,22 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.56.0.tgz",
- "integrity": "sha512-41CH/GncsLXOJi0jb74SnC7jVPWeVJ0pxQj8bOjH1h2O26jXN3YHKDT1ejkVz5YeTEQPeLCCRY0U2r68tfNOcg==",
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.16.0.tgz",
+ "integrity": "sha512-a5NTvk51ZndFuOLCh5OaJBELYc2O3Zqxfl3Js78VFE1zE46J2AaVuW+rEbVkQznjkmlzWsUI15BG5tQMixzZLw==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/visitor-keys": "5.56.0",
+ "@typescript-eslint/types": "7.16.0",
+ "@typescript-eslint/visitor-keys": "7.16.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
+ "minimatch": "^9.0.4",
+ "semver": "^7.6.0",
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
@@ -317,52 +350,54 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.56.0.tgz",
- "integrity": "sha512-XhZDVdLnUJNtbzaJeDSCIYaM+Tgr59gZGbFuELgF7m0IY03PlciidS7UQNKLE0+WpUTn1GlycEr6Ivb/afjbhA==",
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.16.0.tgz",
+ "integrity": "sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA==",
"dev": true,
"dependencies": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@types/json-schema": "^7.0.9",
- "@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.56.0",
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/typescript-estree": "5.56.0",
- "eslint-scope": "^5.1.1",
- "semver": "^7.3.7"
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@typescript-eslint/scope-manager": "7.16.0",
+ "@typescript-eslint/types": "7.16.0",
+ "@typescript-eslint/typescript-estree": "7.16.0"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ "eslint": "^8.56.0"
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.56.0.tgz",
- "integrity": "sha512-1mFdED7u5bZpX6Xxf5N9U2c18sb+8EvU3tyOIj6LQZ5OOvnmj8BVeNNP603OFPm5KkS1a7IvCIcwrdHXaEMG/Q==",
+ "version": "7.16.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.16.0.tgz",
+ "integrity": "sha512-rMo01uPy9C7XxG7AFsxa8zLnWXTF8N3PYclekWSrurvhwiw1eW88mrKiAYe6s53AUY57nTRz8dJsuuXdkAhzCg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "5.56.0",
- "eslint-visitor-keys": "^3.3.0"
+ "@typescript-eslint/types": "7.16.0",
+ "eslint-visitor-keys": "^3.4.3"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
}
},
+ "node_modules/@ungap/structured-clone": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
+ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==",
+ "dev": true
+ },
"node_modules/acorn": {
- "version": "8.8.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz",
- "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==",
+ "version": "8.12.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
+ "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==",
"dev": true,
"bin": {
"acorn": "bin/acorn"
@@ -426,6 +461,42 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
+ "node_modules/array-buffer-byte-length": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz",
+ "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.5",
+ "is-array-buffer": "^3.0.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array-includes": {
+ "version": "3.1.8",
+ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz",
+ "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-object-atoms": "^1.0.0",
+ "get-intrinsic": "^1.2.4",
+ "is-string": "^1.0.7"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/array-union": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
@@ -435,19 +506,97 @@
"node": ">=8"
}
},
- "node_modules/asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
+ "node_modules/array.prototype.findlastindex": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz",
+ "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0",
+ "es-shim-unscopables": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.flat": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz",
+ "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.2.0",
+ "es-abstract": "^1.22.1",
+ "es-shim-unscopables": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.flatmap": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz",
+ "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.2.0",
+ "es-abstract": "^1.22.1",
+ "es-shim-unscopables": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/arraybuffer.prototype.slice": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz",
+ "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==",
+ "dev": true,
+ "dependencies": {
+ "array-buffer-byte-length": "^1.0.1",
+ "call-bind": "^1.0.5",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.22.3",
+ "es-errors": "^1.2.1",
+ "get-intrinsic": "^1.2.3",
+ "is-array-buffer": "^3.0.4",
+ "is-shared-array-buffer": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "node_modules/axios": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.1.3.tgz",
- "integrity": "sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==",
+ "node_modules/available-typed-arrays": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
+ "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
+ "dev": true,
"dependencies": {
- "follow-redirects": "^1.15.0",
- "form-data": "^4.0.0",
- "proxy-from-env": "^1.1.0"
+ "possible-typed-array-names": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/balanced-match": {
@@ -457,27 +606,45 @@
"dev": true
},
"node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "balanced-match": "^1.0.0"
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
}
},
+ "node_modules/call-bind": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
+ "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==",
+ "dev": true,
+ "dependencies": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "set-function-length": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
@@ -503,11 +670,6 @@
"url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "node_modules/class-transformer": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz",
- "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw=="
- },
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -526,17 +688,6 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "node_modules/combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "dependencies": {
- "delayed-stream": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
@@ -557,10 +708,61 @@
"node": ">= 8"
}
},
+ "node_modules/data-view-buffer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz",
+ "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.6",
+ "es-errors": "^1.3.0",
+ "is-data-view": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/data-view-byte-length": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz",
+ "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "es-errors": "^1.3.0",
+ "is-data-view": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/data-view-byte-offset": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz",
+ "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.6",
+ "es-errors": "^1.3.0",
+ "is-data-view": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "version": "4.3.5",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz",
+ "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==",
"dev": true,
"dependencies": {
"ms": "2.1.2"
@@ -577,14 +779,41 @@
"node_modules/deep-is": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
- "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
+ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
+ "dev": true
},
- "node_modules/delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "node_modules/define-data-property": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
+ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
+ "dev": true,
+ "dependencies": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.0.1"
+ },
"engines": {
- "node": ">=0.4.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/define-properties": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
+ "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
+ "dev": true,
+ "dependencies": {
+ "define-data-property": "^1.0.1",
+ "has-property-descriptors": "^1.0.0",
+ "object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/dir-glob": {
@@ -611,120 +840,187 @@
"node": ">=6.0.0"
}
},
- "node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "node_modules/enhanced-resolve": {
+ "version": "5.17.0",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
+ "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
"dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.4",
+ "tapable": "^2.2.0"
+ },
"engines": {
- "node": ">=10"
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/es-abstract": {
+ "version": "1.23.3",
+ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz",
+ "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==",
+ "dev": true,
+ "dependencies": {
+ "array-buffer-byte-length": "^1.0.1",
+ "arraybuffer.prototype.slice": "^1.0.3",
+ "available-typed-arrays": "^1.0.7",
+ "call-bind": "^1.0.7",
+ "data-view-buffer": "^1.0.1",
+ "data-view-byte-length": "^1.0.1",
+ "data-view-byte-offset": "^1.0.0",
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0",
+ "es-set-tostringtag": "^2.0.3",
+ "es-to-primitive": "^1.2.1",
+ "function.prototype.name": "^1.1.6",
+ "get-intrinsic": "^1.2.4",
+ "get-symbol-description": "^1.0.2",
+ "globalthis": "^1.0.3",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.2",
+ "has-proto": "^1.0.3",
+ "has-symbols": "^1.0.3",
+ "hasown": "^2.0.2",
+ "internal-slot": "^1.0.7",
+ "is-array-buffer": "^3.0.4",
+ "is-callable": "^1.2.7",
+ "is-data-view": "^1.0.1",
+ "is-negative-zero": "^2.0.3",
+ "is-regex": "^1.1.4",
+ "is-shared-array-buffer": "^1.0.3",
+ "is-string": "^1.0.7",
+ "is-typed-array": "^1.1.13",
+ "is-weakref": "^1.0.2",
+ "object-inspect": "^1.13.1",
+ "object-keys": "^1.1.1",
+ "object.assign": "^4.1.5",
+ "regexp.prototype.flags": "^1.5.2",
+ "safe-array-concat": "^1.1.2",
+ "safe-regex-test": "^1.0.3",
+ "string.prototype.trim": "^1.2.9",
+ "string.prototype.trimend": "^1.0.8",
+ "string.prototype.trimstart": "^1.0.8",
+ "typed-array-buffer": "^1.0.2",
+ "typed-array-byte-length": "^1.0.1",
+ "typed-array-byte-offset": "^1.0.2",
+ "typed-array-length": "^1.0.6",
+ "unbox-primitive": "^1.0.2",
+ "which-typed-array": "^1.1.15"
+ },
+ "engines": {
+ "node": ">= 0.4"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/escodegen": {
- "version": "1.14.3",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz",
- "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==",
+ "node_modules/es-define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
+ "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
+ "dev": true,
"dependencies": {
- "esprima": "^4.0.1",
- "estraverse": "^4.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1"
- },
- "bin": {
- "escodegen": "bin/escodegen.js",
- "esgenerate": "bin/esgenerate.js"
+ "get-intrinsic": "^1.2.4"
},
"engines": {
- "node": ">=4.0"
- },
- "optionalDependencies": {
- "source-map": "~0.6.1"
+ "node": ">= 0.4"
}
},
- "node_modules/escodegen/node_modules/esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
- "bin": {
- "esparse": "bin/esparse.js",
- "esvalidate": "bin/esvalidate.js"
- },
+ "node_modules/es-errors": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
+ "dev": true,
"engines": {
- "node": ">=4"
+ "node": ">= 0.4"
}
},
- "node_modules/escodegen/node_modules/levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
+ "node_modules/es-object-atoms": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz",
+ "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==",
+ "dev": true,
"dependencies": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
+ "es-errors": "^1.3.0"
},
"engines": {
- "node": ">= 0.8.0"
+ "node": ">= 0.4"
}
},
- "node_modules/escodegen/node_modules/optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
+ "node_modules/es-set-tostringtag": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz",
+ "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==",
+ "dev": true,
"dependencies": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.6",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "word-wrap": "~1.2.3"
+ "get-intrinsic": "^1.2.4",
+ "has-tostringtag": "^1.0.2",
+ "hasown": "^2.0.1"
},
"engines": {
- "node": ">= 0.8.0"
+ "node": ">= 0.4"
}
},
- "node_modules/escodegen/node_modules/prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==",
- "engines": {
- "node": ">= 0.8.0"
+ "node_modules/es-shim-unscopables": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz",
+ "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==",
+ "dev": true,
+ "dependencies": {
+ "hasown": "^2.0.0"
}
},
- "node_modules/escodegen/node_modules/type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
+ "node_modules/es-to-primitive": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
+ "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
+ "dev": true,
"dependencies": {
- "prelude-ls": "~1.1.2"
+ "is-callable": "^1.1.4",
+ "is-date-object": "^1.0.1",
+ "is-symbol": "^1.0.2"
},
"engines": {
- "node": ">= 0.8.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/eslint": {
- "version": "8.36.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.36.0.tgz",
- "integrity": "sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==",
+ "version": "8.57.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
+ "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.4.0",
- "@eslint/eslintrc": "^2.0.1",
- "@eslint/js": "8.36.0",
- "@humanwhocodes/config-array": "^0.11.8",
+ "@eslint-community/regexpp": "^4.6.1",
+ "@eslint/eslintrc": "^2.1.4",
+ "@eslint/js": "8.57.0",
+ "@humanwhocodes/config-array": "^0.11.14",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
- "ajv": "^6.10.0",
+ "@ungap/structured-clone": "^1.2.0",
+ "ajv": "^6.12.4",
"chalk": "^4.0.0",
"cross-spawn": "^7.0.2",
"debug": "^4.3.2",
"doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.1.1",
- "eslint-visitor-keys": "^3.3.0",
- "espree": "^9.5.0",
+ "eslint-scope": "^7.2.2",
+ "eslint-visitor-keys": "^3.4.3",
+ "espree": "^9.6.1",
"esquery": "^1.4.2",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
@@ -732,22 +1028,19 @@
"find-up": "^5.0.0",
"glob-parent": "^6.0.2",
"globals": "^13.19.0",
- "grapheme-splitter": "^1.0.4",
+ "graphemer": "^1.4.0",
"ignore": "^5.2.0",
- "import-fresh": "^3.0.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"is-path-inside": "^3.0.3",
- "js-sdsl": "^4.1.4",
"js-yaml": "^4.1.0",
"json-stable-stringify-without-jsonify": "^1.0.1",
"levn": "^0.4.1",
"lodash.merge": "^4.6.2",
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
- "optionator": "^0.9.1",
+ "optionator": "^0.9.3",
"strip-ansi": "^6.0.1",
- "strip-json-comments": "^3.1.0",
"text-table": "^0.2.0"
},
"bin": {
@@ -760,59 +1053,168 @@
"url": "https://opencollective.com/eslint"
}
},
- "node_modules/eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
+ "node_modules/eslint-import-resolver-node": {
+ "version": "0.3.9",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz",
+ "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==",
"dev": true,
"dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- },
- "engines": {
- "node": ">=8.0.0"
+ "debug": "^3.2.7",
+ "is-core-module": "^2.13.0",
+ "resolve": "^1.22.4"
}
},
- "node_modules/eslint-visitor-keys": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
- "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
+ "node_modules/eslint-import-resolver-node/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
"dev": true,
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "dependencies": {
+ "ms": "^2.1.1"
}
},
- "node_modules/eslint/node_modules/eslint-scope": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
- "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
+ "node_modules/eslint-import-resolver-typescript": {
+ "version": "3.6.1",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz",
+ "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==",
"dev": true,
"dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^5.2.0"
+ "debug": "^4.3.4",
+ "enhanced-resolve": "^5.12.0",
+ "eslint-module-utils": "^2.7.4",
+ "fast-glob": "^3.3.1",
+ "get-tsconfig": "^4.5.0",
+ "is-core-module": "^2.11.0",
+ "is-glob": "^4.0.3"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts"
+ },
+ "peerDependencies": {
+ "eslint": "*",
+ "eslint-plugin-import": "*"
}
},
- "node_modules/eslint/node_modules/estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "node_modules/eslint-module-utils": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz",
+ "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==",
"dev": true,
+ "dependencies": {
+ "debug": "^3.2.7"
+ },
"engines": {
- "node": ">=4.0"
+ "node": ">=4"
+ },
+ "peerDependenciesMeta": {
+ "eslint": {
+ "optional": true
+ }
}
},
- "node_modules/espree": {
- "version": "9.5.0",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.0.tgz",
- "integrity": "sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==",
+ "node_modules/eslint-module-utils/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
"dev": true,
"dependencies": {
- "acorn": "^8.8.0",
- "acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.3.0"
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/eslint-plugin-import": {
+ "version": "2.29.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz",
+ "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==",
+ "dev": true,
+ "dependencies": {
+ "array-includes": "^3.1.7",
+ "array.prototype.findlastindex": "^1.2.3",
+ "array.prototype.flat": "^1.3.2",
+ "array.prototype.flatmap": "^1.3.2",
+ "debug": "^3.2.7",
+ "doctrine": "^2.1.0",
+ "eslint-import-resolver-node": "^0.3.9",
+ "eslint-module-utils": "^2.8.0",
+ "hasown": "^2.0.0",
+ "is-core-module": "^2.13.1",
+ "is-glob": "^4.0.3",
+ "minimatch": "^3.1.2",
+ "object.fromentries": "^2.0.7",
+ "object.groupby": "^1.0.1",
+ "object.values": "^1.1.7",
+ "semver": "^6.3.1",
+ "tsconfig-paths": "^3.15.0"
+ },
+ "engines": {
+ "node": ">=4"
+ },
+ "peerDependencies": {
+ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "dev": true,
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/doctrine": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
+ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
+ "dev": true,
+ "dependencies": {
+ "esutils": "^2.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/eslint-scope": {
+ "version": "7.2.2",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
+ "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
+ "dev": true,
+ "dependencies": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^5.2.0"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -821,37 +1223,67 @@
"url": "https://opencollective.com/eslint"
}
},
- "node_modules/esprima": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz",
- "integrity": "sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A==",
- "bin": {
- "esparse": "bin/esparse.js",
- "esvalidate": "bin/esvalidate.js"
+ "node_modules/eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true,
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/eslint/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/eslint/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
},
"engines": {
- "node": ">=0.4.0"
+ "node": "*"
}
},
- "node_modules/esquery": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
- "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
+ "node_modules/espree": {
+ "version": "9.6.1",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
+ "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
"dev": true,
"dependencies": {
- "estraverse": "^5.1.0"
+ "acorn": "^8.9.0",
+ "acorn-jsx": "^5.3.2",
+ "eslint-visitor-keys": "^3.4.1"
},
"engines": {
- "node": ">=0.10"
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/esquery/node_modules/estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "node_modules/esquery": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz",
+ "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
"dev": true,
+ "dependencies": {
+ "estraverse": "^5.1.0"
+ },
"engines": {
- "node": ">=4.0"
+ "node": ">=0.10"
}
},
"node_modules/esrecurse": {
@@ -866,7 +1298,7 @@
"node": ">=4.0"
}
},
- "node_modules/esrecurse/node_modules/estraverse": {
+ "node_modules/estraverse": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
@@ -875,18 +1307,11 @@
"node": ">=4.0"
}
},
- "node_modules/estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "engines": {
- "node": ">=4.0"
- }
- },
"node_modules/esutils": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
"integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true,
"engines": {
"node": ">=0.10.0"
}
@@ -898,9 +1323,9 @@
"dev": true
},
"node_modules/fast-glob": {
- "version": "3.2.12",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
- "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
"dev": true,
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
@@ -934,12 +1359,13 @@
"node_modules/fast-levenshtein": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="
+ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
+ "dev": true
},
"node_modules/fastq": {
- "version": "1.15.0",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
- "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
+ "version": "1.17.1",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
+ "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
"dev": true,
"dependencies": {
"reusify": "^1.0.4"
@@ -958,9 +1384,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
@@ -986,12 +1412,13 @@
}
},
"node_modules/flat-cache": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
- "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz",
+ "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==",
"dev": true,
"dependencies": {
- "flatted": "^3.1.0",
+ "flatted": "^3.2.9",
+ "keyv": "^4.5.3",
"rimraf": "^3.0.2"
},
"engines": {
@@ -999,53 +1426,115 @@
}
},
"node_modules/flatted": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
- "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==",
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz",
+ "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==",
"dev": true
},
- "node_modules/follow-redirects": {
- "version": "1.15.2",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz",
- "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==",
- "funding": [
- {
- "type": "individual",
- "url": "https://github.com/sponsors/RubenVerborgh"
- }
- ],
+ "node_modules/for-each": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
+ "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
+ "dev": true,
+ "dependencies": {
+ "is-callable": "^1.1.3"
+ }
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
+ "dev": true
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/function.prototype.name": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz",
+ "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.2.0",
+ "es-abstract": "^1.22.1",
+ "functions-have-names": "^1.2.3"
+ },
"engines": {
- "node": ">=4.0"
+ "node": ">= 0.4"
},
- "peerDependenciesMeta": {
- "debug": {
- "optional": true
- }
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/form-data": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
- "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
+ "node_modules/functions-have-names": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
+ "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-intrinsic": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
+ "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
+ "dev": true,
"dependencies": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "hasown": "^2.0.0"
},
"engines": {
- "node": ">= 6"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
- "dev": true
+ "node_modules/get-symbol-description": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz",
+ "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.5",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-tsconfig": {
+ "version": "4.7.5",
+ "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.5.tgz",
+ "integrity": "sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==",
+ "dev": true,
+ "dependencies": {
+ "resolve-pkg-maps": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
+ }
},
"node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
"dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
@@ -1074,10 +1563,32 @@
"node": ">=10.13.0"
}
},
+ "node_modules/glob/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/glob/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/globals": {
- "version": "13.20.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
- "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
+ "version": "13.24.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
+ "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
"dev": true,
"dependencies": {
"type-fest": "^0.20.2"
@@ -1089,6 +1600,22 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/globalthis": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
+ "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
+ "dev": true,
+ "dependencies": {
+ "define-properties": "^1.2.1",
+ "gopd": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/globby": {
"version": "11.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
@@ -1109,12 +1636,39 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/grapheme-splitter": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
- "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
+ "node_modules/gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "dev": true,
+ "dependencies": {
+ "get-intrinsic": "^1.1.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
+ "dev": true
+ },
+ "node_modules/graphemer": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
+ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
"dev": true
},
+ "node_modules/has-bigints": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
+ "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
@@ -1124,24 +1678,87 @@
"node": ">=8"
}
},
- "node_modules/ignore": {
- "version": "5.2.4",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
- "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
+ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
"dev": true,
- "engines": {
- "node": ">= 4"
+ "dependencies": {
+ "es-define-property": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/import-fresh": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
- "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "node_modules/has-proto": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
+ "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
"dev": true,
- "dependencies": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-tostringtag": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
+ "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
+ "dev": true,
+ "dependencies": {
+ "has-symbols": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/hasown": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
+ "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/ignore": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz",
+ "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "dev": true,
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
"engines": {
"node": ">=6"
},
@@ -1162,6 +1779,7 @@
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+ "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
"dev": true,
"dependencies": {
"once": "^1.3.0",
@@ -1174,6 +1792,121 @@
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"dev": true
},
+ "node_modules/internal-slot": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz",
+ "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==",
+ "dev": true,
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "hasown": "^2.0.0",
+ "side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/is-array-buffer": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz",
+ "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "get-intrinsic": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-bigint": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
+ "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
+ "dev": true,
+ "dependencies": {
+ "has-bigints": "^1.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-boolean-object": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
+ "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-callable": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
+ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.14.0",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz",
+ "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==",
+ "dev": true,
+ "dependencies": {
+ "hasown": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-data-view": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz",
+ "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==",
+ "dev": true,
+ "dependencies": {
+ "is-typed-array": "^1.1.13"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-date-object": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
+ "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
+ "dev": true,
+ "dependencies": {
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
@@ -1195,6 +1928,18 @@
"node": ">=0.10.0"
}
},
+ "node_modules/is-negative-zero": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz",
+ "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
@@ -1204,6 +1949,21 @@
"node": ">=0.12.0"
}
},
+ "node_modules/is-number-object": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
+ "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
+ "dev": true,
+ "dependencies": {
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/is-path-inside": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
@@ -1213,22 +1973,106 @@
"node": ">=8"
}
},
+ "node_modules/is-regex": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
+ "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-shared-array-buffer": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz",
+ "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-string": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
+ "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
+ "dev": true,
+ "dependencies": {
+ "has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-symbol": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
+ "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
+ "dev": true,
+ "dependencies": {
+ "has-symbols": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-typed-array": {
+ "version": "1.1.13",
+ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz",
+ "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==",
+ "dev": true,
+ "dependencies": {
+ "which-typed-array": "^1.1.14"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-weakref": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
+ "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/isarray": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
+ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "dev": true
+ },
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
"dev": true
},
- "node_modules/js-sdsl": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz",
- "integrity": "sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==",
- "dev": true,
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/js-sdsl"
- }
- },
"node_modules/js-yaml": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
@@ -1241,6 +2085,12 @@
"js-yaml": "bin/js-yaml.js"
}
},
+ "node_modules/json-buffer": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
+ "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
+ "dev": true
+ },
"node_modules/json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@@ -1253,14 +2103,25 @@
"integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
"dev": true
},
- "node_modules/jsonpath": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz",
- "integrity": "sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==",
+ "node_modules/json5": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+ "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+ "dev": true,
+ "dependencies": {
+ "minimist": "^1.2.0"
+ },
+ "bin": {
+ "json5": "lib/cli.js"
+ }
+ },
+ "node_modules/keyv": {
+ "version": "4.5.4",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
+ "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
+ "dev": true,
"dependencies": {
- "esprima": "1.2.2",
- "static-eval": "2.0.2",
- "underscore": "1.12.1"
+ "json-buffer": "3.0.1"
}
},
"node_modules/levn": {
@@ -1297,18 +2158,6 @@
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
"dev": true
},
- "node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/merge2": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
@@ -1319,47 +2168,40 @@
}
},
"node_modules/micromatch": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
- "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "version": "4.0.7",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz",
+ "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==",
"dev": true,
"dependencies": {
- "braces": "^3.0.2",
+ "braces": "^3.0.3",
"picomatch": "^2.3.1"
},
"engines": {
"node": ">=8.6"
}
},
- "node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
"dependencies": {
- "mime-db": "1.52.0"
+ "brace-expansion": "^2.0.1"
},
"engines": {
- "node": ">= 0.6"
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "node_modules/minimist": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
"dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/ms": {
@@ -1374,72 +2216,154 @@
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
},
- "node_modules/natural-compare-lite": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz",
- "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==",
- "dev": true
- },
- "node_modules/once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "node_modules/object-inspect": {
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz",
+ "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==",
"dev": true,
- "dependencies": {
- "wrappy": "1"
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/optionator": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
- "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
+ "node_modules/object-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
"dev": true,
- "dependencies": {
- "deep-is": "^0.1.3",
- "fast-levenshtein": "^2.0.6",
- "levn": "^0.4.1",
- "prelude-ls": "^1.2.1",
- "type-check": "^0.4.0",
- "word-wrap": "^1.2.3"
- },
"engines": {
- "node": ">= 0.8.0"
+ "node": ">= 0.4"
}
},
- "node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "node_modules/object.assign": {
+ "version": "4.1.5",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz",
+ "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==",
"dev": true,
"dependencies": {
- "yocto-queue": "^0.1.0"
+ "call-bind": "^1.0.5",
+ "define-properties": "^1.2.1",
+ "has-symbols": "^1.0.3",
+ "object-keys": "^1.1.1"
},
"engines": {
- "node": ">=10"
+ "node": ">= 0.4"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "node_modules/object.fromentries": {
+ "version": "2.0.8",
+ "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz",
+ "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==",
"dev": true,
"dependencies": {
- "p-limit": "^3.0.2"
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-object-atoms": "^1.0.0"
},
"engines": {
- "node": ">=10"
+ "node": ">= 0.4"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "node_modules/object.groupby": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz",
+ "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/object.values": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz",
+ "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "dev": true,
+ "dependencies": {
+ "wrappy": "1"
+ }
+ },
+ "node_modules/optionator": {
+ "version": "0.9.4",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
+ "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
+ "dev": true,
+ "dependencies": {
+ "deep-is": "^0.1.3",
+ "fast-levenshtein": "^2.0.6",
+ "levn": "^0.4.1",
+ "prelude-ls": "^1.2.1",
+ "type-check": "^0.4.0",
+ "word-wrap": "^1.2.5"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "dev": true,
+ "dependencies": {
+ "yocto-queue": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
"dev": true,
"dependencies": {
"callsites": "^3.0.0"
@@ -1475,6 +2399,12 @@
"node": ">=8"
}
},
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
"node_modules/path-type": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
@@ -1496,6 +2426,15 @@
"url": "https://github.com/sponsors/jonschlinkert"
}
},
+ "node_modules/possible-typed-array-names": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz",
+ "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
"node_modules/prelude-ls": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -1505,15 +2444,10 @@
"node": ">= 0.8.0"
}
},
- "node_modules/proxy-from-env": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
- "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
- },
"node_modules/punycode": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
- "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
+ "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
"dev": true,
"engines": {
"node": ">=6"
@@ -1539,10 +2473,40 @@
}
]
},
- "node_modules/reflect-metadata": {
- "version": "0.1.13",
- "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
- "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
+ "node_modules/regexp.prototype.flags": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz",
+ "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.6",
+ "define-properties": "^1.2.1",
+ "es-errors": "^1.3.0",
+ "set-function-name": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.8",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
+ "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.13.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
"node_modules/resolve-from": {
"version": "4.0.0",
@@ -1553,6 +2517,15 @@
"node": ">=4"
}
},
+ "node_modules/resolve-pkg-maps": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
+ "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
+ }
+ },
"node_modules/reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
@@ -1567,6 +2540,7 @@
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "deprecated": "Rimraf versions prior to v4 are no longer supported",
"dev": true,
"dependencies": {
"glob": "^7.1.3"
@@ -1601,14 +2575,46 @@
"queue-microtask": "^1.2.2"
}
},
- "node_modules/semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
+ "node_modules/safe-array-concat": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz",
+ "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "get-intrinsic": "^1.2.4",
+ "has-symbols": "^1.0.3",
+ "isarray": "^2.0.5"
+ },
+ "engines": {
+ "node": ">=0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/safe-regex-test": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz",
+ "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==",
"dev": true,
"dependencies": {
- "lru-cache": "^6.0.0"
+ "call-bind": "^1.0.6",
+ "es-errors": "^1.3.0",
+ "is-regex": "^1.1.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
},
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/semver": {
+ "version": "7.6.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
+ "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==",
+ "dev": true,
"bin": {
"semver": "bin/semver.js"
},
@@ -1616,6 +2622,38 @@
"node": ">=10"
}
},
+ "node_modules/set-function-length": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz",
+ "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
+ "dev": true,
+ "dependencies": {
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/set-function-name": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz",
+ "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==",
+ "dev": true,
+ "dependencies": {
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "functions-have-names": "^1.2.3",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
"node_modules/shebang-command": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
@@ -1637,6 +2675,24 @@
"node": ">=8"
}
},
+ "node_modules/side-channel": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz",
+ "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.4",
+ "object-inspect": "^1.13.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/slash": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
@@ -1646,21 +2702,53 @@
"node": ">=8"
}
},
- "node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "optional": true,
+ "node_modules/string.prototype.trim": {
+ "version": "1.2.9",
+ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz",
+ "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.0",
+ "es-object-atoms": "^1.0.0"
+ },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/static-eval": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz",
- "integrity": "sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==",
+ "node_modules/string.prototype.trimend": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz",
+ "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/string.prototype.trimstart": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz",
+ "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==",
+ "dev": true,
"dependencies": {
- "escodegen": "^1.8.1"
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/strip-ansi": {
@@ -1675,6 +2763,15 @@
"node": ">=8"
}
},
+ "node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
"node_modules/strip-json-comments": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
@@ -1699,6 +2796,27 @@
"node": ">=8"
}
},
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/tapable": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
+ "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -1717,25 +2835,28 @@
"node": ">=8.0"
}
},
- "node_modules/tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- },
- "node_modules/tsutils": {
- "version": "3.21.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
- "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
+ "node_modules/ts-api-utils": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
+ "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==",
"dev": true,
- "dependencies": {
- "tslib": "^1.8.1"
- },
"engines": {
- "node": ">= 6"
+ "node": ">=16"
},
"peerDependencies": {
- "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
+ "typescript": ">=4.2.0"
+ }
+ },
+ "node_modules/tsconfig-paths": {
+ "version": "3.15.0",
+ "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz",
+ "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==",
+ "dev": true,
+ "dependencies": {
+ "@types/json5": "^0.0.29",
+ "json5": "^1.0.2",
+ "minimist": "^1.2.6",
+ "strip-bom": "^3.0.0"
}
},
"node_modules/type-check": {
@@ -1762,23 +2883,106 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/typed-array-buffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz",
+ "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "es-errors": "^1.3.0",
+ "is-typed-array": "^1.1.13"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/typed-array-byte-length": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz",
+ "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-proto": "^1.0.3",
+ "is-typed-array": "^1.1.13"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/typed-array-byte-offset": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz",
+ "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==",
+ "dev": true,
+ "dependencies": {
+ "available-typed-arrays": "^1.0.7",
+ "call-bind": "^1.0.7",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-proto": "^1.0.3",
+ "is-typed-array": "^1.1.13"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/typed-array-length": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz",
+ "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-proto": "^1.0.3",
+ "is-typed-array": "^1.1.13",
+ "possible-typed-array-names": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/typescript": {
- "version": "4.9.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz",
- "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==",
+ "version": "5.5.3",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz",
+ "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
},
"engines": {
- "node": ">=4.2.0"
+ "node": ">=14.17"
}
},
- "node_modules/underscore": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
- "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw=="
+ "node_modules/unbox-primitive": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
+ "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
+ "dev": true,
+ "dependencies": {
+ "call-bind": "^1.0.2",
+ "has-bigints": "^1.0.2",
+ "has-symbols": "^1.0.3",
+ "which-boxed-primitive": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
"node_modules/uri-js": {
"version": "4.4.1",
@@ -1804,10 +3008,46 @@
"node": ">= 8"
}
},
+ "node_modules/which-boxed-primitive": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
+ "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
+ "dev": true,
+ "dependencies": {
+ "is-bigint": "^1.0.1",
+ "is-boolean-object": "^1.1.0",
+ "is-number-object": "^1.0.4",
+ "is-string": "^1.0.5",
+ "is-symbol": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/which-typed-array": {
+ "version": "1.1.15",
+ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz",
+ "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==",
+ "dev": true,
+ "dependencies": {
+ "available-typed-arrays": "^1.0.7",
+ "call-bind": "^1.0.7",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "has-tostringtag": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/word-wrap": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
- "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
+ "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
+ "dev": true,
"engines": {
"node": ">=0.10.0"
}
@@ -1818,12 +3058,6 @@
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
},
- "node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"node_modules/yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
@@ -1835,1284 +3069,15 @@
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
- }
- },
- "dependencies": {
- "@eslint-community/eslint-utils": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
+ },
+ "node_modules/zod": {
+ "version": "3.23.8",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz",
+ "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==",
"dev": true,
- "requires": {
- "eslint-visitor-keys": "^3.3.0"
+ "funding": {
+ "url": "https://github.com/sponsors/colinhacks"
}
- },
- "@eslint-community/regexpp": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.4.1.tgz",
- "integrity": "sha512-BISJ6ZE4xQsuL/FmsyRaiffpq977bMlsKfGHTQrOGFErfByxIe6iZTxPf/00Zon9b9a7iUykfQwejN3s2ZW/Bw==",
- "dev": true
- },
- "@eslint/eslintrc": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.1.tgz",
- "integrity": "sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==",
- "dev": true,
- "requires": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.5.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- }
- },
- "@eslint/js": {
- "version": "8.36.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.36.0.tgz",
- "integrity": "sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==",
- "dev": true
- },
- "@humanwhocodes/config-array": {
- "version": "0.11.8",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
- "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==",
- "dev": true,
- "requires": {
- "@humanwhocodes/object-schema": "^1.2.1",
- "debug": "^4.1.1",
- "minimatch": "^3.0.5"
- }
- },
- "@humanwhocodes/module-importer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
- "dev": true
- },
- "@humanwhocodes/object-schema": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
- "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
- "dev": true
- },
- "@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
- "dev": true,
- "requires": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
- }
- },
- "@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
- "dev": true
- },
- "@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
- "dev": true,
- "requires": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
- }
- },
- "@types/json-schema": {
- "version": "7.0.11",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
- "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==",
- "dev": true
- },
- "@types/jsonpath": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/@types/jsonpath/-/jsonpath-0.2.0.tgz",
- "integrity": "sha512-v7qlPA0VpKUlEdhghbDqRoKMxFB3h3Ch688TApBJ6v+XLDdvWCGLJIYiPKGZnS6MAOie+IorCfNYVHOPIHSWwQ==",
- "dev": true
- },
- "@types/node": {
- "version": "18.11.9",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz",
- "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==",
- "dev": true
- },
- "@types/semver": {
- "version": "7.3.13",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz",
- "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==",
- "dev": true
- },
- "@typescript-eslint/eslint-plugin": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.56.0.tgz",
- "integrity": "sha512-ZNW37Ccl3oMZkzxrYDUX4o7cnuPgU+YrcaYXzsRtLB16I1FR5SHMqga3zGsaSliZADCWo2v8qHWqAYIj8nWCCg==",
- "dev": true,
- "requires": {
- "@eslint-community/regexpp": "^4.4.0",
- "@typescript-eslint/scope-manager": "5.56.0",
- "@typescript-eslint/type-utils": "5.56.0",
- "@typescript-eslint/utils": "5.56.0",
- "debug": "^4.3.4",
- "grapheme-splitter": "^1.0.4",
- "ignore": "^5.2.0",
- "natural-compare-lite": "^1.4.0",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
- }
- },
- "@typescript-eslint/parser": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.56.0.tgz",
- "integrity": "sha512-sn1OZmBxUsgxMmR8a8U5QM/Wl+tyqlH//jTqCg8daTAmhAk26L2PFhcqPLlYBhYUJMZJK276qLXlHN3a83o2cg==",
- "dev": true,
- "requires": {
- "@typescript-eslint/scope-manager": "5.56.0",
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/typescript-estree": "5.56.0",
- "debug": "^4.3.4"
- }
- },
- "@typescript-eslint/scope-manager": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.56.0.tgz",
- "integrity": "sha512-jGYKyt+iBakD0SA5Ww8vFqGpoV2asSjwt60Gl6YcO8ksQ8s2HlUEyHBMSa38bdLopYqGf7EYQMUIGdT/Luw+sw==",
- "dev": true,
- "requires": {
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/visitor-keys": "5.56.0"
- }
- },
- "@typescript-eslint/type-utils": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.56.0.tgz",
- "integrity": "sha512-8WxgOgJjWRy6m4xg9KoSHPzBNZeQbGlQOH7l2QEhQID/+YseaFxg5J/DLwWSsi9Axj4e/cCiKx7PVzOq38tY4A==",
- "dev": true,
- "requires": {
- "@typescript-eslint/typescript-estree": "5.56.0",
- "@typescript-eslint/utils": "5.56.0",
- "debug": "^4.3.4",
- "tsutils": "^3.21.0"
- }
- },
- "@typescript-eslint/types": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.56.0.tgz",
- "integrity": "sha512-JyAzbTJcIyhuUhogmiu+t79AkdnqgPUEsxMTMc/dCZczGMJQh1MK2wgrju++yMN6AWroVAy2jxyPcPr3SWCq5w==",
- "dev": true
- },
- "@typescript-eslint/typescript-estree": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.56.0.tgz",
- "integrity": "sha512-41CH/GncsLXOJi0jb74SnC7jVPWeVJ0pxQj8bOjH1h2O26jXN3YHKDT1ejkVz5YeTEQPeLCCRY0U2r68tfNOcg==",
- "dev": true,
- "requires": {
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/visitor-keys": "5.56.0",
- "debug": "^4.3.4",
- "globby": "^11.1.0",
- "is-glob": "^4.0.3",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
- }
- },
- "@typescript-eslint/utils": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.56.0.tgz",
- "integrity": "sha512-XhZDVdLnUJNtbzaJeDSCIYaM+Tgr59gZGbFuELgF7m0IY03PlciidS7UQNKLE0+WpUTn1GlycEr6Ivb/afjbhA==",
- "dev": true,
- "requires": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@types/json-schema": "^7.0.9",
- "@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.56.0",
- "@typescript-eslint/types": "5.56.0",
- "@typescript-eslint/typescript-estree": "5.56.0",
- "eslint-scope": "^5.1.1",
- "semver": "^7.3.7"
- }
- },
- "@typescript-eslint/visitor-keys": {
- "version": "5.56.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.56.0.tgz",
- "integrity": "sha512-1mFdED7u5bZpX6Xxf5N9U2c18sb+8EvU3tyOIj6LQZ5OOvnmj8BVeNNP603OFPm5KkS1a7IvCIcwrdHXaEMG/Q==",
- "dev": true,
- "requires": {
- "@typescript-eslint/types": "5.56.0",
- "eslint-visitor-keys": "^3.3.0"
- }
- },
- "acorn": {
- "version": "8.8.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz",
- "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==",
- "dev": true
- },
- "acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "dev": true,
- "requires": {}
- },
- "ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ansi-regex": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
- "dev": true
- },
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
- "dev": true
- },
- "array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
- "dev": true
- },
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
- },
- "axios": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.1.3.tgz",
- "integrity": "sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==",
- "requires": {
- "follow-redirects": "^1.15.0",
- "form-data": "^4.0.0",
- "proxy-from-env": "^1.1.0"
- }
- },
- "balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
- "dev": true
- },
- "brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "requires": {
- "fill-range": "^7.0.1"
- }
- },
- "callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "dev": true
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "class-transformer": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz",
- "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw=="
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "requires": {
- "delayed-stream": "~1.0.0"
- }
- },
- "concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
- "dev": true
- },
- "cross-spawn": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "dev": true,
- "requires": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- }
- },
- "debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
- "dev": true,
- "requires": {
- "ms": "2.1.2"
- }
- },
- "deep-is": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
- "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
- },
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
- },
- "dir-glob": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
- "dev": true,
- "requires": {
- "path-type": "^4.0.0"
- }
- },
- "doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true
- },
- "escodegen": {
- "version": "1.14.3",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz",
- "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==",
- "requires": {
- "esprima": "^4.0.1",
- "estraverse": "^4.2.0",
- "esutils": "^2.0.2",
- "optionator": "^0.8.1",
- "source-map": "~0.6.1"
- },
- "dependencies": {
- "esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="
- },
- "levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==",
- "requires": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- }
- },
- "optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
- "requires": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.6",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "word-wrap": "~1.2.3"
- }
- },
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w=="
- },
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==",
- "requires": {
- "prelude-ls": "~1.1.2"
- }
- }
- }
- },
- "eslint": {
- "version": "8.36.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.36.0.tgz",
- "integrity": "sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==",
- "dev": true,
- "requires": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.4.0",
- "@eslint/eslintrc": "^2.0.1",
- "@eslint/js": "8.36.0",
- "@humanwhocodes/config-array": "^0.11.8",
- "@humanwhocodes/module-importer": "^1.0.1",
- "@nodelib/fs.walk": "^1.2.8",
- "ajv": "^6.10.0",
- "chalk": "^4.0.0",
- "cross-spawn": "^7.0.2",
- "debug": "^4.3.2",
- "doctrine": "^3.0.0",
- "escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.1.1",
- "eslint-visitor-keys": "^3.3.0",
- "espree": "^9.5.0",
- "esquery": "^1.4.2",
- "esutils": "^2.0.2",
- "fast-deep-equal": "^3.1.3",
- "file-entry-cache": "^6.0.1",
- "find-up": "^5.0.0",
- "glob-parent": "^6.0.2",
- "globals": "^13.19.0",
- "grapheme-splitter": "^1.0.4",
- "ignore": "^5.2.0",
- "import-fresh": "^3.0.0",
- "imurmurhash": "^0.1.4",
- "is-glob": "^4.0.0",
- "is-path-inside": "^3.0.3",
- "js-sdsl": "^4.1.4",
- "js-yaml": "^4.1.0",
- "json-stable-stringify-without-jsonify": "^1.0.1",
- "levn": "^0.4.1",
- "lodash.merge": "^4.6.2",
- "minimatch": "^3.1.2",
- "natural-compare": "^1.4.0",
- "optionator": "^0.9.1",
- "strip-ansi": "^6.0.1",
- "strip-json-comments": "^3.1.0",
- "text-table": "^0.2.0"
- },
- "dependencies": {
- "eslint-scope": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
- "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
- "dev": true,
- "requires": {
- "esrecurse": "^4.3.0",
- "estraverse": "^5.2.0"
- }
- },
- "estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true
- }
- }
- },
- "eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "requires": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- }
- },
- "eslint-visitor-keys": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
- "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
- "dev": true
- },
- "espree": {
- "version": "9.5.0",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.0.tgz",
- "integrity": "sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==",
- "dev": true,
- "requires": {
- "acorn": "^8.8.0",
- "acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.3.0"
- }
- },
- "esprima": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz",
- "integrity": "sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A=="
- },
- "esquery": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
- "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
- "dev": true,
- "requires": {
- "estraverse": "^5.1.0"
- },
- "dependencies": {
- "estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true
- }
- }
- },
- "esrecurse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
- "dev": true,
- "requires": {
- "estraverse": "^5.2.0"
- },
- "dependencies": {
- "estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true
- }
- }
- },
- "estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw=="
- },
- "esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
- },
- "fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true
- },
- "fast-glob": {
- "version": "3.2.12",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
- "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
- "dev": true,
- "requires": {
- "@nodelib/fs.stat": "^2.0.2",
- "@nodelib/fs.walk": "^1.2.3",
- "glob-parent": "^5.1.2",
- "merge2": "^1.3.0",
- "micromatch": "^4.0.4"
- },
- "dependencies": {
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- }
- }
- },
- "fast-json-stable-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
- "dev": true
- },
- "fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="
- },
- "fastq": {
- "version": "1.15.0",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
- "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
- "dev": true,
- "requires": {
- "reusify": "^1.0.4"
- }
- },
- "file-entry-cache": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
- "dev": true,
- "requires": {
- "flat-cache": "^3.0.4"
- }
- },
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "find-up": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
- "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
- "dev": true,
- "requires": {
- "locate-path": "^6.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "flat-cache": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
- "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
- "dev": true,
- "requires": {
- "flatted": "^3.1.0",
- "rimraf": "^3.0.2"
- }
- },
- "flatted": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
- "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==",
- "dev": true
- },
- "follow-redirects": {
- "version": "1.15.2",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz",
- "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA=="
- },
- "form-data": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
- "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
- "requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
- "dev": true
- },
- "glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.3"
- }
- },
- "globals": {
- "version": "13.20.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz",
- "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
- "dev": true,
- "requires": {
- "type-fest": "^0.20.2"
- }
- },
- "globby": {
- "version": "11.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
- "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
- "dev": true,
- "requires": {
- "array-union": "^2.1.0",
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.9",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^3.0.0"
- }
- },
- "grapheme-splitter": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
- "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "ignore": {
- "version": "5.2.4",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
- "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
- "dev": true
- },
- "import-fresh": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
- "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
- "dev": true,
- "requires": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- }
- },
- "imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
- "dev": true
- },
- "inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
- "dev": true,
- "requires": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
- },
- "is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
- "dev": true
- },
- "is-glob": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dev": true,
- "requires": {
- "is-extglob": "^2.1.1"
- }
- },
- "is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true
- },
- "is-path-inside": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
- "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
- "dev": true
- },
- "isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
- "dev": true
- },
- "js-sdsl": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz",
- "integrity": "sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==",
- "dev": true
- },
- "js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dev": true,
- "requires": {
- "argparse": "^2.0.1"
- }
- },
- "json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
- "dev": true
- },
- "json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
- "dev": true
- },
- "jsonpath": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz",
- "integrity": "sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==",
- "requires": {
- "esprima": "1.2.2",
- "static-eval": "2.0.2",
- "underscore": "1.12.1"
- }
- },
- "levn": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
- "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
- "dev": true,
- "requires": {
- "prelude-ls": "^1.2.1",
- "type-check": "~0.4.0"
- }
- },
- "locate-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
- "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
- "dev": true,
- "requires": {
- "p-locate": "^5.0.0"
- }
- },
- "lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
- "dev": true
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "merge2": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
- "dev": true
- },
- "micromatch": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
- "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
- "dev": true,
- "requires": {
- "braces": "^3.0.2",
- "picomatch": "^2.3.1"
- }
- },
- "mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
- },
- "mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "requires": {
- "mime-db": "1.52.0"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
- "natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
- "dev": true
- },
- "natural-compare-lite": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz",
- "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==",
- "dev": true
- },
- "once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
- "dev": true,
- "requires": {
- "wrappy": "1"
- }
- },
- "optionator": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
- "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
- "dev": true,
- "requires": {
- "deep-is": "^0.1.3",
- "fast-levenshtein": "^2.0.6",
- "levn": "^0.4.1",
- "prelude-ls": "^1.2.1",
- "type-check": "^0.4.0",
- "word-wrap": "^1.2.3"
- }
- },
- "p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
- "dev": true,
- "requires": {
- "yocto-queue": "^0.1.0"
- }
- },
- "p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
- "dev": true,
- "requires": {
- "p-limit": "^3.0.2"
- }
- },
- "parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
- "dev": true,
- "requires": {
- "callsites": "^3.0.0"
- }
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
- "dev": true
- },
- "path-key": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "dev": true
- },
- "path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
- "dev": true
- },
- "picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true
- },
- "prelude-ls": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
- "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
- "dev": true
- },
- "proxy-from-env": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
- "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
- },
- "punycode": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
- "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==",
- "dev": true
- },
- "queue-microtask": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
- "dev": true
- },
- "reflect-metadata": {
- "version": "0.1.13",
- "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz",
- "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
- },
- "resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
- "dev": true
- },
- "reusify": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
- "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
- "dev": true
- },
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- },
- "run-parallel": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
- "dev": true,
- "requires": {
- "queue-microtask": "^1.2.2"
- }
- },
- "semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "shebang-command": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "dev": true,
- "requires": {
- "shebang-regex": "^3.0.0"
- }
- },
- "shebang-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "dev": true
- },
- "slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "optional": true
- },
- "static-eval": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz",
- "integrity": "sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg==",
- "requires": {
- "escodegen": "^1.8.1"
- }
- },
- "strip-ansi": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
- "dev": true,
- "requires": {
- "ansi-regex": "^5.0.1"
- }
- },
- "strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
- "dev": true
- },
- "to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "requires": {
- "is-number": "^7.0.0"
- }
- },
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- },
- "tsutils": {
- "version": "3.21.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
- "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
- "dev": true,
- "requires": {
- "tslib": "^1.8.1"
- }
- },
- "type-check": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
- "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
- "dev": true,
- "requires": {
- "prelude-ls": "^1.2.1"
- }
- },
- "type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true
- },
- "typescript": {
- "version": "4.9.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz",
- "integrity": "sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==",
- "dev": true
- },
- "underscore": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz",
- "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw=="
- },
- "uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
- "dev": true,
- "requires": {
- "punycode": "^2.1.0"
- }
- },
- "which": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
- "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- },
- "word-wrap": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
- "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ=="
- },
- "wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
- "dev": true
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
- "yocto-queue": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
- "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
- "dev": true
}
}
}
diff --git a/platform/package.json b/platform/package.json
index 91c50786a..2d360eded 100644
--- a/platform/package.json
+++ b/platform/package.json
@@ -1,37 +1,33 @@
{
"name": "@codat/platform",
- "version": "2.5.0",
+ "version": "3.0.0",
"author": "Codat",
+ "main": "./index.js",
+ "sideEffects": false,
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/codatio/client-sdk-typescript.git",
+ "directory": "platform"
+ },
"scripts": {
- "prepare": "tsc --build",
- "check:tsc": "tsc --noEmit --skipLibCheck",
- "check:eslint": "eslint --max-warnings=0 src",
- "check": "npm run check:tsc && npm run check:eslint"
+ "lint": "eslint --max-warnings=0 src",
+ "build": "tsc",
+ "prepare": "npm run build"
},
- "dependencies": {
- "axios": "^1.1.3",
- "jsonpath": "^1.1.1",
- "class-transformer": "^0.5.1",
- "form-data": "^4.0.0",
- "reflect-metadata": "^0.1.13"
+ "peerDependencies": {
+ "zod": ">= 3"
},
"devDependencies": {
- "@types/jsonpath": "^0.2.0",
- "@types/node": "^18.11.5",
- "typescript": "^4.8.4",
- "@typescript-eslint/eslint-plugin": "^5.56.0",
- "@typescript-eslint/parser": "^5.56.0",
- "eslint": "^8.36.0"
+ "@types/jsonpath": "^0.2.4",
+ "@typescript-eslint/eslint-plugin": "^7.7.1",
+ "@typescript-eslint/parser": "^7.7.1",
+ "eslint": "^8.57.0",
+ "eslint-import-resolver-typescript": "^3.6.1",
+ "eslint-plugin-import": "^2.29.1",
+ "typescript": "^5.4.5",
+ "zod": "^3.23.4"
},
- "main": "dist/index.js",
- "files": [
- "dist",
- "docs",
- "README.md"
- ],
- "repository": {
- "type": "git",
- "url": "https://github.com/codatio/client-sdk-typescript.git",
- "directory": "platform"
+ "dependencies": {
+
}
}
diff --git a/platform/src/hooks/hooks.ts b/platform/src/hooks/hooks.ts
new file mode 100644
index 000000000..6a1e31e06
--- /dev/null
+++ b/platform/src/hooks/hooks.ts
@@ -0,0 +1,103 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import { RequestInput } from "../lib/http.js";
+import {
+ AfterErrorContext,
+ AfterErrorHook,
+ AfterSuccessContext,
+ AfterSuccessHook,
+ BeforeRequestContext,
+ BeforeRequestHook,
+ BeforeCreateRequestHook,
+ BeforeCreateRequestContext,
+ Hooks,
+ SDKInitHook,
+ SDKInitOptions,
+} from "./types.js";
+
+import { initHooks } from "./registration.js";
+
+export class SDKHooks implements Hooks {
+ sdkInitHooks: SDKInitHook[] = [];
+ beforeCreateRequestHooks: BeforeCreateRequestHook[] = [];
+ beforeRequestHooks: BeforeRequestHook[] = [];
+ afterSuccessHooks: AfterSuccessHook[] = [];
+ afterErrorHooks: AfterErrorHook[] = [];
+
+ constructor() {
+ initHooks(this);
+ }
+
+ registerSDKInitHook(hook: SDKInitHook) {
+ this.sdkInitHooks.push(hook);
+ }
+
+ registerBeforeCreateRequestHook(hook: BeforeCreateRequestHook) {
+ this.beforeCreateRequestHooks.push(hook);
+ }
+
+ registerBeforeRequestHook(hook: BeforeRequestHook) {
+ this.beforeRequestHooks.push(hook);
+ }
+
+ registerAfterSuccessHook(hook: AfterSuccessHook) {
+ this.afterSuccessHooks.push(hook);
+ }
+
+ registerAfterErrorHook(hook: AfterErrorHook) {
+ this.afterErrorHooks.push(hook);
+ }
+
+ sdkInit(opts: SDKInitOptions): SDKInitOptions {
+ return this.sdkInitHooks.reduce((opts, hook) => hook.sdkInit(opts), opts);
+ }
+
+ beforeCreateRequest(hookCtx: BeforeCreateRequestContext, input: RequestInput): RequestInput {
+ let inp = input;
+
+ for (const hook of this.beforeCreateRequestHooks) {
+ inp = hook.beforeCreateRequest(hookCtx, inp);
+ }
+
+ return inp;
+ }
+
+ async beforeRequest(hookCtx: BeforeRequestContext, request: Request): Promise {
+ let req = request;
+
+ for (const hook of this.beforeRequestHooks) {
+ req = await hook.beforeRequest(hookCtx, req);
+ }
+
+ return req;
+ }
+
+ async afterSuccess(hookCtx: AfterSuccessContext, response: Response): Promise {
+ let res = response;
+
+ for (const hook of this.afterSuccessHooks) {
+ res = await hook.afterSuccess(hookCtx, res);
+ }
+
+ return res;
+ }
+
+ async afterError(
+ hookCtx: AfterErrorContext,
+ response: Response | null,
+ error: unknown
+ ): Promise<{ response: Response | null; error: unknown }> {
+ let res = response;
+ let err = error;
+
+ for (const hook of this.afterErrorHooks) {
+ const result = await hook.afterError(hookCtx, res, err);
+ res = result.response;
+ err = result.error;
+ }
+
+ return { response: res, error: err };
+ }
+}
diff --git a/platform/src/hooks/index.ts b/platform/src/hooks/index.ts
new file mode 100644
index 000000000..d5fdd742f
--- /dev/null
+++ b/platform/src/hooks/index.ts
@@ -0,0 +1,6 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+export * from "./types.js";
+export * from "./hooks.js";
diff --git a/platform/src/hooks/registration.ts b/platform/src/hooks/registration.ts
new file mode 100644
index 000000000..598a6dfa2
--- /dev/null
+++ b/platform/src/hooks/registration.ts
@@ -0,0 +1,14 @@
+import { Hooks } from "./types.js";
+
+/*
+ * This file is only ever generated once on the first generation and then is free to be modified.
+ * Any hooks you wish to add should be registered in the initHooks function. Feel free to define them
+ * in this file or in separate files in the hooks folder.
+ */
+
+// @ts-expect-error remove this line when you add your first hook and hooks is used
+export function initHooks(hooks: Hooks) {
+ // Add hooks by calling hooks.register{ClientInit/BeforeCreateRequest/BeforeRequest/AfterSuccess/AfterError}Hook
+ // with an instance of a hook that implements that specific Hook interface
+ // Hooks are registered per SDK instance, and are valid for the lifetime of the SDK instance
+}
diff --git a/platform/src/hooks/types.ts b/platform/src/hooks/types.ts
new file mode 100644
index 000000000..dd23b024f
--- /dev/null
+++ b/platform/src/hooks/types.ts
@@ -0,0 +1,89 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import { HTTPClient, RequestInput } from "../lib/http.js";
+
+export type HookContext = {
+ operationID: string;
+ oAuth2Scopes?: string[];
+ securitySource?: any | (() => Promise);
+};
+
+export type Awaitable = T | Promise;
+
+export type SDKInitOptions = {
+ baseURL: URL | null;
+ client: HTTPClient;
+};
+
+export type BeforeCreateRequestContext = HookContext & {};
+export type BeforeRequestContext = HookContext & {};
+export type AfterSuccessContext = HookContext & {};
+export type AfterErrorContext = HookContext & {};
+
+/**
+ * SDKInitHook is called when the SDK is initializing. The
+ * hook can return a new baseURL and HTTP client to be used by the SDK.
+ */
+export interface SDKInitHook {
+ sdkInit: (opts: SDKInitOptions) => SDKInitOptions;
+}
+
+export interface BeforeCreateRequestHook {
+ /**
+ * A hook that is called before the SDK creates a `Request` object. The hook
+ * can modify how a request is constructed since certain modifications, like
+ * changing the request URL, cannot be done on a request object directly.
+ */
+ beforeCreateRequest: (hookCtx: BeforeCreateRequestContext, input: RequestInput) => RequestInput;
+}
+
+export interface BeforeRequestHook {
+ /**
+ * A hook that is called before the SDK sends a request. The hook can
+ * introduce instrumentation code such as logging, tracing and metrics or
+ * replace the request before it is sent or throw an error to stop the
+ * request from being sent.
+ */
+ beforeRequest: (hookCtx: BeforeRequestContext, request: Request) => Awaitable;
+}
+
+export interface AfterSuccessHook {
+ /**
+ * A hook that is called after the SDK receives a response. The hook can
+ * introduce instrumentation code such as logging, tracing and metrics or
+ * modify the response before it is handled or throw an error to stop the
+ * response from being handled.
+ */
+ afterSuccess: (hookCtx: AfterSuccessContext, response: Response) => Awaitable;
+}
+
+export interface AfterErrorHook {
+ /**
+ * A hook that is called after the SDK encounters an error, or a
+ * non-successful response. The hook can introduce instrumentation code such
+ * as logging, tracing and metrics or modify the response or error values.
+ */
+ afterError: (
+ hookCtx: AfterErrorContext,
+ response: Response | null,
+ error: unknown
+ ) => Awaitable<{
+ response: Response | null;
+ error: unknown;
+ }>;
+}
+
+export interface Hooks {
+ /** Registers a hook to be used by the SDK for initialization event. */
+ registerSDKInitHook(hook: SDKInitHook): void;
+ /** Registers a hook to be used by the SDK for to modify `Request` construction. */
+ registerBeforeCreateRequestHook(hook: BeforeCreateRequestHook): void;
+ /** Registers a hook to be used by the SDK for the before request event. */
+ registerBeforeRequestHook(hook: BeforeRequestHook): void;
+ /** Registers a hook to be used by the SDK for the after success event. */
+ registerAfterSuccessHook(hook: AfterSuccessHook): void;
+ /** Registers a hook to be used by the SDK for the after error event. */
+ registerAfterErrorHook(hook: AfterErrorHook): void;
+}
diff --git a/platform/src/index.ts b/platform/src/index.ts
index 313031483..8bc6ae3ed 100644
--- a/platform/src/index.ts
+++ b/platform/src/index.ts
@@ -2,4 +2,5 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-export * from "./sdk";
+export * from "./sdk/sdk.js";
+export * from "./lib/config.js";
diff --git a/platform/src/internal/utils/contenttype.ts b/platform/src/internal/utils/contenttype.ts
deleted file mode 100644
index ddf6c82ba..000000000
--- a/platform/src/internal/utils/contenttype.ts
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-export function matchContentType(
- contentType: string,
- pattern: string,
-): boolean {
- let res = false;
- contentType
- .split(";")
- .map((ctPart: string) => {
- return ctPart.trim();
- })
- .forEach((ctPart: string) => {
- if (ctPart === pattern || pattern === "*" || pattern === "*/*") {
- res = true;
- return;
- }
- if (ctPart === pattern) {
- res = true;
- return;
- }
- const parts: string[] = ctPart.split("/");
- if (parts.length === 2) {
- if (`${parts[0]}/*` === pattern || `*/${parts[1]}` === pattern) {
- res = true;
- return;
- }
- }
- });
- return res;
-}
diff --git a/platform/src/internal/utils/headers.ts b/platform/src/internal/utils/headers.ts
deleted file mode 100644
index 489ba6732..000000000
--- a/platform/src/internal/utils/headers.ts
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { AxiosResponseHeaders, RawAxiosResponseHeaders } from "axios";
-import {
- ParamDecorator,
- isBooleanRecord,
- isEmpty,
- isNumberRecord,
- isStringRecord,
- parseParamDecorator,
- valToString,
-} from "./utils";
-
-import { requestMetadataKey } from "./requestbody";
-
-export const headerMetadataKey = "header";
-
-export function getHeadersFromRequest(headerParams: any): any {
- if (headerParams == null) return;
-
- const headers: any = {};
-
- const fieldNames: string[] = Object.getOwnPropertyNames(headerParams);
- fieldNames.forEach((fname) => {
- const requestBodyAnn: string = Reflect.getMetadata(
- requestMetadataKey,
- headerParams,
- fname,
- );
-
- if (requestBodyAnn) return;
-
- const headerAnn: string = Reflect.getMetadata(
- headerMetadataKey,
- headerParams,
- fname,
- );
-
- if (headerAnn == null) return;
-
- const headerDecorator: ParamDecorator = parseParamDecorator(
- headerAnn,
- fname,
- "simple",
- false,
- );
-
- if (headerDecorator == null) return;
-
- const value: string = serializeHeader(
- headerParams[fname],
- headerDecorator.Explode,
- );
-
- if (value != "") headers[headerDecorator.ParamName] = value;
- });
-
- return headers;
-}
-
-export function getHeadersFromResponse(
- headers: RawAxiosResponseHeaders | AxiosResponseHeaders,
-): Record {
- const reponseHeaders: Record = {};
-
- Object.keys(headers).forEach((key) => {
- const value = headers[key];
-
- if (!value) return;
-
- if (Array.isArray(value)) {
- const h: string[] = [];
-
- value.forEach((val: any) => {
- if (val) {
- h.push(String(val));
- }
- });
-
- reponseHeaders[key] = h;
- } else {
- reponseHeaders[key] = [value];
- }
- });
-
- return reponseHeaders;
-}
-
-function serializeHeader(header: any, explode: boolean): string {
- const headerVals: string[] = [];
-
- if (Array.isArray(header)) {
- header.forEach((val: any) => {
- headerVals.push(valToString(val));
- });
- } else if (
- isStringRecord(header) ||
- isNumberRecord(header) ||
- isBooleanRecord(header)
- ) {
- Object.getOwnPropertyNames(header).forEach((headerKey: string) => {
- if (explode)
- headerVals.push(`${headerKey}=${valToString(header[headerKey])}`);
- else headerVals.push(`${headerKey},${valToString(header[headerKey])}`);
- });
- } else if (header instanceof Object) {
- Object.getOwnPropertyNames(header).forEach((headerKey: string) => {
- const headerAnn: string = Reflect.getMetadata(
- headerMetadataKey,
- header,
- headerKey,
- );
-
- if (headerAnn == null) return;
-
- const headerDecorator: ParamDecorator = parseParamDecorator(
- headerAnn,
- headerKey,
- "simple",
- explode,
- );
-
- if (headerDecorator == null) return;
-
- const headerFieldValue = valToString(header[headerKey]);
-
- if (isEmpty(headerFieldValue)) return;
- else if (explode)
- headerVals.push(`${headerDecorator.ParamName}=${headerFieldValue}`);
- else headerVals.push(`${headerDecorator.ParamName},${headerFieldValue}`);
- });
- } else {
- return String(header);
- }
- return headerVals.join(",");
-}
diff --git a/platform/src/internal/utils/index.ts b/platform/src/internal/utils/index.ts
deleted file mode 100644
index db8bb23fd..000000000
--- a/platform/src/internal/utils/index.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-export * from "./contenttype";
-export * from "./headers";
-export * from "./pathparams";
-export * from "./queryparams";
-export * from "./requestbody";
-export * from "./retries";
-export * from "./security";
-export * from "./utils";
diff --git a/platform/src/internal/utils/pathparams.ts b/platform/src/internal/utils/pathparams.ts
deleted file mode 100644
index 0b8137ac6..000000000
--- a/platform/src/internal/utils/pathparams.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import {
- ParamDecorator,
- isBooleanRecord,
- isEmpty,
- isNumberRecord,
- isStringRecord,
- parseParamDecorator,
- valToString,
-} from "./utils";
-
-export const ppMetadataKey = "pathParam";
-
-export function getSimplePathParams(
- paramName: string,
- paramValue: any,
- explode: boolean,
-): Map {
- const pathParams: Map = new Map();
- const ppVals: string[] = [];
-
- if (Array.isArray(paramValue)) {
- paramValue.forEach((param) => {
- ppVals.push(encodeURIComponent(valToString(param)));
- });
- pathParams.set(paramName, ppVals.join(","));
- } else if (
- isStringRecord(paramValue) ||
- isNumberRecord(paramValue) ||
- isBooleanRecord(paramValue)
- ) {
- Object.getOwnPropertyNames(paramValue).forEach((paramKey: string) => {
- const paramFieldValue = encodeURIComponent(
- valToString(paramValue[paramKey]),
- );
-
- if (explode) ppVals.push(`${paramKey}=${paramFieldValue}`);
- else ppVals.push(`${paramKey},${paramFieldValue}`);
- });
-
- pathParams.set(paramName, ppVals.join(","));
- } else if (paramValue instanceof Object) {
- Object.getOwnPropertyNames(paramValue).forEach((paramKey: string) => {
- const ppAnn: string = Reflect.getMetadata(
- ppMetadataKey,
- paramValue,
- paramKey,
- );
-
- if (ppAnn == null) return;
-
- const ppDecorator: ParamDecorator = parseParamDecorator(
- ppAnn,
- paramKey,
- "simple",
- explode,
- );
-
- if (ppDecorator == null) return;
-
- const paramFieldValue = encodeURIComponent(
- valToString(paramValue[paramKey]),
- );
-
- if (isEmpty(paramFieldValue)) return;
- else if (explode)
- ppVals.push(`${ppDecorator.ParamName}=${paramFieldValue}`);
- else ppVals.push(`${ppDecorator.ParamName},${paramFieldValue}`);
- });
-
- pathParams.set(paramName, ppVals.join(","));
- } else {
- pathParams.set(paramName, encodeURIComponent(valToString(paramValue)));
- }
- return pathParams;
-}
diff --git a/platform/src/internal/utils/queryparams.ts b/platform/src/internal/utils/queryparams.ts
deleted file mode 100644
index 34a9f714f..000000000
--- a/platform/src/internal/utils/queryparams.ts
+++ /dev/null
@@ -1,248 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import {
- ParamDecorator,
- parseParamDecorator,
- populateFromGlobals,
- shouldQueryParamSerialize,
- valToString,
-} from "./utils";
-
-import { requestMetadataKey } from "./requestbody";
-
-export const qpMetadataKey = "queryParam";
-const queryStringPrefix = "?";
-
-const filterAndJoin = (strings: string[]): string =>
- strings.filter((s) => !!s).join("&");
-
-export function serializeQueryParams(queryParams: any, globals?: any): string {
- const queryStringParts: string[] = [];
- if (!queryParams) return filterAndJoin(queryStringParts);
-
- const fieldNames: string[] =
- "__props__" in queryParams
- ? queryParams["__props__"].map((prop: any) => prop.key)
- : Object.getOwnPropertyNames(queryParams);
-
- fieldNames.forEach((fname) => {
- const requestBodyAnn: string = Reflect.getMetadata(
- requestMetadataKey,
- queryParams,
- fname,
- );
-
- if (requestBodyAnn) return;
-
- const qpAnn: string = Reflect.getMetadata(
- qpMetadataKey,
- queryParams,
- fname,
- );
-
- if (!qpAnn) return { serialize: () => "" };
-
- const qpDecorator: ParamDecorator = parseParamDecorator(
- qpAnn,
- fname,
- "form",
- true,
- );
-
- if (!qpDecorator) return;
-
- let value = queryParams[fname];
- value = populateFromGlobals(value, fname, "queryParam", globals);
-
- if (qpDecorator.Serialization === "json")
- queryStringParts.push(jsonSerializer({ [qpDecorator.ParamName]: value }));
- else {
- switch (qpDecorator.Style) {
- case "deepObject":
- queryStringParts.push(
- deepObjectSerializer({ [qpDecorator.ParamName]: value }),
- );
- return;
- case "form":
- if (!qpDecorator.Explode)
- queryStringParts.push(
- noExplodeSerializer({ [qpDecorator.ParamName]: value }),
- );
- else
- queryStringParts.push(
- formSerializerExplode({ [qpDecorator.ParamName]: value }),
- );
- return;
- case "pipeDelimited":
- if (!qpDecorator.Explode) {
- queryStringParts.push(
- noExplodeSerializer({ [qpDecorator.ParamName]: value }, "|"),
- );
- } else {
- queryStringParts.push(
- formSerializerExplode({ [qpDecorator.ParamName]: value }),
- );
- }
- return;
- default:
- queryStringParts.push(
- formSerializerExplode({ [qpDecorator.ParamName]: value }),
- );
- }
- }
- });
- return queryStringPrefix + filterAndJoin(queryStringParts);
-}
-
-// TODO: Add support for disabling percent encoding for reserved characters
-function jsonSerializer(params: Record): string {
- const query: string[] = [];
-
- Object.entries(Object.assign({}, params)).forEach(([key, value]) => {
- query.push(`${key}=${encodeURIComponent(JSON.stringify(value))}`);
- });
- return filterAndJoin(query);
-}
-
-// TODO: Add support for disabling percent encoding for reserved characters
-function noExplodeSerializer(
- params: Record,
- delimiter = ",",
-): string {
- const query: string[] = [];
-
- Object.entries(Object.assign({}, params)).forEach(([key, value]) => {
- if (!shouldQueryParamSerialize(value)) return;
- if (value !== Object(value))
- query.push(`${key}=${encodeURIComponent(valToString(value))}`);
- else if (Array.isArray(value)) {
- const values: string = value.map((aValue) => aValue).join(delimiter);
-
- query.push(`${key}=${encodeURIComponent(values)}`);
- } else {
- const values: string = Object.getOwnPropertyNames(value)
- .map((paramKey: string) => {
- const qpAnn: string = Reflect.getMetadata(
- qpMetadataKey,
- value,
- paramKey,
- );
-
- const qpDecorator: ParamDecorator = parseParamDecorator(
- qpAnn,
- paramKey,
- "form",
- true,
- );
-
- if (qpDecorator == null) return;
-
- const key = qpDecorator.ParamName || paramKey;
- return `${key}${delimiter}${valToString(value[paramKey])}`;
- })
- .join(delimiter);
- query.push(`${key}=${encodeURIComponent(values)}`);
- }
- });
- return filterAndJoin(query);
-}
-
-// TODO: Add support for disabling percent encoding for reserved characters
-function formSerializerExplode(params: Record): string {
- const query: string[] = [];
-
- Object.entries(Object.assign({}, params)).forEach(([key, value]) => {
- if (!shouldQueryParamSerialize(value)) return;
- if (value !== Object(value))
- query.push(`${key}=${encodeURIComponent(value)}`);
- else if (Array.isArray(value)) {
- query.push(
- value
- .map((aValue) => `${key}=${encodeURIComponent(valToString(aValue))}`)
- .join("&"),
- );
- } else
- query.push(
- Object.getOwnPropertyNames(value)
- .map((paramKey: string) => {
- const qpAnn: string = Reflect.getMetadata(
- qpMetadataKey,
- value,
- paramKey,
- );
-
- const qpDecorator: ParamDecorator = parseParamDecorator(
- qpAnn,
- paramKey,
- "form",
- true,
- );
-
- if (qpDecorator == null) return;
-
- const key = qpDecorator.ParamName || paramKey;
- return `${key}=${encodeURIComponent(valToString(value[paramKey]))}`;
- })
- .join("&"),
- );
- });
- return filterAndJoin(query);
-}
-
-// TODO: Add support for disabling percent encoding for reserved characters
-function deepObjectSerializer(params: Record): string {
- const query: string[] = [];
-
- Object.entries(Object.assign({}, params)).forEach(([key, value]) => {
- if (!shouldQueryParamSerialize(value)) return;
- if (value !== Object(value))
- query.push(`${key}=${encodeURIComponent(value)}`);
- else if (Array.isArray(value)) {
- query.push(
- value
- .map(
- ([objKey, objValue]) =>
- `${key}[${objKey}]=${encodeURIComponent(valToString(objValue))}`,
- )
- .join("&"),
- );
- } else
- query.push(
- Object.getOwnPropertyNames(value)
- .map((paramKey: string) => {
- const qpAnn: string = Reflect.getMetadata(
- qpMetadataKey,
- value,
- paramKey,
- );
-
- const qpDecorator: ParamDecorator = parseParamDecorator(
- qpAnn,
- paramKey,
- "form",
- true,
- );
-
- if (qpDecorator == null) return;
-
- // For deep objects, arr is wrapped inside object
- if (Array.isArray(value[paramKey]))
- return value[paramKey]
- .map(
- (arrValue: any) =>
- `${key}[${paramKey}]=${encodeURIComponent(
- valToString(arrValue),
- )}`,
- )
- .join("&");
- return `${key}[${paramKey}]=${encodeURIComponent(
- valToString(value[paramKey]),
- )}`;
- })
- .join("&"),
- );
- });
- return filterAndJoin(query);
-}
diff --git a/platform/src/internal/utils/requestbody.ts b/platform/src/internal/utils/requestbody.ts
deleted file mode 100644
index 3e4374c15..000000000
--- a/platform/src/internal/utils/requestbody.ts
+++ /dev/null
@@ -1,357 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import {
- isBooleanRecord,
- isNumberRecord,
- isStringRecord,
- SerializationMethodToContentType,
- valToString,
-} from "./utils";
-
-import FormData from "form-data";
-import { RFCDate } from "../../sdk/types";
-import { classToPlain } from "class-transformer";
-
-export const requestMetadataKey = "request";
-const mpFormMetadataKey = "multipart_form";
-
-export function serializeRequestBody(
- request: any,
- requestFieldName: string,
- serializationMethod: string
-): [Record, any] {
- if (request !== Object(request) || !request.hasOwnProperty(requestFieldName)) {
- return serializeContentType(SerializationMethodToContentType[serializationMethod], request);
- }
-
- const requestBodyAnn: string = Reflect.getMetadata(
- requestMetadataKey,
- request,
- requestFieldName
- );
- if (!requestBodyAnn) {
- throw new Error("invalid request type");
- }
-
- const requestDecorator: RequestDecorator = parseRequestDecorator(requestBodyAnn);
- return serializeContentType(requestDecorator.MediaType, request[requestFieldName]);
-}
-
-const serializeContentType = (contentType: string, reqBody: any): [Record, any] => {
- let [requestHeaders, requestBody]: [Record, any] = [{}, {}];
-
- switch (contentType) {
- case "multipart/form-data":
- requestBody = encodeMultipartFormData(reqBody);
- break;
-
- case "multipart/mixed":
- requestBody = encodeMultipartFormData(reqBody);
- requestHeaders = (requestBody as FormData).getHeaders();
- break;
-
- case "application/x-www-form-urlencoded":
- [requestHeaders, requestBody] = [
- { "Content-Type": `${contentType}` },
- encodeFormUrlEncodedData(reqBody),
- ];
- break;
-
- case "application/json":
- [requestHeaders, requestBody] = [
- { "Content-Type": `${contentType}` },
- classToPlain(reqBody, { exposeUnsetFields: false }),
- ];
- break;
- case "text/json":
- [requestHeaders, requestBody] = [{ "Content-Type": `${contentType}` }, reqBody];
- break;
-
- default: {
- requestBody = reqBody;
- const requestBodyType: string = typeof requestBody;
- if (
- requestBodyType === "string" ||
- requestBody instanceof String ||
- requestBody instanceof Uint8Array
- )
- requestHeaders = { "Content-Type": `${contentType}` };
- else
- throw new Error(
- `invalid request body type ${requestBodyType} for mediaType ${contentType}`
- );
- }
- }
- return [requestHeaders, requestBody];
-};
-
-const encodeFormUrlEncodedData = (data: any): string => {
- const fieldNames: string[] = Object.getOwnPropertyNames(data);
-
- let urlencoded = "";
- let amp = "";
- const appendPair = (key: string, value: string) => {
- urlencoded += `${amp}${encodeURIComponent(key)}=${encodeURIComponent(value)}`;
- amp = "&";
- };
-
- if (isNumberRecord(data) || isBooleanRecord(data) || isStringRecord(data)) {
- fieldNames.forEach((fname) => {
- const formAnn: string = Reflect.getMetadata("form", data, fname);
- let name = fname;
- if (formAnn) {
- const formDecorator: FormDecorator = parseFormDecorator(formAnn);
- name = formDecorator.Name ?? fname;
- }
- appendPair(name, data[fname]?.toString());
- });
- } else {
- fieldNames.forEach((fname) => {
- const formAnn: string = Reflect.getMetadata("form", data, fname);
- if (formAnn === null) {
- return;
- }
- const formDecorator: FormDecorator = parseFormDecorator(formAnn);
-
- if (formDecorator.JSON) {
- const name = formDecorator.Name ?? fname;
- const val = JSON.stringify(data[fname]);
- appendPair(name, val);
- } else if (formDecorator.Style === "form") {
- let parsed: Record;
- const name = formDecorator.Name ?? fname;
- if (formDecorator.Explode === true) {
- parsed = formExplode(name, data[fname]);
- } else {
- parsed = formNotExplode(name, data[fname]);
- }
-
- Object.keys(parsed).forEach((key) => {
- parsed[key].forEach((v) => appendPair(key, v));
- });
- return;
- }
- });
- }
- return urlencoded;
-};
-
-const formExplode = (fname: string, data: any): Record => {
- const exploded: Record = {};
-
- if (Array.isArray(data)) {
- data.forEach((value) => {
- if (!exploded[fname]) {
- exploded[fname] = [];
- }
- exploded[fname].push(value);
- });
- } else if (typeof data === "object") {
- if (data instanceof Date || data instanceof RFCDate) {
- if (!exploded[fname]) {
- exploded[fname] = [];
- }
- exploded[fname].push(valToString(data));
- } else {
- Object.keys(data).forEach((key) => {
- if (!exploded[key]) {
- exploded[key] = [];
- }
- exploded[key].push(data[key]);
- });
- }
- } else {
- if (!exploded[fname]) {
- exploded[fname] = [];
- }
- exploded[fname].push(valToString(data));
- }
- return exploded;
-};
-
-const formNotExplode = (fname: string, data: any): Record => {
- const notExploded: Record = {};
-
- if (Array.isArray(data)) {
- if (!notExploded[fname]) {
- notExploded[fname] = [];
- }
- notExploded[fname].push(data.map((item) => item.toString()).join(","));
- } else if (typeof data === "object") {
- if (data instanceof Date || data instanceof RFCDate) {
- if (!notExploded[fname]) {
- notExploded[fname] = [];
- }
- notExploded[fname].push(valToString(data));
- } else {
- Object.keys(data).forEach((key) => {
- if (!notExploded[key]) {
- notExploded[key] = [];
- }
- notExploded[fname].push(`${key}=${data[key]}`);
- });
- }
- } else {
- if (!notExploded[fname]) {
- notExploded[fname] = [];
- }
- notExploded[fname].push(valToString(data));
- }
- return notExploded;
-};
-
-function parseFormDecorator(formAnn: string): FormDecorator {
- const formDecorator: FormDecorator = new FormDecorator("", "form", false, false);
- formAnn.split(";").forEach((formAnnPart) => {
- const [formKey, formVal]: string[] = formAnnPart.split("=");
- switch (formKey) {
- case "name":
- formDecorator.Name = formVal;
- break;
- case "style":
- formDecorator.Style = formVal;
- break;
- case "explode":
- formDecorator.Explode = formVal === "true";
- break;
- case "json":
- formDecorator.JSON = formVal === "true";
- break;
- }
- });
-
- return formDecorator;
-}
-
-class FormDecorator {
- Name?: string;
- Style?: string;
- Explode?: boolean;
- JSON?: boolean;
-
- constructor(Name?: string, Style?: string, Explode?: boolean, JSON?: boolean) {
- this.Name = Name;
- this.Style = Style;
- this.Explode = Explode;
- this.JSON = JSON;
- }
-}
-
-function encodeMultipartFormData(form: any): FormData {
- const formData: FormData = new FormData();
-
- const fieldNames: string[] = Object.getOwnPropertyNames(form);
- fieldNames.forEach((fname) => {
- const mpFormAnn: string = Reflect.getMetadata(mpFormMetadataKey, form, fname);
-
- if (mpFormAnn == null) return;
-
- const mpFormDecorator: MultipartFormDecorator = parseMultipartFormDecorator(mpFormAnn);
-
- if (mpFormDecorator.File) return encodeMultipartFormDataFile(formData, form[fname]);
- else if (mpFormDecorator.JSON) {
- formData.append(mpFormDecorator.Name, JSON.stringify(form[fname]));
- } else {
- if (Array.isArray(form[fname])) {
- form[fname].forEach((val: any) => {
- formData.append(mpFormDecorator.Name + "[]", valToString(val));
- });
- } else {
- formData.append(mpFormDecorator.Name, valToString(form[fname]));
- }
- }
- });
- return formData;
-}
-
-function encodeMultipartFormDataFile(formData: FormData, file: any): FormData {
- if (typeof file !== "object" || Array.isArray(file) || file == null) {
- throw new Error("invalid type for multipart/form-data file");
- }
- let content: any = null;
- let fileName = "";
- let mpFormDecoratorName = "";
-
- const fieldNames: string[] = Object.getOwnPropertyNames(file);
- fieldNames.forEach((fname) => {
- const mpFormAnn: string = Reflect.getMetadata(mpFormMetadataKey, file, fname);
-
- if (mpFormAnn == null) return;
-
- const mpFormDecorator: MultipartFormDecorator = parseMultipartFormDecorator(mpFormAnn);
-
- if (!mpFormDecorator.Content && mpFormDecorator.Name == "") return;
- if (mpFormDecorator.Content) content = file[fname];
- else {
- mpFormDecoratorName = mpFormDecorator.Name;
- fileName = file[fname];
- }
- });
-
- if (mpFormDecoratorName === "" || fileName === "" || content == null) {
- throw new Error("invalid multipart/form-data file");
- }
- formData.append(mpFormDecoratorName, Buffer.from(content), fileName);
- return formData;
-}
-
-function parseMultipartFormDecorator(mpFormAnn: string): MultipartFormDecorator {
- // example "name=file"
- const mpFormDecorator: MultipartFormDecorator = new MultipartFormDecorator(
- false,
- false,
- false,
- ""
- );
- mpFormAnn.split(";").forEach((mpFormAnnPart) => {
- const [mpFormKey, mpFormVal]: string[] = mpFormAnnPart.split("=");
- switch (mpFormKey) {
- case "file":
- mpFormDecorator.File = mpFormVal == "true";
- break;
- case "content":
- mpFormDecorator.Content = mpFormVal == "true";
- break;
- case "name":
- mpFormDecorator.Name = mpFormVal;
- break;
- case "json":
- mpFormDecorator.JSON = mpFormVal == "true";
- break;
- }
- });
-
- return mpFormDecorator;
-}
-
-class MultipartFormDecorator {
- File: boolean;
- Content: boolean;
- JSON: boolean;
- Name: string;
-
- constructor(File: boolean, Content: boolean, JSON: boolean, Name: string) {
- this.File = File;
- this.Content = Content;
- this.JSON = JSON;
- this.Name = Name;
- }
-}
-
-function parseRequestDecorator(requestAnn: string): RequestDecorator {
- // example "media_type=multipart/form-data"
- const requestDecorator: RequestDecorator = new RequestDecorator("application/octet-stream");
- const [mediaTypeKey, mediaTypeVal]: string[] = requestAnn.split("=");
- if (mediaTypeKey === "media_type") requestDecorator.MediaType = mediaTypeVal;
- return requestDecorator;
-}
-
-class RequestDecorator {
- MediaType: string;
-
- constructor(MediaType: string) {
- this.MediaType = MediaType;
- }
-}
diff --git a/platform/src/internal/utils/retries.ts b/platform/src/internal/utils/retries.ts
deleted file mode 100644
index 6b03d6f3d..000000000
--- a/platform/src/internal/utils/retries.ts
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { AxiosError, AxiosResponse } from "axios";
-
-export class BackoffStrategy {
- initialInterval: number;
- maxInterval: number;
- exponent: number;
- maxElapsedTime: number;
-
- constructor(
- initialInterval: number,
- maxInterval: number,
- exponent: number,
- maxElapsedTime: number,
- ) {
- this.initialInterval = initialInterval;
- this.maxInterval = maxInterval;
- this.exponent = exponent;
- this.maxElapsedTime = maxElapsedTime;
- }
-}
-
-export class RetryConfig {
- strategy: "backoff" | "none";
- backoff?: BackoffStrategy;
- retryConnectionErrors: boolean;
-
- constructor(
- strategy: "backoff" | "none",
- backoff?: BackoffStrategy,
- retryConnectionErrors = true,
- ) {
- this.strategy = strategy;
- this.backoff = backoff;
- this.retryConnectionErrors = retryConnectionErrors;
- }
-}
-
-export class Retries {
- config: RetryConfig;
- statusCodes: string[];
-
- constructor(config: RetryConfig, statusCodes: string[]) {
- this.config = config;
- this.statusCodes = statusCodes;
- }
-}
-
-class PermanentError extends Error {
- inner: unknown;
-
- constructor(inner: unknown) {
- super("Permanent error");
- this.inner = inner;
-
- Object.setPrototypeOf(this, PermanentError.prototype);
- }
-}
-
-class TemporaryError extends Error {
- res: AxiosResponse;
-
- constructor(res: AxiosResponse) {
- super("Temporary error");
- this.res = res;
-
- Object.setPrototypeOf(this, TemporaryError.prototype);
- }
-}
-
-export async function Retry(
- fn: () => Promise>,
- retries: Retries,
-): Promise> {
- switch (retries.config.strategy) {
- case "backoff":
- return retryBackoff(
- async () => {
- try {
- const res = await fn();
- if (isRetryableResponse(res, retries.statusCodes)) {
- throw new TemporaryError(res);
- }
-
- return res;
- } catch (err) {
- if (err instanceof AxiosError) {
- if (err.response) {
- if (isRetryableResponse(err.response, retries.statusCodes)) {
- throw err;
- }
- throw new PermanentError(err);
- } else if (err.request) {
- throw err;
- } else {
- throw new PermanentError(err);
- }
- } else if (err instanceof TemporaryError) {
- throw err;
- }
- throw new PermanentError(err);
- }
- },
- retries.config.backoff?.initialInterval ?? 500,
- retries.config.backoff?.maxInterval ?? 60000,
- retries.config.backoff?.exponent ?? 1.5,
- retries.config.backoff?.maxElapsedTime ?? 3600000,
- );
- default:
- return await fn();
- }
-}
-
-function isRetryableResponse(
- res: AxiosResponse,
- statusCodes: string[],
-): boolean {
- for (const code of statusCodes) {
- if (code.toUpperCase().includes("X")) {
- const codeRange = parseInt(code[0]);
- if (isNaN(codeRange)) {
- throw new Error("Invalid status code range");
- }
-
- const s = res.status / 100;
-
- if (s >= codeRange && s < codeRange + 1) {
- return true;
- }
- } else if (res.status == parseInt(code)) {
- return true;
- }
- }
-
- return false;
-}
-
-async function retryBackoff(
- fn: () => Promise>,
- initialInterval: number,
- maxInterval: number,
- exponent: number,
- maxElapsedTime: number,
-): Promise> {
- const start = Date.now();
- let x = 0;
-
- // eslint-disable-next-line no-constant-condition
- while (true) {
- try {
- return await fn();
- } catch (err) {
- if (err instanceof PermanentError) {
- throw err.inner;
- }
-
- const now = Date.now();
- if (now - start > maxElapsedTime) {
- if (err instanceof TemporaryError) {
- return err.res;
- }
-
- throw err;
- }
-
- const d = Math.min(
- initialInterval * Math.pow(x, exponent) + Math.random() * 1000,
- maxInterval,
- );
-
- await delay(d);
- x++;
- }
- }
-}
-
-async function delay(delay: number): Promise {
- return new Promise((resolve) => setTimeout(resolve, delay));
-}
diff --git a/platform/src/internal/utils/security.ts b/platform/src/internal/utils/security.ts
deleted file mode 100644
index d9c693d47..000000000
--- a/platform/src/internal/utils/security.ts
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-const securityMetadataKey = "security";
-
-export type SecurityProperties = {
- params: Record;
- headers: Record;
-};
-
-export function parseSecurityProperties(security: any): SecurityProperties {
- return parseSecurityClass(security);
-}
-
-function parseSecurityDecorator(securityAnn: string): SecurityDecorator {
- // scheme=true;type=apiKey;subtype=header"
- let option = false;
- let scheme = false;
- let name = "";
- let securityType = "";
- let securitySubType = "";
-
- securityAnn.split(";").forEach((securityAnnPart) => {
- const [sKey, sVal]: string[] = securityAnnPart.split("=");
- switch (sKey) {
- case "name":
- name = sVal;
- break;
- case "type":
- securityType = sVal;
- break;
- case "subtype":
- securitySubType = sVal;
- break;
- case "option":
- option = sVal == "true";
- break;
- case "scheme":
- scheme = sVal == "true";
- }
- });
-
- return new SecurityDecorator(
- name,
- securityType,
- option,
- scheme,
- securitySubType,
- );
-}
-
-function parseSecurityClass(security: any): SecurityProperties {
- const fieldNames: string[] = Object.getOwnPropertyNames(security);
- const properties: SecurityProperties = {
- params: {},
- headers: {},
- };
- fieldNames.forEach((fname) => {
- const securityAnn: string = Reflect.getMetadata(
- securityMetadataKey,
- security,
- fname,
- );
- if (securityAnn == null) return;
- const securityDecorator: SecurityDecorator =
- parseSecurityDecorator(securityAnn);
- if (securityDecorator == null) return;
-
- const value = security[fname];
-
- if (securityDecorator.Option) {
- return parseSecurityOption(properties, value);
- } else if (securityDecorator.Scheme) {
- if (securityDecorator.SubType === "basic" && value !== Object(value)) {
- return parseSecurityScheme(properties, securityDecorator, security);
- } else {
- return parseSecurityScheme(properties, securityDecorator, value);
- }
- }
- });
-
- return properties;
-}
-
-function parseSecurityOption(
- properties: SecurityProperties,
- optionType: any,
-): void {
- const fieldNames: string[] = Object.getOwnPropertyNames(optionType);
- fieldNames.forEach((fname) => {
- const securityAnn: string = Reflect.getMetadata(
- securityMetadataKey,
- optionType,
- fname,
- );
- if (securityAnn == null) return;
- const securityDecorator: SecurityDecorator =
- parseSecurityDecorator(securityAnn);
- if (securityDecorator == null || !securityDecorator.Scheme) return;
- return parseSecurityScheme(
- properties,
- securityDecorator,
- optionType[fname],
- );
- });
-}
-
-function parseSecurityScheme(
- properties: SecurityProperties,
- schemeDecorator: SecurityDecorator,
- scheme: any,
-): void {
- if (scheme === Object(scheme)) {
- if (
- schemeDecorator.Type === "http" &&
- schemeDecorator.SubType === "basic"
- ) {
- return parseBasicAuthScheme(properties, scheme);
- }
-
- const fieldNames: string[] = Object.getOwnPropertyNames(scheme);
- fieldNames.forEach((fname) => {
- const securityAnn: string = Reflect.getMetadata(
- securityMetadataKey,
- scheme,
- fname,
- );
- if (securityAnn == null) return;
- const securityDecorator: SecurityDecorator =
- parseSecurityDecorator(securityAnn);
- if (securityDecorator == null || securityDecorator.Name === "") return;
-
- return parseSecuritySchemeValue(
- properties,
- schemeDecorator,
- securityDecorator,
- scheme[fname],
- );
- });
- } else {
- return parseSecuritySchemeValue(
- properties,
- schemeDecorator,
- schemeDecorator,
- scheme,
- );
- }
-}
-
-function parseSecuritySchemeValue(
- properties: SecurityProperties,
- schemeDecorator: SecurityDecorator,
- securityDecorator: SecurityDecorator,
- value: any,
-): void {
- switch (schemeDecorator.Type) {
- case "apiKey":
- switch (schemeDecorator.SubType) {
- case "header":
- properties.headers[securityDecorator.Name] = value;
- break;
- case "query":
- properties.params[securityDecorator.Name] = value;
- break;
- case "cookie": {
- const securityDecoratorName: string = securityDecorator.Name;
- const val: string = value;
- properties.headers["Cookie"] = `${securityDecoratorName}=${val}`;
- break;
- }
- default:
- throw new Error("not supported");
- }
- break;
- case "openIdConnect":
- properties.headers[securityDecorator.Name] = value;
- break;
- case "oauth2":
- properties.headers[securityDecorator.Name] = value
- .toLowerCase()
- .startsWith("bearer ")
- ? value
- : `Bearer ${value}`;
- break;
- case "http":
- switch (schemeDecorator.SubType) {
- case "basic":
- break;
- case "bearer":
- properties.headers[securityDecorator.Name] = value
- .toLowerCase()
- .startsWith("bearer ")
- ? value
- : `Bearer ${value}`;
- break;
- default:
- throw new Error("not supported");
- }
- break;
- default:
- throw new Error("not supported");
- }
-}
-
-function parseBasicAuthScheme(
- properties: SecurityProperties,
- scheme: any,
-): void {
- let username,
- password = "";
-
- const fieldNames: string[] = Object.getOwnPropertyNames(scheme);
- fieldNames.forEach((fname) => {
- const securityAnn: string = Reflect.getMetadata(
- securityMetadataKey,
- scheme,
- fname,
- );
- if (securityAnn == null) return;
- const securityDecorator: SecurityDecorator =
- parseSecurityDecorator(securityAnn);
- if (securityDecorator == null || securityDecorator.Name === "") return;
-
- switch (securityDecorator.Name) {
- case "username":
- username = scheme[fname];
- break;
- case "password":
- password = scheme[fname];
- break;
- }
- });
-
- properties.headers["Authorization"] = `Basic ${Buffer.from(
- `${username}:${password}`,
- ).toString("base64")}`;
-}
-
-class SecurityDecorator {
- Name: string;
- Type: string;
- Option: boolean;
- Scheme: boolean;
- SubType: string;
- constructor(
- Name: string,
- Type: string,
- Option: boolean,
- Scheme: boolean,
- SubType: string,
- ) {
- this.Name = Name;
- this.Type = Type;
- this.Option = Option;
- this.Scheme = Scheme;
- this.SubType = SubType;
- }
-}
diff --git a/platform/src/internal/utils/utils.ts b/platform/src/internal/utils/utils.ts
deleted file mode 100644
index 38f9f4b66..000000000
--- a/platform/src/internal/utils/utils.ts
+++ /dev/null
@@ -1,367 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import "reflect-metadata";
-
-import { getSimplePathParams, ppMetadataKey } from "./pathparams";
-
-import { plainToInstance } from "class-transformer";
-import { RFCDate } from "../../sdk/types";
-import { requestMetadataKey } from "./requestbody";
-
-export const SerializationMethodToContentType: Record = {
- json: "application/json",
- form: "application/x-www-form-urlencoded",
- multipart: "multipart/form-data",
- raw: "application/octet-stream",
- string: "text/plain",
-};
-
-export interface PropInfo {
- key: string | symbol;
- type: any;
- elemType: any;
- elemDepth: number;
-}
-
-function isSpeakeasyBase(type: any): boolean {
- return type && Object.getPrototypeOf(type)?.name == SpeakeasyBase.name;
-}
-
-function handleArray(value: any, elemType: any, elemDepth: number): any {
- if (!Array.isArray(value)) {
- return value;
- }
-
- if (elemDepth == 1) {
- return value.map((v: any) => new elemType(v));
- } else {
- return value.map((v: any) => {
- if (Array.isArray(v)) {
- return handleArray(v, elemType, elemDepth - 1);
- } else if (typeof v == "object") {
- return handleObject(v, elemType, elemDepth - 1);
- } else {
- return v;
- }
- });
- }
-}
-
-function handleObject(value: any, elemType: any, elemDepth: number): any {
- if (typeof value != "object") {
- return value;
- }
-
- if (elemDepth == 1) {
- return Object.keys(value).reduce((acc: any, key: string) => {
- acc[key] = new elemType(value[key]);
- return acc;
- }, {});
- } else {
- return Object.keys(value).reduce((acc: any, key: string) => {
- const v = value[key];
- if (Array.isArray(v)) {
- acc[key] = handleArray(v, elemType, elemDepth - 1);
- } else if (typeof v == "object") {
- acc[key] = handleObject(v, elemType, elemDepth - 1);
- } else {
- acc[key] = v;
- }
- return acc;
- }, {});
- }
-}
-
-export class SpeakeasyBase {
- constructor(payload?: Record) {
- const props: PropInfo[] = (this as any)["__props__"];
- if (props) {
- for (const prop of props) {
- if (payload && payload.hasOwnProperty(prop.key)) {
- const value = payload[prop.key];
- if (isSpeakeasyBase(prop.type) && value != null) {
- (this as any)[prop.key] = new prop.type(value);
- } else if (prop.type.name == "Array" && isSpeakeasyBase(prop.elemType)) {
- (this as any)[prop.key] = handleArray(value, prop.elemType, prop.elemDepth);
- } else if (prop.type.name == "Object" && isSpeakeasyBase(prop.elemType)) {
- (this as any)[prop.key] = handleObject(
- value,
- prop.elemType,
- prop.elemDepth
- );
- } else if (prop.type.name == "RFCDate") {
- if (value instanceof Date) {
- (this as any)[prop.key] = new RFCDate(value);
- } else {
- (this as any)[prop.key] = value;
- }
- } else {
- (this as any)[prop.key] = value;
- }
- }
- }
- }
- }
-}
-
-export class ParamDecorator {
- Style: string;
- Explode: boolean;
- ParamName: string;
- Serialization?: string;
- constructor(Style: string, Explode: boolean, ParamName: string, Serialization?: string) {
- this.Style = Style;
- this.Explode = Explode;
- this.ParamName = ParamName;
- this.Serialization = Serialization;
- }
-}
-
-export function SpeakeasyMetadata<
- T extends SpeakeasyBase = Record
->(params?: { data?: string; elemType?: { new (): T }; elemDepth?: number }): PropertyDecorator {
- return (target, propertyKey) => {
- if (params?.data) {
- const annsArr = params.data.split(", ");
-
- for (let i = 0; i < annsArr.length; i += 2) {
- Reflect.defineMetadata(annsArr[i], annsArr[i + 1], target, propertyKey);
- }
- }
-
- let props: PropInfo[];
- if (target.hasOwnProperty("__props__")) {
- props = (target as any)["__props__"];
- } else {
- props = (target as any)["__props__"] = [];
- }
-
- const prop = {
- key: propertyKey,
- type: Reflect.getMetadata("design:type", target, propertyKey),
- } as PropInfo;
-
- if (params?.elemType) {
- prop.elemType = params.elemType;
- prop.elemDepth = params.elemDepth || 1;
- }
-
- props.push(prop);
- };
-}
-
-export function templateUrl(stringWithParams: string, params: Record): string {
- let res: string = stringWithParams;
- if (params) {
- Object.entries(params).forEach(([key, value]) => {
- const match: string = "{" + key + "}";
- res = res.replaceAll(match, value);
- });
- }
- return res;
-}
-
-export function generateURL(
- serverURL: string,
- path: string,
- pathParams: any,
- globals?: any
-): string {
- const url: string = serverURL.replace(/\/$/, "") + path;
- const parsedParameters: Record = {};
-
- const fieldNames: string[] =
- "__props__" in pathParams
- ? pathParams["__props__"].map((prop: any) => prop.key)
- : Object.getOwnPropertyNames(pathParams);
- fieldNames.forEach((fname) => {
- const requestBodyAnn: string = Reflect.getMetadata(requestMetadataKey, pathParams, fname);
-
- if (requestBodyAnn) return;
-
- const ppAnn: string = Reflect.getMetadata(ppMetadataKey, pathParams, fname);
-
- if (ppAnn == null) return;
-
- const ppDecorator: ParamDecorator = parseParamDecorator(ppAnn, fname, "simple", false);
- if (ppDecorator == null) return;
-
- let value = pathParams[fname];
- value = populateFromGlobals(value, fname, "pathParam", globals);
-
- if (ppDecorator.Serialization) {
- switch (ppDecorator.Serialization) {
- case "json":
- parsedParameters[ppDecorator.ParamName] = encodeURIComponent(
- JSON.stringify(value)
- );
- break;
- }
- } else {
- switch (ppDecorator.Style) {
- case "simple": {
- const simpleParams: Map = getSimplePathParams(
- ppDecorator.ParamName,
- value,
- ppDecorator.Explode
- );
- simpleParams.forEach((value, key) => {
- parsedParameters[key] = value;
- });
- }
- }
- }
- });
- return templateUrl(url, parsedParameters);
-}
-
-export function parseParamDecorator(
- ann: string,
- fName: string,
- defaultStyle: string,
- defaultExplode: boolean
-): ParamDecorator {
- // style=simple;explode=false;name=apiID
- const decorator: ParamDecorator = new ParamDecorator(
- defaultStyle,
- defaultExplode,
- fName.toLowerCase()
- );
-
- if (ann == null) return decorator;
- ann.split(";").forEach((annPart) => {
- const [paramKey, paramVal]: string[] = annPart.split("=");
- switch (paramKey) {
- case "style":
- decorator.Style = paramVal;
- break;
- case "explode":
- decorator.Explode = paramVal == "true";
- break;
- case "name":
- decorator.ParamName = paramVal;
- break;
- case "serialization":
- decorator.Serialization = paramVal;
- break;
- }
- });
- return decorator;
-}
-
-export function isStringRecord(obj: any): obj is Record {
- if (typeof obj !== "object") return false;
-
- if (Object.getOwnPropertySymbols(obj).length > 0) return false;
-
- return Object.getOwnPropertyNames(obj).every((prop) => typeof obj[prop] === "string");
-}
-
-export function isNumberRecord(obj: any): obj is Record {
- if (typeof obj !== "object") return false;
-
- if (Object.getOwnPropertySymbols(obj).length > 0) return false;
-
- return Object.getOwnPropertyNames(obj).every((prop) => typeof obj[prop] === "number");
-}
-
-export function isBooleanRecord(obj: any): obj is Record {
- if (typeof obj !== "object") return false;
-
- if (Object.getOwnPropertySymbols(obj).length > 0) return false;
-
- return Object.getOwnPropertyNames(obj).every((prop) => typeof obj[prop] === "boolean");
-}
-
-export function isEmpty(value: any): boolean {
- // check for undefined, null, and NaN
- let res = false;
- if (typeof value === "number") res = Number.isNaN(value);
- else if (typeof value === "string") res = value === "";
- return res || value == null;
-}
-
-export function objectToClass(value: T, klass?: any, elemDepth = 0): any {
- if (value !== Object(value)) {
- return value;
- }
-
- if (elemDepth === 0 && klass != null) {
- return plainToInstance(klass, value, {
- excludeExtraneousValues: true,
- exposeUnsetFields: false,
- }) as typeof klass;
- }
-
- if (Array.isArray(value)) {
- return value.map((v) => objectToClass(v, klass, elemDepth - 1));
- }
-
- if (typeof value === "object" && value != null) {
- const copiedRecord: Record = {};
- for (const key in value) {
- copiedRecord[key] = objectToClass(value[key], klass, elemDepth - 1);
- }
- return copiedRecord;
- }
-
- return plainToInstance(klass, value, {
- excludeExtraneousValues: true,
- exposeUnsetFields: false,
- }) as typeof klass;
-}
-
-export function getResFieldDepth(res: any): number {
- const props = res["__props__"];
- let resFieldDepth = 1;
-
- if (props) {
- for (const prop of props) {
- if (res && res.hasOwnProperty(prop.key)) {
- if (
- (prop.type.name == "Array" || prop.type.name == "Object") &&
- isSpeakeasyBase(prop.elemType)
- ) {
- if (prop.elemDepth > resFieldDepth) {
- resFieldDepth = prop.elemDepth;
- break;
- }
- }
- }
- }
- }
-
- return resFieldDepth;
-}
-
-export function populateFromGlobals(
- value: any,
- fieldName: string,
- paramType: string,
- globals: any
-): any {
- if (globals && value === undefined) {
- if ("parameters" in globals && paramType in globals.parameters) {
- const globalValue = globals.parameters[paramType][fieldName];
- if (globalValue !== undefined) {
- value = globalValue;
- }
- }
- }
-
- return value;
-}
-
-export function valToString(value: any): string {
- if (value instanceof Date) {
- return value.toISOString();
- }
-
- return value.toString();
-}
-
-export function shouldQueryParamSerialize(value: any): boolean {
- return !(value === undefined || value === null || value === "");
-}
diff --git a/platform/src/lib/base64.ts b/platform/src/lib/base64.ts
new file mode 100644
index 000000000..cda076411
--- /dev/null
+++ b/platform/src/lib/base64.ts
@@ -0,0 +1,37 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import * as z from "zod";
+
+export function bytesToBase64(u8arr: Uint8Array): string {
+ return btoa(String.fromCodePoint(...u8arr));
+}
+
+export function bytesFromBase64(encoded: string): Uint8Array {
+ return Uint8Array.from(atob(encoded), (c) => c.charCodeAt(0));
+}
+
+export function stringToBytes(str: string): Uint8Array {
+ return new TextEncoder().encode(str);
+}
+
+export function stringFromBytes(u8arr: Uint8Array): string {
+ return new TextDecoder().decode(u8arr);
+}
+
+export function stringToBase64(str: string): string {
+ return bytesToBase64(stringToBytes(str));
+}
+
+export function stringFromBase64(b64str: string): string {
+ return stringFromBytes(bytesFromBase64(b64str));
+}
+
+export const zodOutbound = z
+ .instanceof(Uint8Array)
+ .or(z.string().transform(stringToBytes));
+
+export const zodInbound = z
+ .instanceof(Uint8Array)
+ .or(z.string().transform(bytesFromBase64));
diff --git a/platform/src/lib/config.ts b/platform/src/lib/config.ts
new file mode 100644
index 000000000..fd87d74ad
--- /dev/null
+++ b/platform/src/lib/config.ts
@@ -0,0 +1,60 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import { HTTPClient } from "./http.js";
+import { RetryConfig } from "./retries.js";
+import { Params, pathToFunc } from "./url.js";
+
+/**
+ * Contains the list of servers available to the SDK
+ */
+export const ServerList = [
+ /**
+ * Production
+ */
+ "https://api.codat.io",
+] as const;
+
+export type SDKOptions = {
+ authHeader?: string | (() => Promise);
+
+ httpClient?: HTTPClient;
+ /**
+ * Allows overriding the default server used by the SDK
+ */
+ serverIdx?: number;
+ /**
+ * Allows overriding the default server URL used by the SDK
+ */
+ serverURL?: string;
+ /**
+ * Allows overriding the default retry config used by the SDK
+ */
+ retryConfig?: RetryConfig;
+};
+
+export function serverURLFromOptions(options: SDKOptions): URL | null {
+ let serverURL = options.serverURL;
+
+ const params: Params = {};
+
+ if (!serverURL) {
+ const serverIdx = options.serverIdx ?? 0;
+ if (serverIdx < 0 || serverIdx >= ServerList.length) {
+ throw new Error(`Invalid server index ${serverIdx}`);
+ }
+ serverURL = ServerList[serverIdx] || "";
+ }
+
+ const u = pathToFunc(serverURL)(params);
+ return new URL(u);
+}
+
+export const SDK_METADATA = {
+ language: "typescript",
+ openapiDocVersion: "3.0.0",
+ sdkVersion: "3.0.0",
+ genVersion: "2.361.10",
+ userAgent: "speakeasy-sdk/typescript 3.0.0 2.361.10 3.0.0 @codat/platform",
+} as const;
diff --git a/platform/src/lib/encodings.ts b/platform/src/lib/encodings.ts
new file mode 100644
index 000000000..49f536b65
--- /dev/null
+++ b/platform/src/lib/encodings.ts
@@ -0,0 +1,431 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import { bytesToBase64 } from "./base64.js";
+import { isPlainObject } from "./is-plain-object.js";
+
+export class EncodingError extends Error {
+ constructor(message: string) {
+ super(message);
+ this.name = "EncodingError";
+ }
+}
+
+export function encodeMatrix(
+ key: string,
+ value: unknown,
+ options?: { explode?: boolean; charEncoding?: "percent" | "none" },
+): string {
+ let out = "";
+ const pairs: [string, unknown][] = options?.explode
+ ? explode(key, value)
+ : [[key, value]];
+
+ const encodeString = (v: string) => {
+ return options?.charEncoding === "percent" ? encodeURIComponent(v) : v;
+ };
+ const encodeValue = (v: unknown) => encodeString(serializeValue(v));
+
+ pairs.forEach(([pk, pv]) => {
+ let tmp = "";
+ let encValue = "";
+
+ if (pv === undefined) {
+ return;
+ } else if (Array.isArray(pv)) {
+ encValue = mapDefined(pv, (v) => `${encodeValue(v)}`).join(",");
+ } else if (isPlainObject(pv)) {
+ encValue = mapDefinedEntries(Object.entries(pv), ([k, v]) => {
+ return `,${encodeString(k)},${encodeValue(v)}`;
+ }).join("");
+ encValue = encValue.slice(1);
+ } else {
+ encValue = `${encodeValue(pv)}`;
+ }
+
+ const keyPrefix = encodeString(pk);
+ tmp = `${keyPrefix}=${encValue}`;
+ // trim trailing '=' if value was empty
+ if (tmp === `${keyPrefix}=`) {
+ tmp = tmp.slice(0, -1);
+ }
+
+ // If we end up with the nothing then skip forward
+ if (!tmp) {
+ return;
+ }
+
+ out += `;${tmp}`;
+ });
+
+ return out;
+}
+
+export function encodeLabel(
+ key: string,
+ value: unknown,
+ options?: { explode?: boolean; charEncoding?: "percent" | "none" },
+): string {
+ let out = "";
+ const pairs: [string, unknown][] = options?.explode
+ ? explode(key, value)
+ : [[key, value]];
+
+ const encodeString = (v: string) => {
+ return options?.charEncoding === "percent" ? encodeURIComponent(v) : v;
+ };
+ const encodeValue = (v: unknown) => encodeString(serializeValue(v));
+
+ pairs.forEach(([pk, pv]) => {
+ let encValue = "";
+
+ if (pv === undefined) {
+ return;
+ } else if (Array.isArray(pv)) {
+ encValue = mapDefined(pv, (v) => `${encodeValue(v)}`).join(".");
+ } else if (isPlainObject(pv)) {
+ encValue = mapDefinedEntries(Object.entries(pv), ([k, v]) => {
+ return `.${encodeString(k)}.${encodeValue(v)}`;
+ }).join("");
+ encValue = encValue.slice(1);
+ } else {
+ const k =
+ options?.explode && isPlainObject(value) ? `${encodeString(pk)}=` : "";
+ encValue = `${k}${encodeValue(pv)}`;
+ }
+
+ out += `.${encValue}`;
+ });
+
+ return out;
+}
+
+type FormEncoder = (
+ key: string,
+ value: unknown,
+ options?: { explode?: boolean; charEncoding?: "percent" | "none" },
+) => string;
+
+function formEncoder(sep: string): FormEncoder {
+ return (
+ key: string,
+ value: unknown,
+ options?: { explode?: boolean; charEncoding?: "percent" | "none" },
+ ) => {
+ let out = "";
+ const pairs: [string, unknown][] = options?.explode
+ ? explode(key, value)
+ : [[key, value]];
+
+ const encodeString = (v: string) => {
+ return options?.charEncoding === "percent" ? encodeURIComponent(v) : v;
+ };
+
+ const encodeValue = (v: unknown) => encodeString(serializeValue(v));
+
+ const encodedSep = encodeString(sep);
+
+ pairs.forEach(([pk, pv]) => {
+ let tmp = "";
+ let encValue = "";
+
+ if (pv === undefined) {
+ return;
+ } else if (Array.isArray(pv)) {
+ encValue = mapDefined(pv, (v) => `${encodeValue(v)}`).join(encodedSep);
+ } else if (isPlainObject(pv)) {
+ encValue = mapDefinedEntries(Object.entries(pv), ([k, v]) => {
+ return `${encodeString(k)}${encodedSep}${encodeValue(v)}`;
+ }).join(encodedSep);
+ } else {
+ encValue = `${encodeValue(pv)}`;
+ }
+
+ tmp = `${encodeString(pk)}=${encValue}`;
+
+ // If we end up with the nothing then skip forward
+ if (!tmp || tmp === "=") {
+ return;
+ }
+
+ out += `&${tmp}`;
+ });
+
+ return out.slice(1);
+ };
+}
+
+export const encodeForm = formEncoder(",");
+export const encodeSpaceDelimited = formEncoder(" ");
+export const encodePipeDelimited = formEncoder("|");
+
+export function encodeBodyForm(
+ key: string,
+ value: unknown,
+ options?: { explode?: boolean; charEncoding?: "percent" | "none" },
+): string {
+ let out = "";
+ const pairs: [string, unknown][] = options?.explode
+ ? explode(key, value)
+ : [[key, value]];
+
+ const encodeString = (v: string) => {
+ return options?.charEncoding === "percent" ? encodeURIComponent(v) : v;
+ };
+
+ const encodeValue = (v: unknown) => encodeString(serializeValue(v));
+
+ pairs.forEach(([pk, pv]) => {
+ let tmp = "";
+ let encValue = "";
+
+ if (pv === undefined) {
+ return;
+ } else if (Array.isArray(pv)) {
+ encValue = JSON.stringify(pv, jsonReplacer);
+ } else if (isPlainObject(pv)) {
+ encValue = JSON.stringify(pv, jsonReplacer);
+ } else {
+ encValue = `${encodeValue(pv)}`;
+ }
+
+ tmp = `${encodeString(pk)}=${encValue}`;
+
+ // If we end up with the nothing then skip forward
+ if (!tmp || tmp === "=") {
+ return;
+ }
+
+ out += `&${tmp}`;
+ });
+
+ return out.slice(1);
+}
+
+export function encodeDeepObject(
+ key: string,
+ value: unknown,
+ options?: { charEncoding?: "percent" | "none" },
+): string {
+ if (value == null) {
+ return "";
+ }
+
+ let out = "";
+
+ const encodeString = (v: string) => {
+ return options?.charEncoding === "percent" ? encodeURIComponent(v) : v;
+ };
+
+ if (!isPlainObject(value)) {
+ throw new EncodingError(
+ `Value of parameter '${key}' which uses deepObject encoding must be an object`,
+ );
+ }
+
+ Object.entries(value).forEach(([ck, cv]) => {
+ if (cv === undefined) {
+ return;
+ }
+
+ const pk = `${key}[${ck}]`;
+
+ if (isPlainObject(cv)) {
+ throw new EncodingError(
+ `Value of parameter field '${pk}' cannot be an array or object.`,
+ );
+ }
+
+ const pairs: unknown[] = Array.isArray(cv) ? cv : [cv];
+ let encoded = "";
+
+ encoded = mapDefined(pairs, (v) => {
+ return `${encodeString(pk)}=${encodeString(serializeValue(v))}`;
+ }).join("&");
+
+ out += `&${encoded}`;
+ });
+
+ return out.slice(1);
+}
+
+export function encodeJSON(
+ key: string,
+ value: unknown,
+ options?: { explode?: boolean; charEncoding?: "percent" | "none" },
+): string {
+ if (typeof value === "undefined") {
+ return "";
+ }
+
+ const encodeString = (v: string) => {
+ return options?.charEncoding === "percent" ? encodeURIComponent(v) : v;
+ };
+
+ const encVal = encodeString(JSON.stringify(value, jsonReplacer));
+
+ return options?.explode ? encVal : `${encodeString(key)}=${encVal}`;
+}
+
+export const encodeSimple = (
+ key: string,
+ value: unknown,
+ options?: { explode?: boolean; charEncoding?: "percent" | "none" },
+): string => {
+ let out = "";
+ const pairs: [string, unknown][] = options?.explode
+ ? explode(key, value)
+ : [[key, value]];
+
+ const encodeString = (v: string) => {
+ return options?.charEncoding === "percent" ? encodeURIComponent(v) : v;
+ };
+ const encodeValue = (v: unknown) => encodeString(serializeValue(v));
+
+ pairs.forEach(([pk, pv]) => {
+ let tmp = "";
+
+ if (pv === undefined) {
+ return;
+ } else if (Array.isArray(pv)) {
+ tmp = mapDefined(pv, (v) => `${encodeValue(v)}`).join(",");
+ } else if (isPlainObject(pv)) {
+ tmp = mapDefinedEntries(Object.entries(pv), ([k, v]) => {
+ return `,${encodeString(k)},${encodeValue(v)}`;
+ }).join("");
+ tmp = tmp.slice(1);
+ } else {
+ const k = options?.explode && isPlainObject(value) ? `${pk}=` : "";
+ tmp = `${k}${encodeValue(pv)}`;
+ }
+
+ // If we end up with the nothing then skip forward
+ if (!tmp) {
+ return;
+ }
+
+ out += `,${tmp}`;
+ });
+
+ return out.slice(1);
+};
+
+function explode(key: string, value: unknown): [string, unknown][] {
+ if (Array.isArray(value)) {
+ return value.map((v) => [key, v]);
+ } else if (isPlainObject(value)) {
+ const o = value ?? {};
+ return Object.entries(o).map(([k, v]) => [k, v]);
+ } else {
+ return [[key, value]];
+ }
+}
+
+function serializeValue(value: unknown): string {
+ if (value === null) {
+ return "null";
+ } else if (typeof value === "undefined") {
+ return "";
+ } else if (value instanceof Date) {
+ return value.toISOString();
+ } else if (value instanceof Uint8Array) {
+ return bytesToBase64(value);
+ } else if (typeof value === "object") {
+ return JSON.stringify(value, jsonReplacer);
+ }
+
+ return `${value}`;
+}
+
+function jsonReplacer(_: string, value: unknown): unknown {
+ if (value instanceof Uint8Array) {
+ return bytesToBase64(value);
+ } else {
+ return value;
+ }
+}
+
+function mapDefined(inp: T[], mapper: (v: T) => R): R[] {
+ return inp.reduce((acc, v) => {
+ if (v === undefined) {
+ return acc;
+ }
+
+ const m = mapper(v);
+ if (m === undefined) {
+ return acc;
+ }
+
+ acc.push(m);
+
+ return acc;
+ }, []);
+}
+
+function mapDefinedEntries(
+ inp: Iterable<[K, V]>,
+ mapper: (v: [K, V]) => R,
+): R[] {
+ const acc: R[] = [];
+ for (const [k, v] of inp) {
+ if (v === undefined) {
+ continue;
+ }
+
+ const m = mapper([k, v]);
+ if (m === undefined) {
+ continue;
+ }
+
+ acc.push(m);
+ }
+
+ return acc;
+}
+
+export function queryJoin(...args: string[]): string {
+ return args.filter(Boolean).join("&");
+}
+
+type QueryEncoderOptions = {
+ explode?: boolean;
+ charEncoding?: "percent" | "none";
+};
+
+type QueryEncoder = (
+ key: string,
+ value: unknown,
+ options?: QueryEncoderOptions,
+) => string;
+
+type BulkQueryEncoder = (
+ values: Record,
+ options?: QueryEncoderOptions,
+) => string;
+
+export function queryEncoder(f: QueryEncoder): BulkQueryEncoder {
+ const bulkEncode = function (
+ values: Record,
+ options?: QueryEncoderOptions,
+ ): string {
+ const opts: QueryEncoderOptions = {
+ ...options,
+ explode: options?.explode ?? true,
+ charEncoding: options?.charEncoding ?? "percent",
+ };
+
+ const encoded = Object.entries(values).map(([key, value]) => {
+ return f(key, value, opts);
+ });
+ return queryJoin(...encoded);
+ };
+
+ return bulkEncode;
+}
+
+export const encodeJSONQuery = queryEncoder(encodeJSON);
+export const encodeFormQuery = queryEncoder(encodeForm);
+export const encodeSpaceDelimitedQuery = queryEncoder(encodeSpaceDelimited);
+export const encodePipeDelimitedQuery = queryEncoder(encodePipeDelimited);
+export const encodeDeepObjectQuery = queryEncoder(encodeDeepObject);
diff --git a/platform/src/lib/http.ts b/platform/src/lib/http.ts
new file mode 100644
index 000000000..02a35e36a
--- /dev/null
+++ b/platform/src/lib/http.ts
@@ -0,0 +1,504 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import { never as znever } from "zod";
+import { parse } from "./schemas.js";
+import { isPlainObject } from "./is-plain-object.js";
+import { SDKError } from "../sdk/models/errors/sdkerror.js";
+
+export type Fetcher = (input: RequestInfo | URL, init?: RequestInit) => Promise;
+
+export type Awaitable = T | Promise;
+
+const DEFAULT_FETCHER: Fetcher = (input, init) => {
+ // If input is a Request and init is undefined, Bun will discard the method,
+ // headers, body and other options that were set on the request object.
+ // Node.js and browers would ignore an undefined init value. This check is
+ // therefore needed for interop with Bun.
+ if (init == null) {
+ return fetch(input);
+ } else {
+ return fetch(input, init);
+ }
+};
+
+export type RequestInput = {
+ /**
+ * The URL the request will use.
+ */
+ url: URL;
+ /**
+ * Options used to create a [`Request`](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request).
+ */
+ options?: RequestInit | undefined;
+};
+
+export interface HTTPClientOptions {
+ fetcher?: Fetcher;
+}
+
+export type BeforeRequestHook = (req: Request) => Awaitable;
+export type RequestErrorHook = (err: unknown, req: Request) => Awaitable;
+export type ResponseHook = (res: Response, req: Request) => Awaitable;
+
+export class HTTPClient {
+ private fetcher: Fetcher;
+ private requestHooks: BeforeRequestHook[] = [];
+ private requestErrorHooks: RequestErrorHook[] = [];
+ private responseHooks: ResponseHook[] = [];
+
+ constructor(private options: HTTPClientOptions = {}) {
+ this.fetcher = options.fetcher || DEFAULT_FETCHER;
+ }
+
+ async request(request: Request): Promise {
+ let req = request;
+ for (const hook of this.requestHooks) {
+ const nextRequest = await hook(req);
+ if (nextRequest) {
+ req = nextRequest;
+ }
+ }
+
+ try {
+ const res = await this.fetcher(req);
+
+ for (const hook of this.responseHooks) {
+ await hook(res, req);
+ }
+
+ return res;
+ } catch (err) {
+ for (const hook of this.requestErrorHooks) {
+ await hook(err, req);
+ }
+
+ throw err;
+ }
+ }
+
+ /**
+ * Registers a hook that is called before a request is made. The hook function
+ * can mutate the request or return a new request. This may be useful to add
+ * additional information to request such as request IDs and tracing headers.
+ */
+ addHook(hook: "beforeRequest", fn: BeforeRequestHook): this;
+ /**
+ * Registers a hook that is called when a request cannot be made due to a
+ * network error.
+ */
+ addHook(hook: "requestError", fn: RequestErrorHook): this;
+ /**
+ * Registers a hook that is called when a response has been received from the
+ * server.
+ */
+ addHook(hook: "response", fn: ResponseHook): this;
+ addHook(
+ ...args:
+ | [hook: "beforeRequest", fn: BeforeRequestHook]
+ | [hook: "requestError", fn: RequestErrorHook]
+ | [hook: "response", fn: ResponseHook]
+ ) {
+ if (args[0] === "beforeRequest") {
+ this.requestHooks.push(args[1]);
+ } else if (args[0] === "requestError") {
+ this.requestErrorHooks.push(args[1]);
+ } else if (args[0] === "response") {
+ this.responseHooks.push(args[1]);
+ } else {
+ throw new Error(`Invalid hook type: ${args[0]}`);
+ }
+ return this;
+ }
+
+ /** Removes a hook that was previously registered with `addHook`. */
+ removeHook(hook: "beforeRequest", fn: BeforeRequestHook): this;
+ /** Removes a hook that was previously registered with `addHook`. */
+ removeHook(hook: "requestError", fn: RequestErrorHook): this;
+ /** Removes a hook that was previously registered with `addHook`. */
+ removeHook(hook: "response", fn: ResponseHook): this;
+ removeHook(
+ ...args:
+ | [hook: "beforeRequest", fn: BeforeRequestHook]
+ | [hook: "requestError", fn: RequestErrorHook]
+ | [hook: "response", fn: ResponseHook]
+ ): this {
+ let target: unknown[];
+ if (args[0] === "beforeRequest") {
+ target = this.requestHooks;
+ } else if (args[0] === "requestError") {
+ target = this.requestErrorHooks;
+ } else if (args[0] === "response") {
+ target = this.responseHooks;
+ } else {
+ throw new Error(`Invalid hook type: ${args[0]}`);
+ }
+
+ const index = target.findIndex((v) => v === args[1]);
+ if (index >= 0) {
+ target.splice(index, 1);
+ }
+
+ return this;
+ }
+
+ clone(): HTTPClient {
+ const child = new HTTPClient(this.options);
+ child.requestHooks = this.requestHooks.slice();
+ child.requestErrorHooks = this.requestErrorHooks.slice();
+ child.responseHooks = this.responseHooks.slice();
+
+ return child;
+ }
+}
+
+export type StatusCodePredicate = number | string | (number | string)[];
+
+// A semicolon surrounded by optional whitespace characters is used to separate
+// segments in a media type string.
+const mediaParamSeparator = /\s*;\s*/g;
+
+function matchContentType(response: Response, pattern: string): boolean {
+ // `*` is a special case which means anything is acceptable.
+ if (pattern === "*") {
+ return true;
+ }
+
+ let contentType = response.headers.get("content-type")?.trim() || "application/octet-stream";
+ contentType = contentType.toLowerCase();
+
+ const wantParts = pattern.toLowerCase().trim().split(mediaParamSeparator);
+ const [wantType = "", ...wantParams] = wantParts;
+
+ if (wantType.split("/").length !== 2) {
+ return false;
+ }
+
+ const gotParts = contentType.split(mediaParamSeparator);
+ const [gotType = "", ...gotParams] = gotParts;
+
+ const [type = "", subtype = ""] = gotType.split("/");
+ if (!type || !subtype) {
+ return false;
+ }
+
+ if (
+ wantType !== "*/*" &&
+ gotType !== wantType &&
+ `${type}/*` !== wantType &&
+ `*/${subtype}` !== wantType
+ ) {
+ return false;
+ }
+
+ if (gotParams.length < wantParams.length) {
+ return false;
+ }
+
+ const params = new Set(gotParams);
+ for (const wantParam of wantParams) {
+ if (!params.has(wantParam)) {
+ return false;
+ }
+ }
+
+ return true;
+}
+
+const codeRangeRE = new RegExp("^[0-9]xx$", "i");
+
+export function matchStatusCode(response: Response, codes: StatusCodePredicate): boolean {
+ const actual = `${response.status}`;
+ const expectedCodes = Array.isArray(codes) ? codes : [codes];
+ if (!expectedCodes.length) {
+ return false;
+ }
+
+ return expectedCodes.some((ec) => {
+ const code = `${ec}`;
+
+ if (code === "default") {
+ return true;
+ }
+
+ if (!codeRangeRE.test(`${code}`)) {
+ return code === actual;
+ }
+
+ const expectFamily = code.charAt(0);
+ if (!expectFamily) {
+ throw new Error("Invalid status code range");
+ }
+
+ const actualFamily = actual.charAt(0);
+ if (!actualFamily) {
+ throw new Error(`Invalid response status code: ${actual}`);
+ }
+
+ return actualFamily === expectFamily;
+ });
+}
+
+export function matchResponse(
+ response: Response,
+ code: StatusCodePredicate,
+ contentTypePattern: string
+): boolean {
+ return matchStatusCode(response, code) && matchContentType(response, contentTypePattern);
+}
+
+const headerValRE = /, */;
+export function unpackHeaders(headers: Headers): Record {
+ const out: Record = {};
+
+ for (const [k, v] of headers.entries()) {
+ out[k] = v.split(headerValRE);
+ }
+
+ return out;
+}
+
+type ResponseMatcherSchema =
+ | { parse: (data: unknown) => T }
+ | { inboundSchema: { parse: (data: unknown) => T } };
+
+type SerializationMethod = "sse" | "json" | "rawBytes" | "rawStream" | "text" | "void" | "fail";
+
+const defaultContentTypes: Record = {
+ sse: "text/event-stream",
+ json: "application/json",
+ rawBytes: "application/octet-stream",
+ rawStream: "application/octet-stream",
+ text: "text/plain",
+ void: "",
+ fail: "",
+};
+
+type ResponsePredicateMatch = {
+ method: SerializationMethod;
+ codes: StatusCodePredicate;
+ ctype: string;
+ schema: ResponseMatcherSchema;
+ hdrs: boolean;
+ key: string | undefined;
+ err: boolean;
+ fail: boolean;
+};
+
+type ResponsePredicateOptions = {
+ /** Content type to match on. */
+ ctype?: string;
+ /** Pass HTTP headers to deserializer. */
+ hdrs?: boolean;
+} & (
+ | {
+ /** The result key to store the deserialized value into. */
+ key?: string;
+ fail?: never;
+ err?: never;
+ }
+ | {
+ /** Indicates the matched response must throw the built-in error. */
+ fail: true;
+ key?: never;
+ err?: never;
+ }
+ | {
+ /** Indicates the matched response is a custom error. */
+ err: true;
+ key?: never;
+ fail?: never;
+ }
+);
+
+export class ResponseMatcher {
+ private predicates: ResponsePredicateMatch[] = [];
+
+ #any(
+ method: SerializationMethod,
+ codes: StatusCodePredicate,
+ schema: ResponseMatcherSchema,
+ opts?: ResponsePredicateOptions
+ ) {
+ const ctype = opts?.ctype || defaultContentTypes[method];
+ const hdrs = !!opts?.hdrs;
+ const key = opts?.key;
+ const err = !!opts?.err;
+ const fail = !!opts?.fail;
+ this.predicates.push({
+ method,
+ codes,
+ ctype,
+ schema,
+ hdrs,
+ key,
+ err,
+ fail,
+ });
+ return this;
+ }
+
+ json(
+ codes: StatusCodePredicate,
+ schema: ResponseMatcherSchema,
+ opts?: ResponsePredicateOptions
+ ): this {
+ return this.#any("json", codes, schema, opts);
+ }
+ bytes(
+ codes: StatusCodePredicate,
+ schema: ResponseMatcherSchema,
+ opts?: ResponsePredicateOptions
+ ): this {
+ return this.#any("rawBytes", codes, schema, opts);
+ }
+ stream(
+ codes: StatusCodePredicate,
+ schema: ResponseMatcherSchema,
+ opts?: ResponsePredicateOptions
+ ): this {
+ return this.#any("rawStream", codes, schema, opts);
+ }
+ text(
+ codes: StatusCodePredicate,
+ schema: ResponseMatcherSchema,
+ opts?: ResponsePredicateOptions
+ ): this {
+ return this.#any("text", codes, schema, opts);
+ }
+ sse(
+ codes: StatusCodePredicate,
+ schema: ResponseMatcherSchema,
+ opts?: Omit
+ ): this {
+ return this.#any("sse", codes, schema, opts);
+ }
+ void(
+ codes: StatusCodePredicate,
+ schema: ResponseMatcherSchema,
+ opts?: Pick
+ ): this {
+ return this.#any("void", codes, schema, opts);
+ }
+ fail(codes: StatusCodePredicate): this {
+ return this.#any("fail", codes, znever(), { fail: true });
+ }
+
+ async match(
+ response: Response,
+ // flat
+ options?: {
+ resultKey?: string;
+ extraFields?: Record;
+ }
+ ): Promise<[result: Result, rawData: unknown]> {
+ let pred: ResponsePredicateMatch | undefined;
+ for (const predicate of this.predicates) {
+ const { codes, ctype } = predicate;
+ if (ctype && matchResponse(response, codes, ctype)) {
+ pred = predicate;
+ break;
+ } else if (!ctype && matchStatusCode(response, codes)) {
+ pred = predicate;
+ break;
+ }
+ }
+ if (pred == null) {
+ const responseBody = await response.text();
+ throw new SDKError(
+ "Unexpected API response status or content-type",
+ response,
+ responseBody
+ );
+ }
+
+ const { method, schema } = pred;
+
+ let raw: unknown;
+ switch (method) {
+ case "json":
+ raw = await response.json();
+ break;
+ case "rawBytes":
+ raw = await response.arrayBuffer();
+ break;
+ case "rawStream":
+ raw = response.body;
+ break;
+ case "text":
+ raw = await response.text();
+ break;
+ case "sse":
+ raw = response.body;
+ break;
+ case "void":
+ raw = await discardResponseBody(response);
+ break;
+ case "fail":
+ raw = await response.text();
+ break;
+ default:
+ method satisfies never;
+ throw new Error(`Unsupported response type: ${method}`);
+ }
+
+ const resultKey = pred.key || options?.resultKey;
+ let data: unknown;
+ if (pred.fail) {
+ throw new SDKError("API error occurred", response, typeof raw === "string" ? raw : "");
+ } else if (pred.err) {
+ data = {
+ ...options?.extraFields,
+ ...(pred.hdrs ? { Headers: unpackHeaders(response.headers) } : null),
+ ...(isPlainObject(raw) ? raw : null),
+ };
+ } else if (resultKey) {
+ data = {
+ ...options?.extraFields,
+ ...(pred.hdrs ? { Headers: unpackHeaders(response.headers) } : null),
+ [resultKey]: raw,
+ };
+ } else if (pred.hdrs) {
+ data = {
+ ...options?.extraFields,
+ ...(pred.hdrs ? { Headers: unpackHeaders(response.headers) } : null),
+ ...(isPlainObject(raw) ? raw : null),
+ };
+ } else {
+ data = raw;
+ }
+
+ const parser = "inboundSchema" in schema ? schema.inboundSchema : schema;
+ const body = parse(data, (v: unknown) => parser.parse(v), "Response validation failed");
+
+ if (body instanceof Error) {
+ throw body;
+ }
+
+ return [body, raw];
+ }
+}
+
+/**
+ * Discards the response body to free up resources.
+ *
+ * To learn why this is need, see the undici docs:
+ * https://undici.nodejs.org/#/?id=garbage-collection
+ */
+export async function discardResponseBody(res: Response) {
+ const reader = res.body?.getReader();
+ if (reader == null) {
+ return;
+ }
+
+ try {
+ let done = false;
+ while (!done) {
+ const res = await reader.read();
+ done = res.done;
+ }
+ } finally {
+ reader.releaseLock();
+ }
+}
diff --git a/platform/src/lib/is-plain-object.ts b/platform/src/lib/is-plain-object.ts
new file mode 100644
index 000000000..af0d6e7e4
--- /dev/null
+++ b/platform/src/lib/is-plain-object.ts
@@ -0,0 +1,43 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+/*
+MIT License
+
+Copyright (c) Sindre Sorhus (https://sindresorhus.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+// Taken from https://github.com/sindresorhus/is-plain-obj/blob/97f38e8836f86a642cce98fc6ab3058bc36df181/index.js
+
+export function isPlainObject(value: unknown): value is object {
+ if (typeof value !== "object" || value === null) {
+ return false;
+ }
+
+ const prototype = Object.getPrototypeOf(value);
+ return (
+ (prototype === null ||
+ prototype === Object.prototype ||
+ Object.getPrototypeOf(prototype) === null) &&
+ !(Symbol.toStringTag in value) &&
+ !(Symbol.iterator in value)
+ );
+}
diff --git a/platform/src/lib/primitives.ts b/platform/src/lib/primitives.ts
new file mode 100644
index 000000000..d3aae30be
--- /dev/null
+++ b/platform/src/lib/primitives.ts
@@ -0,0 +1,40 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+export type Remap = {
+ [k in keyof Inp as Mapping[k] extends string /* if we have a string mapping for this key then use it */
+ ? Mapping[k]
+ : Mapping[k] extends null /* if the mapping is to `null` then drop the key */
+ ? never
+ : k /* otherwise keep the key as-is */]: Inp[k];
+};
+
+/**
+ * Converts or omits an object's keys according to a mapping.
+ *
+ * @param inp An object whose keys will be remapped
+ * @param mappings A mapping of original keys to new keys. If a key is not present in the mapping, it will be left as is. If a key is mapped to `null`, it will be removed in the resulting object.
+ * @returns A new object with keys remapped or omitted according to the mappings
+ */
+export function remap<
+ Inp extends Record,
+ const Mapping extends { [k in keyof Inp]?: string | null },
+>(inp: Inp, mappings: Mapping): Remap {
+ let out: any = {};
+
+ if (!Object.keys(mappings).length) {
+ out = inp;
+ return out;
+ }
+
+ for (const [k, v] of Object.entries(inp)) {
+ const j = mappings[k];
+ if (j === null) {
+ continue;
+ }
+ out[j ?? k] = v;
+ }
+
+ return out;
+}
diff --git a/platform/src/lib/retries.ts b/platform/src/lib/retries.ts
new file mode 100644
index 000000000..ed9b49595
--- /dev/null
+++ b/platform/src/lib/retries.ts
@@ -0,0 +1,226 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+export type BackoffStrategy = {
+ initialInterval: number;
+ maxInterval: number;
+ exponent: number;
+ maxElapsedTime: number;
+};
+
+const defaultBackoff: BackoffStrategy = {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+};
+
+export type RetryConfig =
+ | { strategy: "none" }
+ | {
+ strategy: "backoff";
+ backoff?: BackoffStrategy;
+ retryConnectionErrors?: boolean;
+ };
+
+class PermanentError extends Error {
+ inner: unknown;
+
+ constructor(inner: unknown) {
+ super("Permanent error");
+ this.inner = inner;
+
+ Object.setPrototypeOf(this, PermanentError.prototype);
+ }
+}
+
+class TemporaryError extends Error {
+ res: Response;
+
+ constructor(res: Response) {
+ super("Temporary error");
+ this.res = res;
+
+ Object.setPrototypeOf(this, TemporaryError.prototype);
+ }
+}
+
+export async function retry(
+ fetchFn: () => Promise,
+ options: {
+ config: RetryConfig;
+ statusCodes: string[];
+ },
+): Promise {
+ switch (options.config.strategy) {
+ case "backoff":
+ return retryBackoff(
+ wrapFetcher(fetchFn, {
+ statusCodes: options.statusCodes,
+ retryConnectionErrors: !!options.config.retryConnectionErrors,
+ }),
+ options.config.backoff ?? defaultBackoff,
+ );
+ default:
+ return await fetchFn();
+ }
+}
+
+function wrapFetcher(
+ fn: () => Promise,
+ options: {
+ statusCodes: string[];
+ retryConnectionErrors: boolean;
+ },
+): () => Promise {
+ return async () => {
+ try {
+ const res = await fn();
+ if (isRetryableResponse(res, options.statusCodes)) {
+ throw new TemporaryError(res);
+ }
+
+ return res;
+ } catch (err) {
+ if (err instanceof TemporaryError) {
+ throw err;
+ }
+
+ if (
+ options.retryConnectionErrors &&
+ (isTimeoutError(err) || isConnectionError(err))
+ ) {
+ throw err;
+ }
+
+ throw new PermanentError(err);
+ }
+ };
+}
+
+function isConnectionError(err: unknown) {
+ if (typeof err !== "object" || err == null) {
+ return false;
+ }
+
+ // Covers fetch in Deno as well
+ const isBrowserErr =
+ err instanceof TypeError &&
+ err.message.toLowerCase().startsWith("failed to fetch");
+
+ const isNodeErr =
+ err instanceof TypeError &&
+ err.message.toLowerCase().startsWith("fetch failed");
+
+ const isBunErr = "name" in err && err.name === "ConnectionError";
+
+ const isGenericErr =
+ "code" in err &&
+ typeof err.code === "string" &&
+ err.code.toLowerCase() === "econnreset";
+
+ return isBrowserErr || isNodeErr || isGenericErr || isBunErr;
+}
+
+function isTimeoutError(err: unknown) {
+ if (typeof err !== "object" || err == null) {
+ return false;
+ }
+
+ // Fetch in browser, Node.js, Bun, Deno
+ const isNative = "name" in err && err.name === "TimeoutError";
+
+ // Node.js HTTP client and Axios
+ const isGenericErr =
+ "code" in err &&
+ typeof err.code === "string" &&
+ err.code.toLowerCase() === "econnaborted";
+
+ return isNative || isGenericErr;
+}
+
+const codeRangeRE = new RegExp("^[0-9]xx$", "i");
+
+function isRetryableResponse(res: Response, statusCodes: string[]): boolean {
+ const actual = `${res.status}`;
+
+ return statusCodes.some((code) => {
+ if (!codeRangeRE.test(code)) {
+ return code === actual;
+ }
+
+ const expectFamily = code.charAt(0);
+ if (!expectFamily) {
+ throw new Error("Invalid status code range");
+ }
+
+ const actualFamily = actual.charAt(0);
+ if (!actualFamily) {
+ throw new Error(`Invalid response status code: ${actual}`);
+ }
+
+ return actualFamily === expectFamily;
+ });
+}
+
+async function retryBackoff(
+ fn: () => Promise,
+ strategy: BackoffStrategy,
+): Promise {
+ const { maxElapsedTime, initialInterval, exponent, maxInterval } = strategy;
+
+ const start = Date.now();
+ let x = 0;
+
+ // eslint-disable-next-line no-constant-condition
+ while (true) {
+ try {
+ const res = await fn();
+ return res;
+ } catch (err) {
+ if (err instanceof PermanentError) {
+ throw err.inner;
+ }
+ const elapsed = Date.now() - start;
+ if (elapsed > maxElapsedTime) {
+ if (err instanceof TemporaryError) {
+ return err.res;
+ }
+
+ throw err;
+ }
+
+ let retryInterval = 0;
+ if (err instanceof TemporaryError && err.res && err.res.headers) {
+ const retryVal = err.res.headers.get("retry-after") || "";
+ if (retryVal != "") {
+ const parsedNumber = Number(retryVal);
+ if (!isNaN(parsedNumber) && Number.isInteger(parsedNumber)) {
+ retryInterval = parsedNumber * 1000;
+ } else {
+ const parsedDate = Date.parse(retryVal);
+ if (!isNaN(parsedDate)) {
+ const deltaMS = parsedDate - Date.now();
+ retryInterval = deltaMS > 0 ? Math.ceil(deltaMS) : 0;
+ }
+ }
+ }
+ }
+
+ if (retryInterval == 0) {
+ retryInterval =
+ initialInterval * Math.pow(x, exponent) + Math.random() * 1000;
+ }
+
+ const d = Math.min(retryInterval, maxInterval);
+
+ await delay(d);
+ x++;
+ }
+ }
+}
+
+async function delay(delay: number): Promise {
+ return new Promise((resolve) => setTimeout(resolve, delay));
+}
diff --git a/platform/src/lib/schemas.ts b/platform/src/lib/schemas.ts
new file mode 100644
index 000000000..390a82d21
--- /dev/null
+++ b/platform/src/lib/schemas.ts
@@ -0,0 +1,56 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import { output, ZodEffects, ZodError, ZodObject, ZodRawShape, ZodTypeAny } from "zod";
+import { SDKValidationError } from "../sdk/models/errors/sdkvalidationerror.js";
+
+/**
+ * Utility function that executes some code which may throw a ZodError. It
+ * intercepts this error and converts it to an SDKValidationError so as to not
+ * leak Zod implementation details to user code.
+ */
+export function parse(rawValue: Inp, fn: (value: Inp) => Out, errorMessage: string): Out {
+ try {
+ return fn(rawValue);
+ } catch (err) {
+ if (err instanceof ZodError) {
+ throw new SDKValidationError(errorMessage, err, rawValue);
+ }
+ throw err;
+ }
+}
+
+export function collectExtraKeys<
+ Shape extends ZodRawShape,
+ Catchall extends ZodTypeAny,
+ K extends string
+>(
+ obj: ZodObject,
+ extrasKey: K
+): ZodEffects<
+ typeof obj,
+ output> & {
+ [k in K]: Record>;
+ }
+> {
+ return obj.transform((val) => {
+ const extras: Record> = {};
+ const { shape } = obj;
+ for (const [key] of Object.entries(val)) {
+ if (key in shape) {
+ continue;
+ }
+
+ const v = val[key];
+ if (typeof v === "undefined") {
+ continue;
+ }
+
+ extras[key] = v;
+ delete val[key];
+ }
+
+ return { ...val, [extrasKey]: extras };
+ });
+}
diff --git a/platform/src/lib/sdks.ts b/platform/src/lib/sdks.ts
new file mode 100644
index 000000000..740bb0699
--- /dev/null
+++ b/platform/src/lib/sdks.ts
@@ -0,0 +1,167 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import { ResponseMatcher, HTTPClient, matchStatusCode } from "./http.js";
+import { SecurityState, resolveSecurity, resolveGlobalSecurity } from "./security.js";
+import { pathToFunc } from "./url.js";
+import { encodeForm } from "./encodings.js";
+import { stringToBase64 } from "./base64.js";
+import { SDK_METADATA } from "./config.js";
+import { SDKHooks } from "../hooks/hooks.js";
+import { HookContext } from "../hooks/types.js";
+
+export type RequestOptions = {
+ fetchOptions?: Omit;
+};
+
+type RequestConfig = {
+ method: string;
+ path: string;
+ baseURL?: string | URL;
+ query?: string;
+ body?: RequestInit["body"];
+ headers?: HeadersInit;
+ security?: SecurityState | null;
+ uaHeader?: string;
+};
+
+const gt: unknown = typeof globalThis === "undefined" ? null : globalThis;
+const webWorkerLike =
+ typeof gt === "object" &&
+ gt != null &&
+ "importScripts" in gt &&
+ typeof gt["importScripts"] === "function";
+const isBrowserLike =
+ webWorkerLike ||
+ (typeof navigator !== "undefined" && "serviceWorker" in navigator) ||
+ (typeof window === "object" && typeof window.document !== "undefined");
+
+export class ClientSDK {
+ private readonly client: HTTPClient;
+ protected readonly baseURL: URL | null;
+ protected readonly hooks$: SDKHooks;
+
+ constructor(init: { client: HTTPClient; baseURL: URL | null; hooks: SDKHooks }) {
+ const url = init.baseURL;
+ if (url) {
+ url.pathname = url.pathname.replace(/\/+$/, "") + "/";
+ }
+
+ this.hooks$ = init.hooks;
+ const { baseURL, client } = this.hooks$.sdkInit({ baseURL: url, client: init.client });
+ this.baseURL = baseURL;
+ this.client = client;
+ }
+
+ protected createRequest$(
+ context: HookContext,
+ conf: RequestConfig,
+ options?: RequestOptions
+ ): Request {
+ const { method, path, query, headers: opHeaders, security } = conf;
+
+ const base = conf.baseURL ?? this.baseURL;
+ if (!base) {
+ throw new TypeError("No base URL provided for operation");
+ }
+ const reqURL = new URL(base);
+ const inputURL = new URL(path, reqURL);
+
+ if (path) {
+ reqURL.pathname += inputURL.pathname.replace(/^\/+/, "");
+ }
+
+ let finalQuery = query || "";
+
+ const secQuery: string[] = [];
+ for (const [k, v] of Object.entries(security?.queryParams || {})) {
+ secQuery.push(encodeForm(k, v, { charEncoding: "percent" }));
+ }
+ if (secQuery.length) {
+ finalQuery += `&${secQuery.join("&")}`;
+ }
+
+ if (finalQuery) {
+ const q = finalQuery.startsWith("&") ? finalQuery.slice(1) : finalQuery;
+ reqURL.search = `?${q}`;
+ }
+
+ const headers = new Headers(opHeaders);
+
+ const username = security?.basic.username;
+ const password = security?.basic.password;
+ if (username != null || password != null) {
+ const encoded = stringToBase64([username || "", password || ""].join(":"));
+ headers.set("Authorization", `Basic ${encoded}`);
+ }
+
+ const securityHeaders = new Headers(security?.headers || {});
+ for (const [k, v] of securityHeaders) {
+ headers.set(k, v);
+ }
+
+ let cookie = headers.get("cookie") || "";
+ for (const [k, v] of Object.entries(security?.cookies || {})) {
+ cookie += `; ${k}=${v}`;
+ }
+ cookie = cookie.startsWith("; ") ? cookie.slice(2) : cookie;
+ headers.set("cookie", cookie);
+
+ const userHeaders = new Headers(options?.fetchOptions?.headers);
+ for (const [k, v] of userHeaders) {
+ headers.set(k, v);
+ }
+
+ // Only set user agent header in non-browser-like environments since CORS
+ // policy disallows setting it in browsers e.g. Chrome throws an error.
+ if (!isBrowserLike) {
+ headers.set(conf.uaHeader ?? "user-agent", SDK_METADATA.userAgent);
+ }
+
+ const input = this.hooks$.beforeCreateRequest(context, {
+ url: reqURL,
+ options: {
+ ...options?.fetchOptions,
+ body: conf.body ?? null,
+ headers,
+ method,
+ },
+ });
+
+ return new Request(input.url, input.options);
+ }
+
+ protected async do$(
+ req: Request,
+ options: {
+ context: HookContext;
+ errorCodes: number | string | (number | string)[];
+ }
+ ): Promise {
+ const { context, errorCodes } = options;
+
+ let response = await this.client.request(await this.hooks$.beforeRequest(context, req));
+
+ if (matchStatusCode(response, errorCodes)) {
+ const result = await this.hooks$.afterError(context, response, null);
+ if (result.error) {
+ throw result.error;
+ }
+ response = result.response || response;
+ } else {
+ response = await this.hooks$.afterSuccess(context, response);
+ }
+
+ return response;
+ }
+
+ protected matcher(): ResponseMatcher {
+ return new ResponseMatcher();
+ }
+
+ protected templateURLComponent = pathToFunc;
+
+ protected resolveSecurity = resolveSecurity;
+ protected resolveGlobalSecurity = resolveGlobalSecurity;
+}
diff --git a/platform/src/lib/security.ts b/platform/src/lib/security.ts
new file mode 100644
index 000000000..28dcb6c66
--- /dev/null
+++ b/platform/src/lib/security.ts
@@ -0,0 +1,182 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import * as shared from "../sdk/models/shared/index.js";
+
+export enum SecurityErrorCode {
+ Incomplete = "incomplete",
+ UnrecognisedSecurityType = "unrecognized_security_type",
+}
+
+export class SecurityError extends Error {
+ constructor(public code: SecurityErrorCode, message: string) {
+ super(message);
+ this.name = "SecurityError";
+ }
+
+ static incomplete(): SecurityError {
+ return new SecurityError(
+ SecurityErrorCode.Incomplete,
+ "Security requirements not met in order to perform the operation"
+ );
+ }
+ static unrecognizedType(type: string): SecurityError {
+ return new SecurityError(
+ SecurityErrorCode.UnrecognisedSecurityType,
+ `Unrecognised security type: ${type}`
+ );
+ }
+}
+
+export type SecurityState = {
+ basic: { username?: string | undefined; password?: string | undefined };
+ headers: Record;
+ queryParams: Record;
+ cookies: Record;
+};
+
+type SecurityInputBasic = {
+ type: "http:basic";
+ value: { username?: string | undefined; password?: string | undefined } | null | undefined;
+};
+
+type SecurityInputBearer = {
+ type: "http:bearer";
+ value: string | null | undefined;
+ fieldName: string;
+};
+
+type SecurityInputAPIKey = {
+ type: "apiKey:header" | "apiKey:query" | "apiKey:cookie";
+ value: string | null | undefined;
+ fieldName: string;
+};
+
+type SecurityInputOIDC = {
+ type: "openIdConnect";
+ value: string | null | undefined;
+ fieldName: string;
+};
+
+type SecurityInputOAuth2 = {
+ type: "oauth2";
+ value: string | null | undefined;
+ fieldName: string;
+};
+
+type SecurityInputOAuth2ClientCredentials = {
+ type: "oauth2:client_credentials";
+ value: string | null | undefined;
+ fieldName: string;
+};
+
+export type SecurityInput =
+ | SecurityInputBasic
+ | SecurityInputBearer
+ | SecurityInputAPIKey
+ | SecurityInputOAuth2
+ | SecurityInputOAuth2ClientCredentials
+ | SecurityInputOIDC;
+
+export function resolveSecurity(...options: SecurityInput[][]): SecurityState | null {
+ const state: SecurityState = {
+ basic: { username: "", password: "" },
+ headers: {},
+ queryParams: {},
+ cookies: {},
+ };
+
+ const option = options.find((opts) => {
+ return opts.every((o) => {
+ if (o.value == null) {
+ return false;
+ } else if (o.type === "http:basic") {
+ return o.value.username != null || o.value.password != null;
+ } else if (typeof o.value === "string") {
+ return !!o.value;
+ } else {
+ throw new Error(
+ `Unrecognized security type: ${o.type} (value type: ${typeof o.value})`
+ );
+ }
+ });
+ });
+ if (option == null) {
+ return null;
+ }
+
+ option.forEach((spec) => {
+ if (spec.value == null) {
+ return;
+ }
+
+ const { type } = spec;
+
+ switch (type) {
+ case "apiKey:header":
+ state.headers[spec.fieldName] = spec.value;
+ break;
+ case "apiKey:query":
+ state.queryParams[spec.fieldName] = spec.value;
+ break;
+ case "apiKey:cookie":
+ state.cookies[spec.fieldName] = spec.value;
+ break;
+ case "http:basic":
+ applyBasic(state, spec);
+ break;
+ case "http:bearer":
+ applyBearer(state, spec);
+ break;
+ case "oauth2":
+ applyBearer(state, spec);
+ break;
+ case "oauth2:client_credentials":
+ break;
+ case "openIdConnect":
+ applyBearer(state, spec);
+ break;
+ default:
+ spec satisfies never;
+ throw SecurityError.unrecognizedType(type);
+ }
+ });
+
+ return state;
+}
+
+function applyBasic(state: SecurityState, spec: SecurityInputBasic) {
+ if (spec.value == null) {
+ return;
+ }
+
+ state.basic = spec.value;
+}
+
+function applyBearer(
+ state: SecurityState,
+ spec: SecurityInputBearer | SecurityInputOAuth2 | SecurityInputOIDC
+) {
+ if (spec.value == null) {
+ return;
+ }
+
+ let value = spec.value;
+ if (value.slice(0, 7).toLowerCase() !== "bearer ") {
+ value = `Bearer ${value}`;
+ }
+
+ state.headers[spec.fieldName] = value;
+}
+export function resolveGlobalSecurity(
+ security: Partial | null | undefined
+): SecurityState | null {
+ return resolveSecurity([
+ {
+ fieldName: "Authorization",
+ type: "apiKey:header",
+ value: security?.authHeader,
+ },
+ ]);
+}
diff --git a/platform/src/lib/url.ts b/platform/src/lib/url.ts
new file mode 100644
index 000000000..df58acbba
--- /dev/null
+++ b/platform/src/lib/url.ts
@@ -0,0 +1,33 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+const hasOwn = Object.prototype.hasOwnProperty;
+
+export type Params = Partial>;
+
+export function pathToFunc(
+ pathPattern: string,
+ options?: { charEncoding?: "percent" | "none" },
+): (params?: Params) => string {
+ const paramRE = /\{([a-zA-Z0-9_]+?)\}/g;
+
+ return function buildURLPath(params: Record = {}): string {
+ return pathPattern.replace(paramRE, function (_, placeholder) {
+ if (!hasOwn.call(params, placeholder)) {
+ throw new Error(`Parameter '${placeholder}' is required`);
+ }
+
+ const value = params[placeholder];
+ if (typeof value !== "string" && typeof value !== "number") {
+ throw new Error(
+ `Parameter '${placeholder}' must be a string or number`,
+ );
+ }
+
+ return options?.charEncoding === "percent"
+ ? encodeURIComponent(`${value}`)
+ : `${value}`;
+ });
+ };
+}
diff --git a/platform/src/sdk/companies.ts b/platform/src/sdk/companies.ts
index 5b7448843..10dbb5d80 100644
--- a/platform/src/sdk/companies.ts
+++ b/platform/src/sdk/companies.ts
@@ -2,242 +2,259 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import * as utils from "../internal/utils";
-import * as errors from "../sdk/models/errors";
-import * as operations from "../sdk/models/operations";
-import * as shared from "../sdk/models/shared";
-import { SDKConfiguration } from "./sdk";
-import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from "axios";
-
-/**
- * Create and manage your SMB users' companies.
- */
-
-export class Companies {
- private sdkConfiguration: SDKConfiguration;
+import { SDKHooks } from "../hooks/hooks.js";
+import { SDKOptions, serverURLFromOptions } from "../lib/config.js";
+import {
+ encodeFormQuery as encodeFormQuery$,
+ encodeJSON as encodeJSON$,
+ encodeSimple as encodeSimple$,
+} from "../lib/encodings.js";
+import { HTTPClient } from "../lib/http.js";
+import * as retries$ from "../lib/retries.js";
+import * as schemas$ from "../lib/schemas.js";
+import { ClientSDK, RequestOptions } from "../lib/sdks.js";
+import * as errors from "./models/errors/index.js";
+import * as operations from "./models/operations/index.js";
+import * as shared from "./models/shared/index.js";
+import * as z from "zod";
+
+export class Companies extends ClientSDK {
+ private readonly options$: SDKOptions & { hooks?: SDKHooks };
+
+ constructor(options: SDKOptions = {}) {
+ const opt = options as unknown;
+ let hooks: SDKHooks;
+ if (
+ typeof opt === "object" &&
+ opt != null &&
+ "hooks" in opt &&
+ opt.hooks instanceof SDKHooks
+ ) {
+ hooks = opt.hooks;
+ } else {
+ hooks = new SDKHooks();
+ }
+
+ super({
+ client: options.httpClient || new HTTPClient(),
+ baseURL: serverURLFromOptions(options),
+ hooks,
+ });
- constructor(sdkConfig: SDKConfiguration) {
- this.sdkConfiguration = sdkConfig;
+ this.options$ = { ...options, hooks };
+ void this.options$;
}
/**
- * Create company
+ * List companies
*
* @remarks
- * Use the *Create company* endpoint to create a new [company](https://docs.codat.io/platform-api#/schemas/Company) that represents your customer in Codat.
+ * The *List companies* endpoint returns a list of [companies] associated to your instances.
*
* A [company](https://docs.codat.io/platform-api#/schemas/Company) represents a business sharing access to their data.
* Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources, such as one connection to Xero for accounting data, two connections to Plaid for two bank accounts, and a connection to Zettle for POS data.
- *
- * If forbidden characters (see `name` pattern) are present in the request, a company will be created with the forbidden characters removed. For example, `Company (Codat[1])` with be created as `Company Codat1`.
*/
- async create(
- req: shared.CompanyRequestBody,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new shared.CompanyRequestBody(req);
- }
+ async list(
+ request?: operations.ListCompaniesRequest | undefined,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = typeof request === "undefined" ? {} : request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.ListCompaniesRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const path$ = this.templateURLComponent("/companies")();
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const query$ = encodeFormQuery$({
+ orderBy: payload$.orderBy,
+ page: payload$.page,
+ pageSize: payload$.pageSize,
+ query: payload$.query,
+ });
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "list-companies",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = baseURL.replace(/\/$/, "") + "/companies";
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: [
+ "400",
+ "401",
+ "402",
+ "403",
+ "404",
+ "429",
+ "4XX",
+ "500",
+ "503",
+ "5XX",
+ ],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(req, "request", "json");
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "post",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.CreateCompanyResponse = new operations.CreateCompanyResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.company = utils.objectToClass(JSON.parse(decodedRes), shared.Company);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [400, 401, 402, 403, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const [result$] = await this.matcher()
+ .json(200, shared.Companies$inboundSchema)
+ .json([400, 401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
- * Delete a company
+ * Create company
*
* @remarks
- * The *Delete company* endpoint permanently deletes a [company](https://docs.codat.io/platform-api#/schemas/Company), its [connections](https://docs.codat.io/platform-api#/schemas/Connection) and any cached data. This operation is irreversible.
+ * Use the *Create company* endpoint to create a new [company](https://docs.codat.io/platform-api#/schemas/Company) that represents your customer in Codat.
*
* A [company](https://docs.codat.io/platform-api#/schemas/Company) represents a business sharing access to their data.
* Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources, such as one connection to Xero for accounting data, two connections to Plaid for two bank accounts, and a connection to Zettle for POS data.
*
+ * If forbidden characters (see `name` pattern) are present in the request, a company will be created with the forbidden characters removed. For example, `Company (Codat[1])` with be created as `Company Codat1`.
*/
- async delete(
- req: operations.DeleteCompanyRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.DeleteCompanyRequest(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ async create(
+ request?: shared.CompanyRequestBody | undefined,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => shared.CompanyRequestBody$outboundSchema.optional().parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = utils.generateURL(baseURL, "/companies/{companyId}", req);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "delete",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const body$ =
+ payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true });
+
+ const path$ = this.templateURLComponent("/companies")();
+
+ const query$ = "";
- const res: operations.DeleteCompanyResponse = new operations.DeleteCompanyResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 204:
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
- return res;
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "create-company",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "POST",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["400", "401", "402", "403", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Company$inboundSchema)
+ .json([400, 401, 402, 403, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
@@ -251,207 +268,199 @@ export class Companies {
*
*/
async get(
- req: operations.GetCompanyRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.GetCompanyRequest(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ request: operations.GetCompanyRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.GetCompanyRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = utils.generateURL(baseURL, "/companies/{companyId}", req);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent("/companies/{companyId}")(pathParams$);
+
+ const query$ = "";
- const res: operations.GetCompanyResponse = new operations.GetCompanyResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const headers$ = new Headers({
+ Accept: "application/json",
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.company = utils.objectToClass(JSON.parse(decodedRes), shared.Company);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
- return res;
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "get-company",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Company$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
- * List companies
+ * Delete a company
*
* @remarks
- * The *List companies* endpoint returns a list of [companies] associated to your instances.
+ * The *Delete company* endpoint permanently deletes a [company](https://docs.codat.io/platform-api#/schemas/Company), its [connections](https://docs.codat.io/platform-api#/schemas/Connection) and any cached data. This operation is irreversible.
*
* A [company](https://docs.codat.io/platform-api#/schemas/Company) represents a business sharing access to their data.
* Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources, such as one connection to Xero for accounting data, two connections to Plaid for two bank accounts, and a connection to Zettle for POS data.
+ *
*/
- async list(
- req: operations.ListCompaniesRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.ListCompaniesRequest(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ async delete(
+ request: operations.DeleteCompanyRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.DeleteCompanyRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = baseURL.replace(/\/$/, "") + "/companies";
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- const queryParams: string = utils.serializeQueryParams(req);
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl + queryParams,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent("/companies/{companyId}")(pathParams$);
- const res: operations.ListCompaniesResponse = new operations.ListCompaniesResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const query$ = "";
+
+ const headers$ = new Headers({
+ Accept: "application/json",
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.companies = utils.objectToClass(JSON.parse(decodedRes), shared.Companies);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [400, 401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
- return res;
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "delete-company",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "DELETE",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .void(204, z.void())
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
@@ -465,118 +474,96 @@ export class Companies {
* Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources, such as one connection to Xero for accounting data, two connections to Plaid for two bank accounts, and a connection to Zettle for POS data.
*/
async update(
- req: operations.UpdateCompanyRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.UpdateCompanyRequest(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ request: operations.UpdateCompanyRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.UpdateCompanyRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = utils.generateURL(baseURL, "/companies/{companyId}", req);
-
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
-
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(
- req,
- "companyRequestBody",
- "json"
- );
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const body$ = encodeJSON$("body", payload$.CompanyRequestBody, { explode: true });
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "put",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const path$ = this.templateURLComponent("/companies/{companyId}")(pathParams$);
- const res: operations.UpdateCompanyResponse = new operations.UpdateCompanyResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const query$ = "";
+
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.company = utils.objectToClass(JSON.parse(decodedRes), shared.Company);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
- return res;
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "update-company",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "PUT",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Company$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
}
diff --git a/platform/src/sdk/connectionmanagement.ts b/platform/src/sdk/connectionmanagement.ts
index 80b58e59b..d26b6f1b4 100644
--- a/platform/src/sdk/connectionmanagement.ts
+++ b/platform/src/sdk/connectionmanagement.ts
@@ -2,137 +2,151 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import * as utils from "../internal/utils";
-import * as errors from "../sdk/models/errors";
-import * as operations from "../sdk/models/operations";
-import * as shared from "../sdk/models/shared";
-import { CorsSettings } from "./corssettings";
-import { SDKConfiguration } from "./sdk";
-import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from "axios";
-
-/**
- * Configure connection management UI and retrieve access tokens for authentication.
- */
+import { SDKHooks } from "../hooks/hooks.js";
+import { SDKOptions, serverURLFromOptions } from "../lib/config.js";
+import { encodeSimple as encodeSimple$ } from "../lib/encodings.js";
+import { HTTPClient } from "../lib/http.js";
+import * as retries$ from "../lib/retries.js";
+import * as schemas$ from "../lib/schemas.js";
+import { ClientSDK, RequestOptions } from "../lib/sdks.js";
+import { CorsSettings } from "./corssettings.js";
+import * as errors from "./models/errors/index.js";
+import * as operations from "./models/operations/index.js";
+import * as shared from "./models/shared/index.js";
+
+export class ConnectionManagement extends ClientSDK {
+ private readonly options$: SDKOptions & { hooks?: SDKHooks };
+
+ constructor(options: SDKOptions = {}) {
+ const opt = options as unknown;
+ let hooks: SDKHooks;
+ if (
+ typeof opt === "object" &&
+ opt != null &&
+ "hooks" in opt &&
+ opt.hooks instanceof SDKHooks
+ ) {
+ hooks = opt.hooks;
+ } else {
+ hooks = new SDKHooks();
+ }
+
+ super({
+ client: options.httpClient || new HTTPClient(),
+ baseURL: serverURLFromOptions(options),
+ hooks,
+ });
-export class ConnectionManagement {
- public corsSettings: CorsSettings;
- private sdkConfiguration: SDKConfiguration;
+ this.options$ = { ...options, hooks };
+ void this.options$;
+ }
- constructor(sdkConfig: SDKConfiguration) {
- this.sdkConfiguration = sdkConfig;
- this.corsSettings = new CorsSettings(this.sdkConfiguration);
+ private _corsSettings?: CorsSettings;
+ get corsSettings(): CorsSettings {
+ return (this._corsSettings ??= new CorsSettings(this.options$));
}
/**
* Get access token
*
* @remarks
- * Use the *Get access token* endpoint to retrieve a new access token for use by the [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management).
+ * Use the *Get access token* endpoint to retrieve a new access token for use with the [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management). The token is only valid for one hour and applies to a single company.
*
- * The embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
+ * The embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
*/
async getAccessToken(
- req: operations.GetConnectionManagementAccessTokenRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.GetConnectionManagementAccessTokenRequest(req);
+ request: operations.GetConnectionManagementAccessTokenRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) =>
+ operations.GetConnectionManagementAccessTokenRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent(
+ "/companies/{companyId}/connectionManagement/accessToken"
+ )(pathParams$);
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
+ const context = {
+ operationID: "get-connection-management-access-token",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connectionManagement/accessToken",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.GetConnectionManagementAccessTokenResponse =
- new operations.GetConnectionManagementAccessTokenResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connectionManagementAccessToken = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ConnectionManagementAccessToken
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.ConnectionManagementAccessToken$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
}
diff --git a/platform/src/sdk/connections.ts b/platform/src/sdk/connections.ts
index a41a1f983..25cda039e 100644
--- a/platform/src/sdk/connections.ts
+++ b/platform/src/sdk/connections.ts
@@ -2,244 +2,264 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import * as utils from "../internal/utils";
-import * as errors from "../sdk/models/errors";
-import * as operations from "../sdk/models/operations";
-import * as shared from "../sdk/models/shared";
-import { SDKConfiguration } from "./sdk";
-import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from "axios";
-
-/**
- * Create new and manage existing data connections for a company.
- */
-
-export class Connections {
- private sdkConfiguration: SDKConfiguration;
+import { SDKHooks } from "../hooks/hooks.js";
+import { SDKOptions, serverURLFromOptions } from "../lib/config.js";
+import {
+ encodeFormQuery as encodeFormQuery$,
+ encodeJSON as encodeJSON$,
+ encodeSimple as encodeSimple$,
+} from "../lib/encodings.js";
+import { HTTPClient } from "../lib/http.js";
+import * as retries$ from "../lib/retries.js";
+import * as schemas$ from "../lib/schemas.js";
+import { ClientSDK, RequestOptions } from "../lib/sdks.js";
+import * as errors from "./models/errors/index.js";
+import * as operations from "./models/operations/index.js";
+import * as shared from "./models/shared/index.js";
+import * as z from "zod";
+
+export class Connections extends ClientSDK {
+ private readonly options$: SDKOptions & { hooks?: SDKHooks };
+
+ constructor(options: SDKOptions = {}) {
+ const opt = options as unknown;
+ let hooks: SDKHooks;
+ if (
+ typeof opt === "object" &&
+ opt != null &&
+ "hooks" in opt &&
+ opt.hooks instanceof SDKHooks
+ ) {
+ hooks = opt.hooks;
+ } else {
+ hooks = new SDKHooks();
+ }
+
+ super({
+ client: options.httpClient || new HTTPClient(),
+ baseURL: serverURLFromOptions(options),
+ hooks,
+ });
- constructor(sdkConfig: SDKConfiguration) {
- this.sdkConfiguration = sdkConfig;
+ this.options$ = { ...options, hooks };
+ void this.options$;
}
/**
- * Create connection
+ * List connections
*
* @remarks
- * Creates a connection for the company by providing a valid `platformKey`.
- *
- * Use the [List Integrations](https://docs.codat.io/platform-api#/operations/list-integrations) endpoint to access valid platform keys.
+ * List the connections for a company.
*/
- async create(
- req: operations.CreateConnectionRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.CreateConnectionRequest(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ async list(
+ request: operations.ListConnectionsRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.ListConnectionsRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections",
- req
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent("/companies/{companyId}/connections")(pathParams$);
+
+ const query$ = encodeFormQuery$({
+ orderBy: payload$.orderBy,
+ page: payload$.page,
+ pageSize: payload$.pageSize,
+ query: payload$.query,
+ });
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "list-connections",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: [
+ "400",
+ "401",
+ "402",
+ "403",
+ "404",
+ "429",
+ "4XX",
+ "500",
+ "503",
+ "5XX",
+ ],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(req, "requestBody", "json");
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "post",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.CreateConnectionResponse = new operations.CreateConnectionResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connection = utils.objectToClass(JSON.parse(decodedRes), shared.Connection);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const [result$] = await this.matcher()
+ .json(200, shared.Connections$inboundSchema)
+ .json([400, 401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
- * Delete connection
+ * Create connection
*
* @remarks
- * Revoke and remove a connection from a company.
- * This operation is not reversible. The end user would need to reauthorize a new data connection if you wish to view new data for this company.
+ * Creates a connection for the company by providing a valid `platformKey`.
+ *
+ * Use the [List Integrations](https://docs.codat.io/platform-api#/operations/list-integrations) endpoint to access valid platform keys.
*/
- async delete(
- req: operations.DeleteConnectionRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.DeleteConnectionRequest(req);
- }
+ async create(
+ request: operations.CreateConnectionRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.CreateConnectionRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true });
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent("/companies/{companyId}/connections")(pathParams$);
+
+ const query$ = "";
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "create-connection",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "POST",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections/{connectionId}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "delete",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.DeleteConnectionResponse = new operations.DeleteConnectionResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Connection$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
@@ -249,215 +269,208 @@ export class Connections {
* Returns a specific connection for a company when valid identifiers are provided. If the identifiers are for a deleted company and/or connection, a not found response is returned.
*/
async get(
- req: operations.GetConnectionRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.GetConnectionRequest(req);
- }
+ request: operations.GetConnectionRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.GetConnectionRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ connectionId: encodeSimple$("connectionId", payload$.connectionId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent(
+ "/companies/{companyId}/connections/{connectionId}"
+ )(pathParams$);
+
+ const query$ = "";
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "get-connection",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections/{connectionId}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.GetConnectionResponse = new operations.GetConnectionResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connection = utils.objectToClass(JSON.parse(decodedRes), shared.Connection);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
- return res;
+ const [result$] = await this.matcher()
+ .json(200, shared.Connection$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
- * List connections
+ * Delete connection
*
* @remarks
- * List the connections for a company.
+ * Revoke and remove a connection from a company.
+ * This operation is not reversible. The end user would need to reauthorize a new data connection if you wish to view new data for this company.
*/
- async list(
- req: operations.ListConnectionsRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.ListConnectionsRequest(req);
- }
+ async delete(
+ request: operations.DeleteConnectionRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.DeleteConnectionRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ connectionId: encodeSimple$("connectionId", payload$.connectionId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent(
+ "/companies/{companyId}/connections/{connectionId}"
+ )(pathParams$);
+
+ const query$ = "";
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "delete-connection",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "DELETE",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- const queryParams: string = utils.serializeQueryParams(req);
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl + queryParams,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.ListConnectionsResponse = new operations.ListConnectionsResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connections = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.Connections
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [400, 401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
- return res;
+ const [result$] = await this.matcher()
+ .void(200, z.void())
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
@@ -467,123 +480,103 @@ export class Connections {
* This allows you to deauthorize a connection, without deleting it from Codat. This means you can still view any data that has previously been pulled into Codat, and also lets you re-authorize in future if your customer wishes to resume sharing their data.
*/
async unlink(
- req: operations.UnlinkConnectionRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.UnlinkConnectionRequest(req);
- }
+ request: operations.UnlinkConnectionRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.UnlinkConnectionRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = encodeJSON$("body", payload$.UpdateConnectionStatus, { explode: true });
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ connectionId: encodeSimple$("connectionId", payload$.connectionId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent(
+ "/companies/{companyId}/connections/{connectionId}"
+ )(pathParams$);
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const query$ = "";
+
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "unlink-connection",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "PATCH",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections/{connectionId}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
-
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(
- req,
- "updateConnectionStatus",
- "json"
- );
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "patch",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.UnlinkConnectionResponse = new operations.UnlinkConnectionResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connection = utils.objectToClass(JSON.parse(decodedRes), shared.Connection);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const [result$] = await this.matcher()
+ .json(200, shared.Connection$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
@@ -593,119 +586,103 @@ export class Connections {
* Update data connection's authorization.
*/
async updateAuthorization(
- req: operations.UpdateConnectionAuthorizationRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.UpdateConnectionAuthorizationRequest(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ request: operations.UpdateConnectionAuthorizationRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) =>
+ operations.UpdateConnectionAuthorizationRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections/{connectionId}/authorization",
- req
+ const body$ = encodeJSON$("body", payload$.RequestBody, { explode: true });
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ connectionId: encodeSimple$("connectionId", payload$.connectionId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent(
+ "/companies/{companyId}/connections/{connectionId}/authorization"
+ )(pathParams$);
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "update-connection-authorization",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "PUT",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(req, "requestBody", "json");
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "put",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.UpdateConnectionAuthorizationResponse =
- new operations.UpdateConnectionAuthorizationResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connection = utils.objectToClass(JSON.parse(decodedRes), shared.Connection);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const [result$] = await this.matcher()
+ .json(200, shared.Connection$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
}
diff --git a/platform/src/sdk/corssettings.ts b/platform/src/sdk/corssettings.ts
index 105927326..750e2c41a 100644
--- a/platform/src/sdk/corssettings.ts
+++ b/platform/src/sdk/corssettings.ts
@@ -2,18 +2,41 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import * as utils from "../internal/utils";
-import * as errors from "../sdk/models/errors";
-import * as operations from "../sdk/models/operations";
-import * as shared from "../sdk/models/shared";
-import { SDKConfiguration } from "./sdk";
-import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from "axios";
-
-export class CorsSettings {
- private sdkConfiguration: SDKConfiguration;
-
- constructor(sdkConfig: SDKConfiguration) {
- this.sdkConfiguration = sdkConfig;
+import { SDKHooks } from "../hooks/hooks.js";
+import { SDKOptions, serverURLFromOptions } from "../lib/config.js";
+import { encodeJSON as encodeJSON$ } from "../lib/encodings.js";
+import { HTTPClient } from "../lib/http.js";
+import * as retries$ from "../lib/retries.js";
+import * as schemas$ from "../lib/schemas.js";
+import { ClientSDK, RequestOptions } from "../lib/sdks.js";
+import * as errors from "./models/errors/index.js";
+import * as shared from "./models/shared/index.js";
+
+export class CorsSettings extends ClientSDK {
+ private readonly options$: SDKOptions & { hooks?: SDKHooks };
+
+ constructor(options: SDKOptions = {}) {
+ const opt = options as unknown;
+ let hooks: SDKHooks;
+ if (
+ typeof opt === "object" &&
+ opt != null &&
+ "hooks" in opt &&
+ opt.hooks instanceof SDKHooks
+ ) {
+ hooks = opt.hooks;
+ } else {
+ hooks = new SDKHooks();
+ }
+
+ super({
+ client: options.httpClient || new HTTPClient(),
+ baseURL: serverURLFromOptions(options),
+ hooks,
+ });
+
+ this.options$ = { ...options, hooks };
+ void this.options$;
}
/**
@@ -22,105 +45,84 @@ export class CorsSettings {
* @remarks
* The *Get CORS settings* endpoint returns the allowed origins (i.e. your domains) you want to allow cross-origin resource sharing ([CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)) with Codat.
*
- * Enabling CORS with Codat is required by our embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
+ * Enabling CORS with Codat is required by our embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
*
- * The embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
+ * The embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
*/
async get(
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
- );
- const operationUrl: string =
- baseURL.replace(/\/$/, "") + "/connectionManagement/corsSettings";
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const path$ = this.templateURLComponent("/connectionManagement/corsSettings")();
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
+ const context = {
+ operationID: "get-connection-management-cors-settings",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ },
+ options
+ );
- const res: operations.GetConnectionManagementCorsSettingsResponse =
- new operations.GetConnectionManagementCorsSettingsResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connectionManagementAllowedOrigins = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ConnectionManagementAllowedOrigins
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.ConnectionManagementAllowedOrigins$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
@@ -129,124 +131,97 @@ export class CorsSettings {
* @remarks
* The *Set CORS settings* endpoint allows you to register allowed origins (i.e. your domains) for use in cross-origin resource sharing ([CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)).
*
- * Enabling CORS with Codat is required by our embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
+ * Enabling CORS with Codat is required by our embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) to access Codat's API endpoints.
*
- * The embedded [connection management UI](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
+ * The embeddable [Connections SDK](https://docs.codat.io/auth-flow/optimize/connection-management) lets your customers control access to their data by allowing them to manage their existing connections.
*/
async set(
- req: shared.ConnectionManagementAllowedOrigins,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new shared.ConnectionManagementAllowedOrigins(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ request?: shared.ConnectionManagementAllowedOrigins | undefined,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) =>
+ shared.ConnectionManagementAllowedOrigins$outboundSchema.optional().parse(value$),
+ "Input validation failed"
);
- const operationUrl: string =
- baseURL.replace(/\/$/, "") + "/connectionManagement/corsSettings";
+ const body$ =
+ payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true });
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
+ const path$ = this.templateURLComponent("/connectionManagement/corsSettings")();
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(req, "request", "json");
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
+ const query$ = "";
+
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const context = {
+ operationID: "set-connection-management-cors-settings",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "post",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "POST",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
- const res: operations.SetConnectionManagementCorsSettingsResponse =
- new operations.SetConnectionManagementCorsSettingsResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.connectionManagementAllowedOrigins = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ConnectionManagementAllowedOrigins
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.ConnectionManagementAllowedOrigins$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
}
diff --git a/platform/src/sdk/customdatatype.ts b/platform/src/sdk/customdatatype.ts
index d7c8e9bd3..9afbbf207 100644
--- a/platform/src/sdk/customdatatype.ts
+++ b/platform/src/sdk/customdatatype.ts
@@ -2,22 +2,46 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import * as utils from "../internal/utils";
-import * as errors from "../sdk/models/errors";
-import * as operations from "../sdk/models/operations";
-import * as shared from "../sdk/models/shared";
-import { SDKConfiguration } from "./sdk";
-import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from "axios";
-
-/**
- * Configure and pull additional data types that are not included in Codat's standardized data model.
- */
+import { SDKHooks } from "../hooks/hooks.js";
+import { SDKOptions, serverURLFromOptions } from "../lib/config.js";
+import {
+ encodeFormQuery as encodeFormQuery$,
+ encodeJSON as encodeJSON$,
+ encodeSimple as encodeSimple$,
+} from "../lib/encodings.js";
+import { HTTPClient } from "../lib/http.js";
+import * as retries$ from "../lib/retries.js";
+import * as schemas$ from "../lib/schemas.js";
+import { ClientSDK, RequestOptions } from "../lib/sdks.js";
+import * as errors from "./models/errors/index.js";
+import * as operations from "./models/operations/index.js";
+import * as shared from "./models/shared/index.js";
+
+export class CustomDataType extends ClientSDK {
+ private readonly options$: SDKOptions & { hooks?: SDKHooks };
+
+ constructor(options: SDKOptions = {}) {
+ const opt = options as unknown;
+ let hooks: SDKHooks;
+ if (
+ typeof opt === "object" &&
+ opt != null &&
+ "hooks" in opt &&
+ opt.hooks instanceof SDKHooks
+ ) {
+ hooks = opt.hooks;
+ } else {
+ hooks = new SDKHooks();
+ }
-export class CustomDataType {
- private sdkConfiguration: SDKConfiguration;
+ super({
+ client: options.httpClient || new HTTPClient(),
+ baseURL: serverURLFromOptions(options),
+ hooks,
+ });
- constructor(sdkConfig: SDKConfiguration) {
- this.sdkConfiguration = sdkConfig;
+ this.options$ = { ...options, hooks };
+ void this.options$;
}
/**
@@ -37,127 +61,104 @@ export class CustomDataType {
* - Make your custom configuration as similar as possible to our standard data types so you can interact with them in exactly the same way.
*/
async configure(
- req: operations.ConfigureCustomDataTypeRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.ConfigureCustomDataTypeRequest(req);
+ request: operations.ConfigureCustomDataTypeRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.ConfigureCustomDataTypeRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = encodeJSON$("body", payload$.CustomDataTypeConfiguration, { explode: true });
+
+ const pathParams$ = {
+ customDataIdentifier: encodeSimple$(
+ "customDataIdentifier",
+ payload$.customDataIdentifier,
+ { explode: false, charEncoding: "percent" }
+ ),
+ platformKey: encodeSimple$("platformKey", payload$.platformKey, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent(
+ "/integrations/{platformKey}/dataTypes/custom/{customDataIdentifier}"
+ )(pathParams$);
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const context = {
+ operationID: "configure-custom-data-type",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "PUT",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/integrations/{platformKey}/dataTypes/custom/{customDataIdentifier}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
-
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(
- req,
- "customDataTypeConfiguration",
- "json"
- );
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "put",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.ConfigureCustomDataTypeResponse =
- new operations.ConfigureCustomDataTypeResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.customDataTypeConfiguration = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.CustomDataTypeConfiguration
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const [result$] = await this.matcher()
+ .json(200, shared.CustomDataTypeConfiguration$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
@@ -169,332 +170,353 @@ export class CustomDataType {
* A [custom data type](https://docs.codat.io/using-the-api/custom-data) is an additional data type you can create that is not included in Codat's standardized data model.
*/
async getConfiguration(
- req: operations.GetCustomDataTypeConfigurationRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.GetCustomDataTypeConfigurationRequest(req);
+ request: operations.GetCustomDataTypeConfigurationRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) =>
+ operations.GetCustomDataTypeConfigurationRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ customDataIdentifier: encodeSimple$(
+ "customDataIdentifier",
+ payload$.customDataIdentifier,
+ { explode: false, charEncoding: "percent" }
+ ),
+ platformKey: encodeSimple$("platformKey", payload$.platformKey, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent(
+ "/integrations/{platformKey}/dataTypes/custom/{customDataIdentifier}"
+ )(pathParams$);
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const context = {
+ operationID: "get-custom-data-type-configuration",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/integrations/{platformKey}/dataTypes/custom/{customDataIdentifier}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.GetCustomDataTypeConfigurationResponse =
- new operations.GetCustomDataTypeConfigurationResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.customDataTypeRecords = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.CustomDataTypeRecords
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
- return res;
+ const [result$] = await this.matcher()
+ .json(200, shared.CustomDataTypeRecords$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
- * List custom data type records
+ * Refresh custom data type
*
* @remarks
- * The *List custom data type records* endpoint returns a paginated list of records pulled for the specified custom data type you previously configured.
- *
- * A [custom data type](https://docs.codat.io/using-the-api/custom-data) is an additional data type you can create that is not included in Codat's standardized data model.s endpoint returns a paginated list of records whose schema is defined [Configure custom data type](https://docs.codat.io/platform-api#/operations/configure-custom-data-type)
+ * The *Refresh custom data type* endpoint refreshes the specified custom data type for a given company. This is an asynchronous operation that will sync updated data from the linked integration into Codat for you to view.
*/
- async list(
- req: operations.ListCustomDataTypeRecordsRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.ListCustomDataTypeRecordsRequest(req);
+ async refresh(
+ request: operations.RefreshCustomDataTypeRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.RefreshCustomDataTypeRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ connectionId: encodeSimple$("connectionId", payload$.connectionId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ customDataIdentifier: encodeSimple$(
+ "customDataIdentifier",
+ payload$.customDataIdentifier,
+ { explode: false, charEncoding: "percent" }
+ ),
+ };
+ const path$ = this.templateURLComponent(
+ "/companies/{companyId}/connections/{connectionId}/data/queue/custom/{customDataIdentifier}"
+ )(pathParams$);
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const context = {
+ operationID: "refresh-custom-data-type",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "POST",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections/{connectionId}/data/custom/{customDataIdentifier}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: [
+ "401",
+ "402",
+ "403",
+ "404",
+ "429",
+ "451",
+ "4XX",
+ "500",
+ "503",
+ "5XX",
+ ],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- const queryParams: string = utils.serializeQueryParams(req);
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl + queryParams,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.ListCustomDataTypeRecordsResponse =
- new operations.ListCustomDataTypeRecordsResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.customDataTypeRecords = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.CustomDataTypeRecords
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [400, 401, 402, 403, 404, 429, 451, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
- return res;
+ const [result$] = await this.matcher()
+ .json(200, shared.PullOperation$inboundSchema)
+ .json([401, 402, 403, 404, 429, 451, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
- * Refresh custom data type
+ * List custom data type records
*
* @remarks
- * The *Refresh custom data type* endpoint refreshes the specified custom data type for a given company. This is an asynchronous operation that will sync updated data from the linked integration into Codat for you to view.
+ * The *List custom data type records* endpoint returns a paginated list of records pulled for the specified custom data type you previously configured.
+ *
+ * A [custom data type](https://docs.codat.io/using-the-api/custom-data) is an additional data type you can create that is not included in Codat's standardized data model.s endpoint returns a paginated list of records whose schema is defined [Configure custom data type](https://docs.codat.io/platform-api#/operations/configure-custom-data-type)
*/
- async refresh(
- req: operations.RefreshCustomDataTypeRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.RefreshCustomDataTypeRequest(req);
+ async list(
+ request: operations.ListCustomDataTypeRecordsRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.ListCustomDataTypeRecordsRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ connectionId: encodeSimple$("connectionId", payload$.connectionId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ customDataIdentifier: encodeSimple$(
+ "customDataIdentifier",
+ payload$.customDataIdentifier,
+ { explode: false, charEncoding: "percent" }
+ ),
+ };
+ const path$ = this.templateURLComponent(
+ "/companies/{companyId}/connections/{connectionId}/data/custom/{customDataIdentifier}"
+ )(pathParams$);
+
+ const query$ = encodeFormQuery$({
+ page: payload$.page,
+ pageSize: payload$.pageSize,
+ });
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const context = {
+ operationID: "list-custom-data-type-records",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/connections/{connectionId}/data/queue/custom/{customDataIdentifier}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: [
+ "400",
+ "401",
+ "402",
+ "403",
+ "404",
+ "429",
+ "451",
+ "4XX",
+ "500",
+ "503",
+ "5XX",
+ ],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "post",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.RefreshCustomDataTypeResponse =
- new operations.RefreshCustomDataTypeResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.pullOperation = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.PullOperation
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 451, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
- return res;
+ const [result$] = await this.matcher()
+ .json(200, shared.CustomDataTypeRecords$inboundSchema)
+ .json(
+ [400, 401, 402, 403, 404, 429, 451, 500, 503],
+ errors.ErrorMessage$inboundSchema,
+ { err: true }
+ )
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
}
diff --git a/platform/src/sdk/groups.ts b/platform/src/sdk/groups.ts
index 11c4413aa..4d26d3b97 100644
--- a/platform/src/sdk/groups.ts
+++ b/platform/src/sdk/groups.ts
@@ -2,22 +2,43 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import * as utils from "../internal/utils";
-import * as errors from "../sdk/models/errors";
-import * as operations from "../sdk/models/operations";
-import * as shared from "../sdk/models/shared";
-import { SDKConfiguration } from "./sdk";
-import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from "axios";
-
-/**
- * Define and manage sets of companies based on a chosen characteristic.
- */
+import { SDKHooks } from "../hooks/hooks.js";
+import { SDKOptions, serverURLFromOptions } from "../lib/config.js";
+import { encodeJSON as encodeJSON$, encodeSimple as encodeSimple$ } from "../lib/encodings.js";
+import { HTTPClient } from "../lib/http.js";
+import * as retries$ from "../lib/retries.js";
+import * as schemas$ from "../lib/schemas.js";
+import { ClientSDK, RequestOptions } from "../lib/sdks.js";
+import * as errors from "./models/errors/index.js";
+import * as operations from "./models/operations/index.js";
+import * as shared from "./models/shared/index.js";
+import * as z from "zod";
+
+export class Groups extends ClientSDK {
+ private readonly options$: SDKOptions & { hooks?: SDKHooks };
+
+ constructor(options: SDKOptions = {}) {
+ const opt = options as unknown;
+ let hooks: SDKHooks;
+ if (
+ typeof opt === "object" &&
+ opt != null &&
+ "hooks" in opt &&
+ opt.hooks instanceof SDKHooks
+ ) {
+ hooks = opt.hooks;
+ } else {
+ hooks = new SDKHooks();
+ }
-export class Groups {
- private sdkConfiguration: SDKConfiguration;
+ super({
+ client: options.httpClient || new HTTPClient(),
+ baseURL: serverURLFromOptions(options),
+ hooks,
+ });
- constructor(sdkConfig: SDKConfiguration) {
- this.sdkConfiguration = sdkConfig;
+ this.options$ = { ...options, hooks };
+ void this.options$;
}
/**
@@ -29,248 +50,204 @@ export class Groups {
* [Groups](https://docs.codat.io/platform-api#/schemas/Group) define a set of companies that are organized based on a chosen characteristic and can be managed in the same way.
*/
async addCompany(
- req: operations.AddCompanyToGroupRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.AddCompanyToGroupRequest(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
- );
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/groups",
- req
+ request: operations.AddCompanyToGroupRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.AddCompanyToGroupRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
+ const body$ = encodeJSON$("body", payload$.companyGroupAssignment, { explode: true });
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
-
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(
- req,
- "companyGroupAssignment",
- "json"
- );
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "patch",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const path$ = this.templateURLComponent("/companies/{companyId}/groups")(pathParams$);
+
+ const query$ = "";
- const res: operations.AddCompanyToGroupResponse = new operations.AddCompanyToGroupResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.company = utils.objectToClass(JSON.parse(decodedRes), shared.Company);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
+ const context = {
+ operationID: "add-company-to-group",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "PATCH",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
- return res;
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Company$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
- * Create group
+ * Remove company
*
* @remarks
- * Use the *Create group* endpoint to generate a new group that you can assign your companies to.
+ * Use the *Remove company* endpoint to remove a company from a group.
*
* [Groups](https://docs.codat.io/platform-api#/schemas/Group) define a set of companies that are organized based on a chosen characteristic and can be managed in the same way.
- *
- * ### Tips and traps
- *
- * * The maximum length for the group name is 50 characters.
- * * It's possible to create up to 20 groups per client.
*/
- async create(
- req: shared.GroupPrototype,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new shared.GroupPrototype(req);
- }
-
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ async removeCompany(
+ request: operations.RemoveCompanyFromGroupRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.RemoveCompanyFromGroupRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ companyId: encodeSimple$("companyId", payload$.companyId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ groupId: encodeSimple$("groupId", payload$.groupId, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent("/companies/{companyId}/groups/{groupId}")(
+ pathParams$
);
- const operationUrl: string = baseURL.replace(/\/$/, "") + "/groups";
- let [reqBodyHeaders, reqBody]: [object, any] = [{}, null];
+ const query$ = "";
- try {
- [reqBodyHeaders, reqBody] = utils.serializeRequestBody(req, "request", "json");
- } catch (e: unknown) {
- if (e instanceof Error) {
- throw new Error(`Error serializing request body, cause: ${e.message}`);
- }
- }
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = {
- ...reqBodyHeaders,
- ...config?.headers,
- ...properties.headers,
+ const context = {
+ operationID: "remove-company-from-group",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
};
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "post",
- headers: headers,
- responseType: "arraybuffer",
- data: reqBody,
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "DELETE",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
- const res: operations.CreateGroupResponse = new operations.CreateGroupResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.group = utils.objectToClass(JSON.parse(decodedRes), shared.Group);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 409, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
- return res;
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .void(204, z.void())
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
@@ -282,194 +259,178 @@ export class Groups {
* [Groups](https://docs.codat.io/platform-api#/schemas/Group) define a set of companies that are organized based on a chosen characteristic and can be managed in the same way.
*/
async list(
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
- );
- const operationUrl: string = baseURL.replace(/\/$/, "") + "/groups";
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const path$ = this.templateURLComponent("/groups")();
+
+ const query$ = "";
- const res: operations.ListGroupsResponse = new operations.ListGroupsResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const headers$ = new Headers({
+ Accept: "application/json",
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.groups = utils.objectToClass(JSON.parse(decodedRes), shared.Groups);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
+ const context = {
+ operationID: "list-groups",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ },
+ options
+ );
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Groups$inboundSchema)
+ .json([401, 402, 403, 429, 500, 503], errors.ErrorMessage$inboundSchema, { err: true })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
- * Remove company
+ * Create group
*
* @remarks
- * Use the *Remove company* endpoint to remove a company from a group.
+ * Use the *Create group* endpoint to generate a new group that you can assign your companies to.
*
* [Groups](https://docs.codat.io/platform-api#/schemas/Group) define a set of companies that are organized based on a chosen characteristic and can be managed in the same way.
+ *
+ * ### Tips and traps
+ *
+ * * The maximum length for the group name is 50 characters.
+ * * It's possible to create up to 20 groups per client.
*/
- async removeCompany(
- req: operations.RemoveCompanyFromGroupRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.RemoveCompanyFromGroupRequest(req);
- }
+ async create(
+ request?: shared.GroupPrototype | undefined,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => shared.GroupPrototype$outboundSchema.optional().parse(value$),
+ "Input validation failed"
+ );
+ const body$ =
+ payload$ === undefined ? null : encodeJSON$("body", payload$, { explode: true });
+
+ const path$ = this.templateURLComponent("/groups")();
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ "Content-Type": "application/json",
+ Accept: "application/json",
+ });
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
+ }
+ const context = {
+ operationID: "create-group",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "POST",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/companies/{companyId}/groups/{groupId}",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "409", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "delete",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.RemoveCompanyFromGroupResponse =
- new operations.RemoveCompanyFromGroupResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 204:
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Group$inboundSchema)
+ .json([401, 402, 403, 409, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
}
diff --git a/platform/src/sdk/index.ts b/platform/src/sdk/index.ts
index 313031483..34a84fc27 100644
--- a/platform/src/sdk/index.ts
+++ b/platform/src/sdk/index.ts
@@ -2,4 +2,4 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-export * from "./sdk";
+export * from "./sdk.js";
diff --git a/platform/src/sdk/integrations.ts b/platform/src/sdk/integrations.ts
index 5f7c17756..b4f2587ae 100644
--- a/platform/src/sdk/integrations.ts
+++ b/platform/src/sdk/integrations.ts
@@ -2,342 +2,342 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import * as utils from "../internal/utils";
-import * as errors from "../sdk/models/errors";
-import * as operations from "../sdk/models/operations";
-import * as shared from "../sdk/models/shared";
-import { SDKConfiguration } from "./sdk";
-import { AxiosInstance, AxiosRequestConfig, AxiosResponse, RawAxiosRequestHeaders } from "axios";
-
-/**
- * Get a list of integrations supported by Codat and their logos.
- */
+import { SDKHooks } from "../hooks/hooks.js";
+import { SDKOptions, serverURLFromOptions } from "../lib/config.js";
+import {
+ encodeFormQuery as encodeFormQuery$,
+ encodeSimple as encodeSimple$,
+} from "../lib/encodings.js";
+import { HTTPClient } from "../lib/http.js";
+import * as retries$ from "../lib/retries.js";
+import * as schemas$ from "../lib/schemas.js";
+import { ClientSDK, RequestOptions } from "../lib/sdks.js";
+import * as errors from "./models/errors/index.js";
+import * as operations from "./models/operations/index.js";
+import * as shared from "./models/shared/index.js";
+
+export class Integrations extends ClientSDK {
+ private readonly options$: SDKOptions & { hooks?: SDKHooks };
-export class Integrations {
- private sdkConfiguration: SDKConfiguration;
+ constructor(options: SDKOptions = {}) {
+ const opt = options as unknown;
+ let hooks: SDKHooks;
+ if (
+ typeof opt === "object" &&
+ opt != null &&
+ "hooks" in opt &&
+ opt.hooks instanceof SDKHooks
+ ) {
+ hooks = opt.hooks;
+ } else {
+ hooks = new SDKHooks();
+ }
+
+ super({
+ client: options.httpClient || new HTTPClient(),
+ baseURL: serverURLFromOptions(options),
+ hooks,
+ });
- constructor(sdkConfig: SDKConfiguration) {
- this.sdkConfiguration = sdkConfig;
+ this.options$ = { ...options, hooks };
+ void this.options$;
}
/**
- * Get integration
+ * List integrations
*
* @remarks
- * Get single integration, by platformKey
+ * List your available integrations
*/
- async get(
- req: operations.GetIntegrationRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.GetIntegrationRequest(req);
- }
+ async list(
+ request?: operations.ListIntegrationsRequest | undefined,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = typeof request === "undefined" ? {} : request;
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.ListIntegrationsRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = utils.generateURL(baseURL, "/integrations/{platformKey}", req);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const body$ = null;
- const res: operations.GetIntegrationResponse = new operations.GetIntegrationResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const path$ = this.templateURLComponent("/integrations")();
+
+ const query$ = encodeFormQuery$({
+ orderBy: payload$.orderBy,
+ page: payload$.page,
+ pageSize: payload$.pageSize,
+ query: payload$.query,
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.integration = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.Integration
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
+ const context = {
+ operationID: "list-integrations",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["400", "401", "402", "403", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Integrations$inboundSchema)
+ .json([400, 401, 402, 403, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
/**
- * Get branding
+ * Get integration
*
* @remarks
- * Get branding for platform.
+ * Get single integration, by platformKey
*/
- async getBranding(
- req: operations.GetIntegrationsBrandingRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.GetIntegrationsBrandingRequest(req);
+ async get(
+ request: operations.GetIntegrationRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
+
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.GetIntegrationRequest$outboundSchema.parse(value$),
+ "Input validation failed"
+ );
+ const body$ = null;
+
+ const pathParams$ = {
+ platformKey: encodeSimple$("platformKey", payload$.platformKey, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent("/integrations/{platformKey}")(pathParams$);
+
+ const query$ = "";
+
+ const headers$ = new Headers({
+ Accept: "application/json",
+ });
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
+ const context = {
+ operationID: "get-integration",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
);
- const operationUrl: string = utils.generateURL(
- baseURL,
- "/integrations/{platformKey}/branding",
- req
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
);
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
- const res: operations.GetIntegrationsBrandingResponse =
- new operations.GetIntegrationsBrandingResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
- });
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.branding = utils.objectToClass(JSON.parse(decodedRes), shared.Branding);
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [401, 402, 403, 404, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- }
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
- return res;
+ const [result$] = await this.matcher()
+ .json(200, shared.Integration$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
+
+ return result$;
}
/**
- * List integrations
+ * Get branding
*
* @remarks
- * List your available integrations
+ * Get branding for platform.
*/
- async list(
- req: operations.ListIntegrationsRequest,
- retries?: utils.RetryConfig,
- config?: AxiosRequestConfig
- ): Promise {
- if (!(req instanceof utils.SpeakeasyBase)) {
- req = new operations.ListIntegrationsRequest(req);
- }
+ async getBranding(
+ request: operations.GetIntegrationsBrandingRequest,
+ options?: RequestOptions & { retries?: retries$.RetryConfig }
+ ): Promise {
+ const input$ = request;
- const baseURL: string = utils.templateUrl(
- this.sdkConfiguration.serverURL,
- this.sdkConfiguration.serverDefaults
+ const payload$ = schemas$.parse(
+ input$,
+ (value$) => operations.GetIntegrationsBrandingRequest$outboundSchema.parse(value$),
+ "Input validation failed"
);
- const operationUrl: string = baseURL.replace(/\/$/, "") + "/integrations";
- const client: AxiosInstance = this.sdkConfiguration.defaultClient;
- let globalSecurity = this.sdkConfiguration.security;
- if (typeof globalSecurity === "function") {
- globalSecurity = await globalSecurity();
- }
- if (!(globalSecurity instanceof utils.SpeakeasyBase)) {
- globalSecurity = new shared.Security(globalSecurity);
- }
- const properties = utils.parseSecurityProperties(globalSecurity);
- const headers: RawAxiosRequestHeaders = { ...config?.headers, ...properties.headers };
- const queryParams: string = utils.serializeQueryParams(req);
- headers["Accept"] = "application/json";
-
- headers["user-agent"] = this.sdkConfiguration.userAgent;
-
- const globalRetryConfig = this.sdkConfiguration.retryConfig;
- let retryConfig: utils.RetryConfig | undefined = retries;
- if (!retryConfig) {
- if (globalRetryConfig) {
- retryConfig = globalRetryConfig;
- } else {
- retryConfig = new utils.RetryConfig(
- "backoff",
- new utils.BackoffStrategy(500, 60000, 1.5, 3600000),
- true
- );
- }
- }
- const httpRes: AxiosResponse = await utils.Retry(() => {
- return client.request({
- validateStatus: () => true,
- url: operationUrl + queryParams,
- method: "get",
- headers: headers,
- responseType: "arraybuffer",
- ...config,
- });
- }, new utils.Retries(retryConfig, ["408", "429", "5XX"]));
-
- const responseContentType: string = httpRes?.headers?.["content-type"] ?? "";
-
- if (httpRes?.status == null) {
- throw new Error(`status code not found in response: ${httpRes}`);
- }
+ const body$ = null;
+
+ const pathParams$ = {
+ platformKey: encodeSimple$("platformKey", payload$.platformKey, {
+ explode: false,
+ charEncoding: "percent",
+ }),
+ };
+ const path$ = this.templateURLComponent("/integrations/{platformKey}/branding")(
+ pathParams$
+ );
+
+ const query$ = "";
- const res: operations.ListIntegrationsResponse = new operations.ListIntegrationsResponse({
- statusCode: httpRes.status,
- contentType: responseContentType,
- rawResponse: httpRes,
+ const headers$ = new Headers({
+ Accept: "application/json",
});
- const decodedRes = new TextDecoder().decode(httpRes?.data);
- switch (true) {
- case httpRes?.status == 200:
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.integrations = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.Integrations
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
- case [400, 401, 402, 403, 429, 500, 503].includes(httpRes?.status):
- if (utils.matchContentType(responseContentType, `application/json`)) {
- res.errorMessage = utils.objectToClass(
- JSON.parse(decodedRes),
- shared.ErrorMessage
- );
- } else {
- throw new errors.SDKError(
- "unknown content-type received: " + responseContentType,
- httpRes.status,
- decodedRes,
- httpRes
- );
- }
- break;
+
+ let security$;
+ if (typeof this.options$.authHeader === "function") {
+ security$ = { authHeader: await this.options$.authHeader() };
+ } else if (this.options$.authHeader) {
+ security$ = { authHeader: this.options$.authHeader };
+ } else {
+ security$ = {};
}
+ const context = {
+ operationID: "get-integrations-branding",
+ oAuth2Scopes: [],
+ securitySource: this.options$.authHeader,
+ };
+ const securitySettings$ = this.resolveGlobalSecurity(security$);
+
+ const request$ = this.createRequest$(
+ context,
+ {
+ security: securitySettings$,
+ method: "GET",
+ path: path$,
+ headers: headers$,
+ query: query$,
+ body: body$,
+ },
+ options
+ );
+
+ const retryConfig = options?.retries ||
+ this.options$.retryConfig || {
+ strategy: "backoff",
+ backoff: {
+ initialInterval: 500,
+ maxInterval: 60000,
+ exponent: 1.5,
+ maxElapsedTime: 3600000,
+ },
+ retryConnectionErrors: true,
+ };
+
+ const response = await retries$.retry(
+ () => {
+ const cloned = request$.clone();
+ return this.do$(cloned, {
+ context,
+ errorCodes: ["401", "402", "403", "404", "429", "4XX", "500", "503", "5XX"],
+ });
+ },
+ { config: retryConfig, statusCodes: ["408", "429", "5XX"] }
+ );
+
+ const responseFields$ = {
+ HttpMeta: { Response: response, Request: request$ },
+ };
+
+ const [result$] = await this.matcher()
+ .json(200, shared.Branding$inboundSchema)
+ .json([401, 402, 403, 404, 429, 500, 503], errors.ErrorMessage$inboundSchema, {
+ err: true,
+ })
+ .fail(["4XX", "5XX"])
+ .match(response, { extraFields: responseFields$ });
- return res;
+ return result$;
}
}
diff --git a/platform/src/sdk/models/errors/errormessage.ts b/platform/src/sdk/models/errors/errormessage.ts
new file mode 100644
index 000000000..bc1e08125
--- /dev/null
+++ b/platform/src/sdk/models/errors/errormessage.ts
@@ -0,0 +1,169 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import * as shared from "../shared/index.js";
+import * as z from "zod";
+
+/**
+ * The request made is not valid.
+ */
+export type ErrorMessageData = {
+ /**
+ * The HTTP status code returned by the error.
+ */
+ statusCode?: number | undefined;
+ /**
+ * Codat's service the returned the error.
+ */
+ service?: string | undefined;
+ /**
+ * A brief description of the error.
+ */
+ error?: string | undefined;
+ /**
+ * Unique identifier used to propagate to all downstream services and determine the source of the error.
+ */
+ correlationId?: string | undefined;
+ /**
+ * A human-readable object describing validation decisions Codat has made. If an operation has failed because of validation errors, they will be detailed here.
+ */
+ validation?: shared.ErrorValidation | null | undefined;
+ /**
+ * `True` if the error occurred transiently and can be retried.
+ */
+ canBeRetried?: string | undefined;
+ /**
+ * Machine readable error code used to automate processes based on the code returned.
+ */
+ detailedErrorCode?: number | undefined;
+};
+
+/**
+ * The request made is not valid.
+ */
+export class ErrorMessage extends Error {
+ /**
+ * The HTTP status code returned by the error.
+ */
+ statusCode?: number | undefined;
+ /**
+ * Codat's service the returned the error.
+ */
+ service?: string | undefined;
+ /**
+ * A brief description of the error.
+ */
+ error?: string | undefined;
+ /**
+ * Unique identifier used to propagate to all downstream services and determine the source of the error.
+ */
+ correlationId?: string | undefined;
+ /**
+ * A human-readable object describing validation decisions Codat has made. If an operation has failed because of validation errors, they will be detailed here.
+ */
+ validation?: shared.ErrorValidation | null | undefined;
+ /**
+ * `True` if the error occurred transiently and can be retried.
+ */
+ canBeRetried?: string | undefined;
+ /**
+ * Machine readable error code used to automate processes based on the code returned.
+ */
+ detailedErrorCode?: number | undefined;
+
+ /** The original data that was passed to this error instance. */
+ data$: ErrorMessageData;
+
+ constructor(err: ErrorMessageData) {
+ const message =
+ "message" in err && typeof err.message === "string"
+ ? err.message
+ : `API error occurred: ${JSON.stringify(err)}`;
+ super(message);
+ this.data$ = err;
+
+ if (err.statusCode != null) {
+ this.statusCode = err.statusCode;
+ }
+ if (err.service != null) {
+ this.service = err.service;
+ }
+ if (err.error != null) {
+ this.error = err.error;
+ }
+ if (err.correlationId != null) {
+ this.correlationId = err.correlationId;
+ }
+ if (err.validation != null) {
+ this.validation = err.validation;
+ }
+ if (err.canBeRetried != null) {
+ this.canBeRetried = err.canBeRetried;
+ }
+ if (err.detailedErrorCode != null) {
+ this.detailedErrorCode = err.detailedErrorCode;
+ }
+
+ this.name = "ErrorMessage";
+ }
+}
+
+/** @internal */
+export const ErrorMessage$inboundSchema: z.ZodType = z
+ .object({
+ statusCode: z.number().int().optional(),
+ service: z.string().optional(),
+ error: z.string().optional(),
+ correlationId: z.string().optional(),
+ validation: z.nullable(shared.ErrorValidation$inboundSchema).optional(),
+ canBeRetried: z.string().optional(),
+ detailedErrorCode: z.number().int().optional(),
+ })
+ .transform((v) => {
+ return new ErrorMessage(v);
+ });
+
+/** @internal */
+export type ErrorMessage$Outbound = {
+ statusCode?: number | undefined;
+ service?: string | undefined;
+ error?: string | undefined;
+ correlationId?: string | undefined;
+ validation?: shared.ErrorValidation$Outbound | null | undefined;
+ canBeRetried?: string | undefined;
+ detailedErrorCode?: number | undefined;
+};
+
+/** @internal */
+export const ErrorMessage$outboundSchema: z.ZodType<
+ ErrorMessage$Outbound,
+ z.ZodTypeDef,
+ ErrorMessage
+> = z
+ .instanceof(ErrorMessage)
+ .transform((v) => v.data$)
+ .pipe(
+ z.object({
+ statusCode: z.number().int().optional(),
+ service: z.string().optional(),
+ error: z.string().optional(),
+ correlationId: z.string().optional(),
+ validation: z.nullable(shared.ErrorValidation$outboundSchema).optional(),
+ canBeRetried: z.string().optional(),
+ detailedErrorCode: z.number().int().optional(),
+ })
+ );
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ErrorMessage$ {
+ /** @deprecated use `ErrorMessage$inboundSchema` instead. */
+ export const inboundSchema = ErrorMessage$inboundSchema;
+ /** @deprecated use `ErrorMessage$outboundSchema` instead. */
+ export const outboundSchema = ErrorMessage$outboundSchema;
+ /** @deprecated use `ErrorMessage$Outbound` instead. */
+ export type Outbound = ErrorMessage$Outbound;
+}
diff --git a/platform/src/sdk/models/errors/index.ts b/platform/src/sdk/models/errors/index.ts
index 4779e6a4c..7de3befd3 100644
--- a/platform/src/sdk/models/errors/index.ts
+++ b/platform/src/sdk/models/errors/index.ts
@@ -2,4 +2,6 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-export * from "./sdkerror";
+export * from "./errormessage.js";
+export * from "./sdkerror.js";
+export * from "./sdkvalidationerror.js";
diff --git a/platform/src/sdk/models/errors/sdkerror.ts b/platform/src/sdk/models/errors/sdkerror.ts
index f12b6e29a..5a94e842a 100644
--- a/platform/src/sdk/models/errors/sdkerror.ts
+++ b/platform/src/sdk/models/errors/sdkerror.ts
@@ -2,30 +2,24 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { AxiosResponse } from "axios";
-
export class SDKError extends Error {
- statusCode: number;
- body: string;
- rawResponse: AxiosResponse;
+ public readonly statusCode: number;
+ public readonly contentType: string;
- constructor(
- message: string,
- statusCode: number,
- body: string,
- rawResponse: AxiosResponse,
- ) {
- let bodyString = "";
- if (body?.length > 0) {
- bodyString = `\n${body}`;
- }
+ constructor(
+ message: string,
+ public readonly rawResponse: Response,
+ public readonly body: string = ""
+ ) {
+ const statusCode = rawResponse.status;
+ const contentType = rawResponse.headers.get("content-type") || "";
+ const bodyString = body.length > 0 ? `\n${body}` : "";
- super(`${message}: Status ${statusCode}${bodyString}`);
- this.statusCode = statusCode;
- this.body = body;
- this.rawResponse = rawResponse;
+ super(`${message}: Status ${statusCode} Content-Type ${contentType} Body ${bodyString}`);
- this.name = "SDKError";
- Object.setPrototypeOf(this, SDKError.prototype);
- }
+ this.statusCode = statusCode;
+ this.contentType = contentType;
+
+ this.name = "SDKError";
+ }
}
diff --git a/platform/src/sdk/models/errors/sdkvalidationerror.ts b/platform/src/sdk/models/errors/sdkvalidationerror.ts
new file mode 100644
index 000000000..5eb921820
--- /dev/null
+++ b/platform/src/sdk/models/errors/sdkvalidationerror.ts
@@ -0,0 +1,95 @@
+/*
+ * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
+ */
+
+import * as z from "zod";
+
+export class SDKValidationError extends Error {
+ /**
+ * The raw value that failed validation.
+ */
+ public readonly rawValue: unknown;
+
+ constructor(message: string, cause: unknown, rawValue: unknown) {
+ super(message);
+ this.name = "SDKValidationError";
+ this.cause = cause;
+ this.rawValue = rawValue;
+ }
+
+ public override toString(): string {
+ return `${this.message}: ${this.cause}`;
+ }
+
+ /**
+ * Return a pretty-formatted error message if the underlying validation error
+ * is a ZodError or some other recognized error type, otherwise return the
+ * default error message.
+ */
+ public pretty(): string {
+ if (this.cause instanceof z.ZodError) {
+ return `${this.message}\n${formatZodError(this.cause)}`;
+ } else {
+ return this.toString();
+ }
+ }
+}
+
+export function formatZodError(err: z.ZodError, level = 0): string {
+ let pre = " ".repeat(level);
+ pre = level > 0 ? `│${pre}` : pre;
+ pre += " ".repeat(level);
+
+ let message = "";
+ const append = (str: string) => (message += `\n${pre}${str}`);
+
+ const len = err.issues.length;
+ const headline = len === 1 ? `${len} issue found` : `${len} issues found`;
+
+ if (len) {
+ append(`┌ ${headline}:`);
+ }
+
+ for (const issue of err.issues) {
+ let path = issue.path.join(".");
+ path = path ? `.${path}` : "";
+ append(`│ • [${path}]: ${issue.message} (${issue.code})`);
+ switch (issue.code) {
+ case "invalid_literal":
+ case "invalid_type": {
+ append(`│ Want: ${issue.expected}`);
+ append(`│ Got: ${issue.received}`);
+ break;
+ }
+ case "unrecognized_keys": {
+ append(`│ Keys: ${issue.keys.join(", ")}`);
+ break;
+ }
+ case "invalid_enum_value": {
+ append(`│ Allowed: ${issue.options.join(", ")}`);
+ append(`│ Got: ${issue.received}`);
+ break;
+ }
+ case "invalid_union_discriminator": {
+ append(`│ Allowed: ${issue.options.join(", ")}`);
+ break;
+ }
+ case "invalid_union": {
+ const len = issue.unionErrors.length;
+ append(
+ `│ ✖︎ Attemped to deserialize into one of ${len} union members:`,
+ );
+ issue.unionErrors.forEach((err, i) => {
+ append(`│ ✖︎ Member ${i + 1} of ${len}`);
+ append(`${formatZodError(err, level + 1)}`);
+ });
+ }
+ }
+ }
+
+ if (err.issues.length) {
+ append(`└─*`);
+ }
+
+ return message.slice(1);
+}
diff --git a/platform/src/sdk/models/operations/addcompanytogroup.ts b/platform/src/sdk/models/operations/addcompanytogroup.ts
index dfedaa266..36b60b7a7 100644
--- a/platform/src/sdk/models/operations/addcompanytogroup.ts
+++ b/platform/src/sdk/models/operations/addcompanytogroup.ts
@@ -2,49 +2,52 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class AddCompanyToGroupRequest extends SpeakeasyBase {
- @SpeakeasyMetadata({ data: "request, media_type=application/json" })
- companyGroupAssignment?: shared.CompanyGroupAssignment;
+import * as shared from "../shared/index.js";
+import * as z from "zod";
+export type AddCompanyToGroupRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
-
-export class AddCompanyToGroupResponse extends SpeakeasyBase {
- /**
- * Success
- */
- @SpeakeasyMetadata()
- company?: shared.Company;
-
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+ companyGroupAssignment?: shared.CompanyGroupAssignment | undefined;
+};
+
+/** @internal */
+export const AddCompanyToGroupRequest$inboundSchema: z.ZodType<
+ AddCompanyToGroupRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ companyGroupAssignment: shared.CompanyGroupAssignment$inboundSchema.optional(),
+});
+
+/** @internal */
+export type AddCompanyToGroupRequest$Outbound = {
+ companyId: string;
+ companyGroupAssignment?: shared.CompanyGroupAssignment$Outbound | undefined;
+};
+
+/** @internal */
+export const AddCompanyToGroupRequest$outboundSchema: z.ZodType<
+ AddCompanyToGroupRequest$Outbound,
+ z.ZodTypeDef,
+ AddCompanyToGroupRequest
+> = z.object({
+ companyId: z.string(),
+ companyGroupAssignment: shared.CompanyGroupAssignment$outboundSchema.optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace AddCompanyToGroupRequest$ {
+ /** @deprecated use `AddCompanyToGroupRequest$inboundSchema` instead. */
+ export const inboundSchema = AddCompanyToGroupRequest$inboundSchema;
+ /** @deprecated use `AddCompanyToGroupRequest$outboundSchema` instead. */
+ export const outboundSchema = AddCompanyToGroupRequest$outboundSchema;
+ /** @deprecated use `AddCompanyToGroupRequest$Outbound` instead. */
+ export type Outbound = AddCompanyToGroupRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/configurecustomdatatype.ts b/platform/src/sdk/models/operations/configurecustomdatatype.ts
index be4f13a77..010c45a09 100644
--- a/platform/src/sdk/models/operations/configurecustomdatatype.ts
+++ b/platform/src/sdk/models/operations/configurecustomdatatype.ts
@@ -2,58 +2,75 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import { remap as remap$ } from "../../../lib/primitives.js";
+import * as shared from "../shared/index.js";
+import * as z from "zod";
-export class ConfigureCustomDataTypeRequest extends SpeakeasyBase {
+export type ConfigureCustomDataTypeRequest = {
/**
- * Custom data type configuration for the specified platform.
+ * A unique 4-letter key to represent a platform in each integration.
*/
- @SpeakeasyMetadata({ data: "request, media_type=application/json" })
- customDataTypeConfiguration?: shared.CustomDataTypeConfiguration;
-
+ platformKey: string;
/**
* Unique identifier for a custom data type.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=customDataIdentifier" })
customDataIdentifier: string;
-
/**
- * A unique 4-letter key to represent a platform in each integration.
+ * Custom data type configuration for the specified platform.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=platformKey" })
- platformKey: string;
-}
+ customDataTypeConfiguration?: shared.CustomDataTypeConfiguration | undefined;
+};
-export class ConfigureCustomDataTypeResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const ConfigureCustomDataTypeRequest$inboundSchema: z.ZodType<
+ ConfigureCustomDataTypeRequest,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ platformKey: z.string(),
+ customDataIdentifier: z.string(),
+ CustomDataTypeConfiguration: shared.CustomDataTypeConfiguration$inboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ CustomDataTypeConfiguration: "customDataTypeConfiguration",
+ });
+ });
- /**
- * OK
- */
- @SpeakeasyMetadata()
- customDataTypeConfiguration?: shared.CustomDataTypeConfiguration;
+/** @internal */
+export type ConfigureCustomDataTypeRequest$Outbound = {
+ platformKey: string;
+ customDataIdentifier: string;
+ CustomDataTypeConfiguration?: shared.CustomDataTypeConfiguration$Outbound | undefined;
+};
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export const ConfigureCustomDataTypeRequest$outboundSchema: z.ZodType<
+ ConfigureCustomDataTypeRequest$Outbound,
+ z.ZodTypeDef,
+ ConfigureCustomDataTypeRequest
+> = z
+ .object({
+ platformKey: z.string(),
+ customDataIdentifier: z.string(),
+ customDataTypeConfiguration: shared.CustomDataTypeConfiguration$outboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ customDataTypeConfiguration: "CustomDataTypeConfiguration",
+ });
+ });
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ConfigureCustomDataTypeRequest$ {
+ /** @deprecated use `ConfigureCustomDataTypeRequest$inboundSchema` instead. */
+ export const inboundSchema = ConfigureCustomDataTypeRequest$inboundSchema;
+ /** @deprecated use `ConfigureCustomDataTypeRequest$outboundSchema` instead. */
+ export const outboundSchema = ConfigureCustomDataTypeRequest$outboundSchema;
+ /** @deprecated use `ConfigureCustomDataTypeRequest$Outbound` instead. */
+ export type Outbound = ConfigureCustomDataTypeRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/configuresupplementaldata.ts b/platform/src/sdk/models/operations/configuresupplementaldata.ts
index 9dc05924f..cfc85208d 100644
--- a/platform/src/sdk/models/operations/configuresupplementaldata.ts
+++ b/platform/src/sdk/models/operations/configuresupplementaldata.ts
@@ -2,79 +2,126 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import { remap as remap$ } from "../../../lib/primitives.js";
+import { ClosedEnum } from "../../types/enums.js";
+import * as shared from "../shared/index.js";
+import * as z from "zod";
/**
* Data types that support supplemental data
*/
-export enum DataType {
- ChartOfAccounts = "chartOfAccounts",
- Bills = "bills",
- Company = "company",
- CreditNotes = "creditNotes",
- Customers = "customers",
- Invoices = "invoices",
- Items = "items",
- JournalEntries = "journalEntries",
- Suppliers = "suppliers",
- TaxRates = "taxRates",
- CommerceCompanyInfo = "commerce-companyInfo",
- CommerceCustomers = "commerce-customers",
- CommerceDisputes = "commerce-disputes",
- CommerceLocations = "commerce-locations",
- CommerceOrders = "commerce-orders",
- CommercePayments = "commerce-payments",
- CommercePaymentMethods = "commerce-paymentMethods",
- CommerceProducts = "commerce-products",
- CommerceProductCategories = "commerce-productCategories",
- CommerceTaxComponents = "commerce-taxComponents",
- CommerceTransactions = "commerce-transactions",
-}
+export const DataType = {
+ ChartOfAccounts: "chartOfAccounts",
+ Bills: "bills",
+ Company: "company",
+ CreditNotes: "creditNotes",
+ Customers: "customers",
+ Invoices: "invoices",
+ Items: "items",
+ JournalEntries: "journalEntries",
+ Suppliers: "suppliers",
+ TaxRates: "taxRates",
+ CommerceCompanyInfo: "commerce-companyInfo",
+ CommerceCustomers: "commerce-customers",
+ CommerceDisputes: "commerce-disputes",
+ CommerceLocations: "commerce-locations",
+ CommerceOrders: "commerce-orders",
+ CommercePayments: "commerce-payments",
+ CommercePaymentMethods: "commerce-paymentMethods",
+ CommerceProducts: "commerce-products",
+ CommerceProductCategories: "commerce-productCategories",
+ CommerceTaxComponents: "commerce-taxComponents",
+ CommerceTransactions: "commerce-transactions",
+} as const;
+/**
+ * Data types that support supplemental data
+ */
+export type DataType = ClosedEnum;
-export class ConfigureSupplementalDataRequest extends SpeakeasyBase {
+export type ConfigureSupplementalDataRequest = {
/**
- * The configuration for the specified platform and data type.
+ * A unique 4-letter key to represent a platform in each integration.
*/
- @SpeakeasyMetadata({ data: "request, media_type=application/json" })
- supplementalDataConfiguration?: shared.SupplementalDataConfiguration;
-
+ platformKey: string;
/**
* Supported supplemental data data type.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=dataType" })
dataType: DataType;
-
/**
- * A unique 4-letter key to represent a platform in each integration.
+ * The configuration for the specified platform and data type.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=platformKey" })
- platformKey: string;
+ supplementalDataConfiguration?: shared.SupplementalDataConfiguration | undefined;
+};
+
+/** @internal */
+export const DataType$inboundSchema: z.ZodNativeEnum = z.nativeEnum(DataType);
+
+/** @internal */
+export const DataType$outboundSchema: z.ZodNativeEnum = DataType$inboundSchema;
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace DataType$ {
+ /** @deprecated use `DataType$inboundSchema` instead. */
+ export const inboundSchema = DataType$inboundSchema;
+ /** @deprecated use `DataType$outboundSchema` instead. */
+ export const outboundSchema = DataType$outboundSchema;
}
-export class ConfigureSupplementalDataResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const ConfigureSupplementalDataRequest$inboundSchema: z.ZodType<
+ ConfigureSupplementalDataRequest,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ platformKey: z.string(),
+ dataType: DataType$inboundSchema,
+ SupplementalDataConfiguration:
+ shared.SupplementalDataConfiguration$inboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ SupplementalDataConfiguration: "supplementalDataConfiguration",
+ });
+ });
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type ConfigureSupplementalDataRequest$Outbound = {
+ platformKey: string;
+ dataType: string;
+ SupplementalDataConfiguration?: shared.SupplementalDataConfiguration$Outbound | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const ConfigureSupplementalDataRequest$outboundSchema: z.ZodType<
+ ConfigureSupplementalDataRequest$Outbound,
+ z.ZodTypeDef,
+ ConfigureSupplementalDataRequest
+> = z
+ .object({
+ platformKey: z.string(),
+ dataType: DataType$outboundSchema,
+ supplementalDataConfiguration:
+ shared.SupplementalDataConfiguration$outboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ supplementalDataConfiguration: "SupplementalDataConfiguration",
+ });
+ });
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ConfigureSupplementalDataRequest$ {
+ /** @deprecated use `ConfigureSupplementalDataRequest$inboundSchema` instead. */
+ export const inboundSchema = ConfigureSupplementalDataRequest$inboundSchema;
+ /** @deprecated use `ConfigureSupplementalDataRequest$outboundSchema` instead. */
+ export const outboundSchema = ConfigureSupplementalDataRequest$outboundSchema;
+ /** @deprecated use `ConfigureSupplementalDataRequest$Outbound` instead. */
+ export type Outbound = ConfigureSupplementalDataRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/createapikey.ts b/platform/src/sdk/models/operations/createapikey.ts
deleted file mode 100644
index 7307fa769..000000000
--- a/platform/src/sdk/models/operations/createapikey.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class CreateApiKeyResponse extends SpeakeasyBase {
- /**
- * Success
- */
- @SpeakeasyMetadata()
- apiKeyDetails?: shared.ApiKeyDetails;
-
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Bad Request
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/createcompany.ts b/platform/src/sdk/models/operations/createcompany.ts
deleted file mode 100644
index 74b819f4c..000000000
--- a/platform/src/sdk/models/operations/createcompany.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class CreateCompanyResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- company?: shared.Company;
-
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * The request made is not valid.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/createconnection.ts b/platform/src/sdk/models/operations/createconnection.ts
index 8b8baf146..5f4ed4d4b 100644
--- a/platform/src/sdk/models/operations/createconnection.ts
+++ b/platform/src/sdk/models/operations/createconnection.ts
@@ -2,59 +2,107 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-import { Expose } from "class-transformer";
+import { remap as remap$ } from "../../../lib/primitives.js";
+import * as z from "zod";
-export class CreateConnectionRequestBody extends SpeakeasyBase {
+export type CreateConnectionRequestBody = {
/**
* A unique 4-letter key to represent a platform in each integration. View [accounting](https://docs.codat.io/integrations/accounting/overview#platform-keys), [banking](https://docs.codat.io/integrations/banking/overview#platform-keys), and [commerce](https://docs.codat.io/integrations/commerce/overview#platform-keys) platform keys.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "platformKey" })
- platformKey?: string;
-}
-
-export class CreateConnectionRequest extends SpeakeasyBase {
- @SpeakeasyMetadata({ data: "request, media_type=application/json" })
- requestBody?: CreateConnectionRequestBody;
+ platformKey?: string | undefined;
+};
+export type CreateConnectionRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
+ requestBody?: CreateConnectionRequestBody | undefined;
+};
-export class CreateConnectionResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- connection?: shared.Connection;
+/** @internal */
+export const CreateConnectionRequestBody$inboundSchema: z.ZodType<
+ CreateConnectionRequestBody,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ platformKey: z.string().optional(),
+});
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export type CreateConnectionRequestBody$Outbound = {
+ platformKey?: string | undefined;
+};
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export const CreateConnectionRequestBody$outboundSchema: z.ZodType<
+ CreateConnectionRequestBody$Outbound,
+ z.ZodTypeDef,
+ CreateConnectionRequestBody
+> = z.object({
+ platformKey: z.string().optional(),
+});
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace CreateConnectionRequestBody$ {
+ /** @deprecated use `CreateConnectionRequestBody$inboundSchema` instead. */
+ export const inboundSchema = CreateConnectionRequestBody$inboundSchema;
+ /** @deprecated use `CreateConnectionRequestBody$outboundSchema` instead. */
+ export const outboundSchema = CreateConnectionRequestBody$outboundSchema;
+ /** @deprecated use `CreateConnectionRequestBody$Outbound` instead. */
+ export type Outbound = CreateConnectionRequestBody$Outbound;
+}
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/** @internal */
+export const CreateConnectionRequest$inboundSchema: z.ZodType<
+ CreateConnectionRequest,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ companyId: z.string(),
+ RequestBody: z.lazy(() => CreateConnectionRequestBody$inboundSchema).optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ RequestBody: "requestBody",
+ });
+ });
+
+/** @internal */
+export type CreateConnectionRequest$Outbound = {
+ companyId: string;
+ RequestBody?: CreateConnectionRequestBody$Outbound | undefined;
+};
+
+/** @internal */
+export const CreateConnectionRequest$outboundSchema: z.ZodType<
+ CreateConnectionRequest$Outbound,
+ z.ZodTypeDef,
+ CreateConnectionRequest
+> = z
+ .object({
+ companyId: z.string(),
+ requestBody: z.lazy(() => CreateConnectionRequestBody$outboundSchema).optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ requestBody: "RequestBody",
+ });
+ });
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace CreateConnectionRequest$ {
+ /** @deprecated use `CreateConnectionRequest$inboundSchema` instead. */
+ export const inboundSchema = CreateConnectionRequest$inboundSchema;
+ /** @deprecated use `CreateConnectionRequest$outboundSchema` instead. */
+ export const outboundSchema = CreateConnectionRequest$outboundSchema;
+ /** @deprecated use `CreateConnectionRequest$Outbound` instead. */
+ export type Outbound = CreateConnectionRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/creategroup.ts b/platform/src/sdk/models/operations/creategroup.ts
deleted file mode 100644
index 05708918a..000000000
--- a/platform/src/sdk/models/operations/creategroup.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class CreateGroupResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * Success
- */
- @SpeakeasyMetadata()
- group?: shared.Group;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/createrule.ts b/platform/src/sdk/models/operations/createrule.ts
deleted file mode 100644
index 6ab0fb659..000000000
--- a/platform/src/sdk/models/operations/createrule.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class CreateRuleResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- webhook?: shared.Webhook;
-}
diff --git a/platform/src/sdk/models/operations/createwebhookconsumer.ts b/platform/src/sdk/models/operations/createwebhookconsumer.ts
deleted file mode 100644
index e031c560d..000000000
--- a/platform/src/sdk/models/operations/createwebhookconsumer.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class CreateWebhookConsumerResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- webhookConsumer?: shared.WebhookConsumer;
-}
diff --git a/platform/src/sdk/models/operations/deleteapikey.ts b/platform/src/sdk/models/operations/deleteapikey.ts
index d110a5000..4bc998609 100644
--- a/platform/src/sdk/models/operations/deleteapikey.ts
+++ b/platform/src/sdk/models/operations/deleteapikey.ts
@@ -2,40 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class DeleteApiKeyRequest extends SpeakeasyBase {
+export type DeleteApiKeyRequest = {
/**
* Unique identifier for api key.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=apiKeyId" })
apiKeyId: string;
-}
+};
-export class DeleteApiKeyResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const DeleteApiKeyRequest$inboundSchema: z.ZodType<
+ DeleteApiKeyRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ apiKeyId: z.string(),
+});
- /**
- * Too many requests were made in a given amount of time. Wait a short period and then try again.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type DeleteApiKeyRequest$Outbound = {
+ apiKeyId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const DeleteApiKeyRequest$outboundSchema: z.ZodType<
+ DeleteApiKeyRequest$Outbound,
+ z.ZodTypeDef,
+ DeleteApiKeyRequest
+> = z.object({
+ apiKeyId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace DeleteApiKeyRequest$ {
+ /** @deprecated use `DeleteApiKeyRequest$inboundSchema` instead. */
+ export const inboundSchema = DeleteApiKeyRequest$inboundSchema;
+ /** @deprecated use `DeleteApiKeyRequest$outboundSchema` instead. */
+ export const outboundSchema = DeleteApiKeyRequest$outboundSchema;
+ /** @deprecated use `DeleteApiKeyRequest$Outbound` instead. */
+ export type Outbound = DeleteApiKeyRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/deletecompany.ts b/platform/src/sdk/models/operations/deletecompany.ts
index 4ded139e9..8f4a6656e 100644
--- a/platform/src/sdk/models/operations/deletecompany.ts
+++ b/platform/src/sdk/models/operations/deletecompany.ts
@@ -2,40 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class DeleteCompanyRequest extends SpeakeasyBase {
+export type DeleteCompanyRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
+};
-export class DeleteCompanyResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const DeleteCompanyRequest$inboundSchema: z.ZodType<
+ DeleteCompanyRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type DeleteCompanyRequest$Outbound = {
+ companyId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const DeleteCompanyRequest$outboundSchema: z.ZodType<
+ DeleteCompanyRequest$Outbound,
+ z.ZodTypeDef,
+ DeleteCompanyRequest
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace DeleteCompanyRequest$ {
+ /** @deprecated use `DeleteCompanyRequest$inboundSchema` instead. */
+ export const inboundSchema = DeleteCompanyRequest$inboundSchema;
+ /** @deprecated use `DeleteCompanyRequest$outboundSchema` instead. */
+ export const outboundSchema = DeleteCompanyRequest$outboundSchema;
+ /** @deprecated use `DeleteCompanyRequest$Outbound` instead. */
+ export type Outbound = DeleteCompanyRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/deleteconnection.ts b/platform/src/sdk/models/operations/deleteconnection.ts
index 32528870a..966e08da7 100644
--- a/platform/src/sdk/models/operations/deleteconnection.ts
+++ b/platform/src/sdk/models/operations/deleteconnection.ts
@@ -2,46 +2,54 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class DeleteConnectionRequest extends SpeakeasyBase {
+export type DeleteConnectionRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for a connection.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=connectionId" })
connectionId: string;
-}
+};
-export class DeleteConnectionResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const DeleteConnectionRequest$inboundSchema: z.ZodType<
+ DeleteConnectionRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+});
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type DeleteConnectionRequest$Outbound = {
+ companyId: string;
+ connectionId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const DeleteConnectionRequest$outboundSchema: z.ZodType<
+ DeleteConnectionRequest$Outbound,
+ z.ZodTypeDef,
+ DeleteConnectionRequest
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace DeleteConnectionRequest$ {
+ /** @deprecated use `DeleteConnectionRequest$inboundSchema` instead. */
+ export const inboundSchema = DeleteConnectionRequest$inboundSchema;
+ /** @deprecated use `DeleteConnectionRequest$outboundSchema` instead. */
+ export const outboundSchema = DeleteConnectionRequest$outboundSchema;
+ /** @deprecated use `DeleteConnectionRequest$Outbound` instead. */
+ export type Outbound = DeleteConnectionRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/deletewebhookconsumer.ts b/platform/src/sdk/models/operations/deletewebhookconsumer.ts
index aa4908bf1..e47f05512 100644
--- a/platform/src/sdk/models/operations/deletewebhookconsumer.ts
+++ b/platform/src/sdk/models/operations/deletewebhookconsumer.ts
@@ -2,40 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class DeleteWebhookConsumerRequest extends SpeakeasyBase {
+export type DeleteWebhookConsumerRequest = {
/**
* Unique identifier for the webhook consumer.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=webhookId" })
webhookId: string;
-}
+};
-export class DeleteWebhookConsumerResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const DeleteWebhookConsumerRequest$inboundSchema: z.ZodType<
+ DeleteWebhookConsumerRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ webhookId: z.string(),
+});
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type DeleteWebhookConsumerRequest$Outbound = {
+ webhookId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const DeleteWebhookConsumerRequest$outboundSchema: z.ZodType<
+ DeleteWebhookConsumerRequest$Outbound,
+ z.ZodTypeDef,
+ DeleteWebhookConsumerRequest
+> = z.object({
+ webhookId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace DeleteWebhookConsumerRequest$ {
+ /** @deprecated use `DeleteWebhookConsumerRequest$inboundSchema` instead. */
+ export const inboundSchema = DeleteWebhookConsumerRequest$inboundSchema;
+ /** @deprecated use `DeleteWebhookConsumerRequest$outboundSchema` instead. */
+ export const outboundSchema = DeleteWebhookConsumerRequest$outboundSchema;
+ /** @deprecated use `DeleteWebhookConsumerRequest$Outbound` instead. */
+ export type Outbound = DeleteWebhookConsumerRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getcompany.ts b/platform/src/sdk/models/operations/getcompany.ts
index facf51b5a..c3466d962 100644
--- a/platform/src/sdk/models/operations/getcompany.ts
+++ b/platform/src/sdk/models/operations/getcompany.ts
@@ -2,46 +2,44 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetCompanyRequest extends SpeakeasyBase {
+export type GetCompanyRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
+};
-export class GetCompanyResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- company?: shared.Company;
+/** @internal */
+export const GetCompanyRequest$inboundSchema: z.ZodType =
+ z.object({
+ companyId: z.string(),
+ });
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type GetCompanyRequest$Outbound = {
+ companyId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const GetCompanyRequest$outboundSchema: z.ZodType<
+ GetCompanyRequest$Outbound,
+ z.ZodTypeDef,
+ GetCompanyRequest
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetCompanyRequest$ {
+ /** @deprecated use `GetCompanyRequest$inboundSchema` instead. */
+ export const inboundSchema = GetCompanyRequest$inboundSchema;
+ /** @deprecated use `GetCompanyRequest$outboundSchema` instead. */
+ export const outboundSchema = GetCompanyRequest$outboundSchema;
+ /** @deprecated use `GetCompanyRequest$Outbound` instead. */
+ export type Outbound = GetCompanyRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getcompanydatastatus.ts b/platform/src/sdk/models/operations/getcompanydatastatus.ts
index ff6004331..f7eecd053 100644
--- a/platform/src/sdk/models/operations/getcompanydatastatus.ts
+++ b/platform/src/sdk/models/operations/getcompanydatastatus.ts
@@ -2,46 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetCompanyDataStatusRequest extends SpeakeasyBase {
+export type GetCompanyDataStatusRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
+};
-export class GetCompanyDataStatusResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const GetCompanyDataStatusRequest$inboundSchema: z.ZodType<
+ GetCompanyDataStatusRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * OK
- */
- @SpeakeasyMetadata()
- dataStatuses?: shared.DataStatuses;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type GetCompanyDataStatusRequest$Outbound = {
+ companyId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const GetCompanyDataStatusRequest$outboundSchema: z.ZodType<
+ GetCompanyDataStatusRequest$Outbound,
+ z.ZodTypeDef,
+ GetCompanyDataStatusRequest
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetCompanyDataStatusRequest$ {
+ /** @deprecated use `GetCompanyDataStatusRequest$inboundSchema` instead. */
+ export const inboundSchema = GetCompanyDataStatusRequest$inboundSchema;
+ /** @deprecated use `GetCompanyDataStatusRequest$outboundSchema` instead. */
+ export const outboundSchema = GetCompanyDataStatusRequest$outboundSchema;
+ /** @deprecated use `GetCompanyDataStatusRequest$Outbound` instead. */
+ export type Outbound = GetCompanyDataStatusRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getcompanypushhistory.ts b/platform/src/sdk/models/operations/getcompanypushhistory.ts
index bf227618f..40b96ffba 100644
--- a/platform/src/sdk/models/operations/getcompanypushhistory.ts
+++ b/platform/src/sdk/models/operations/getcompanypushhistory.ts
@@ -2,70 +2,75 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetCompanyPushHistoryRequest extends SpeakeasyBase {
+export type GetCompanyPushHistoryRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
- /**
- * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
- */
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=orderBy" })
- orderBy?: string;
-
/**
* Page number. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=page" })
- page?: number;
-
+ page?: number | undefined;
/**
* Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=pageSize" })
- pageSize?: number;
-
+ pageSize?: number | undefined;
/**
* Codat query string. [Read more](https://docs.codat.io/using-the-api/querying).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=query" })
- query?: string;
-}
-
-export class GetCompanyPushHistoryResponse extends SpeakeasyBase {
+ query?: string | undefined;
/**
- * HTTP response content type for this operation
+ * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
*/
- @SpeakeasyMetadata()
- contentType: string;
+ orderBy?: string | undefined;
+};
- /**
- * Your `query` parameter was not correctly formed
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export const GetCompanyPushHistoryRequest$inboundSchema: z.ZodType<
+ GetCompanyPushHistoryRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * OK
- */
- @SpeakeasyMetadata()
- pushOperations?: shared.PushOperations;
+/** @internal */
+export type GetCompanyPushHistoryRequest$Outbound = {
+ companyId: string;
+ page: number;
+ pageSize: number;
+ query?: string | undefined;
+ orderBy?: string | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const GetCompanyPushHistoryRequest$outboundSchema: z.ZodType<
+ GetCompanyPushHistoryRequest$Outbound,
+ z.ZodTypeDef,
+ GetCompanyPushHistoryRequest
+> = z.object({
+ companyId: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetCompanyPushHistoryRequest$ {
+ /** @deprecated use `GetCompanyPushHistoryRequest$inboundSchema` instead. */
+ export const inboundSchema = GetCompanyPushHistoryRequest$inboundSchema;
+ /** @deprecated use `GetCompanyPushHistoryRequest$outboundSchema` instead. */
+ export const outboundSchema = GetCompanyPushHistoryRequest$outboundSchema;
+ /** @deprecated use `GetCompanyPushHistoryRequest$Outbound` instead. */
+ export type Outbound = GetCompanyPushHistoryRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getconnection.ts b/platform/src/sdk/models/operations/getconnection.ts
index be017c8dd..27ceb78f1 100644
--- a/platform/src/sdk/models/operations/getconnection.ts
+++ b/platform/src/sdk/models/operations/getconnection.ts
@@ -2,52 +2,54 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetConnectionRequest extends SpeakeasyBase {
+export type GetConnectionRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for a connection.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=connectionId" })
connectionId: string;
-}
-
-export class GetConnectionResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- connection?: shared.Connection;
-
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+};
+
+/** @internal */
+export const GetConnectionRequest$inboundSchema: z.ZodType<
+ GetConnectionRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+});
+
+/** @internal */
+export type GetConnectionRequest$Outbound = {
+ companyId: string;
+ connectionId: string;
+};
+
+/** @internal */
+export const GetConnectionRequest$outboundSchema: z.ZodType<
+ GetConnectionRequest$Outbound,
+ z.ZodTypeDef,
+ GetConnectionRequest
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetConnectionRequest$ {
+ /** @deprecated use `GetConnectionRequest$inboundSchema` instead. */
+ export const inboundSchema = GetConnectionRequest$inboundSchema;
+ /** @deprecated use `GetConnectionRequest$outboundSchema` instead. */
+ export const outboundSchema = GetConnectionRequest$outboundSchema;
+ /** @deprecated use `GetConnectionRequest$Outbound` instead. */
+ export type Outbound = GetConnectionRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getconnectionmanagementaccesstoken.ts b/platform/src/sdk/models/operations/getconnectionmanagementaccesstoken.ts
index 7a668fc92..9a9a9ad16 100644
--- a/platform/src/sdk/models/operations/getconnectionmanagementaccesstoken.ts
+++ b/platform/src/sdk/models/operations/getconnectionmanagementaccesstoken.ts
@@ -2,46 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetConnectionManagementAccessTokenRequest extends SpeakeasyBase {
+export type GetConnectionManagementAccessTokenRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
+};
-export class GetConnectionManagementAccessTokenResponse extends SpeakeasyBase {
- /**
- * Success
- */
- @SpeakeasyMetadata()
- connectionManagementAccessToken?: shared.ConnectionManagementAccessToken;
+/** @internal */
+export const GetConnectionManagementAccessTokenRequest$inboundSchema: z.ZodType<
+ GetConnectionManagementAccessTokenRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type GetConnectionManagementAccessTokenRequest$Outbound = {
+ companyId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const GetConnectionManagementAccessTokenRequest$outboundSchema: z.ZodType<
+ GetConnectionManagementAccessTokenRequest$Outbound,
+ z.ZodTypeDef,
+ GetConnectionManagementAccessTokenRequest
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetConnectionManagementAccessTokenRequest$ {
+ /** @deprecated use `GetConnectionManagementAccessTokenRequest$inboundSchema` instead. */
+ export const inboundSchema = GetConnectionManagementAccessTokenRequest$inboundSchema;
+ /** @deprecated use `GetConnectionManagementAccessTokenRequest$outboundSchema` instead. */
+ export const outboundSchema = GetConnectionManagementAccessTokenRequest$outboundSchema;
+ /** @deprecated use `GetConnectionManagementAccessTokenRequest$Outbound` instead. */
+ export type Outbound = GetConnectionManagementAccessTokenRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getconnectionmanagementcorssettings.ts b/platform/src/sdk/models/operations/getconnectionmanagementcorssettings.ts
deleted file mode 100644
index 74aaf68b3..000000000
--- a/platform/src/sdk/models/operations/getconnectionmanagementcorssettings.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class GetConnectionManagementCorsSettingsResponse extends SpeakeasyBase {
- /**
- * Success
- */
- @SpeakeasyMetadata()
- connectionManagementAllowedOrigins?: shared.ConnectionManagementAllowedOrigins;
-
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/getcreateupdatemodeloptionsbydatatype.ts b/platform/src/sdk/models/operations/getcreateupdatemodeloptionsbydatatype.ts
index 29806072d..a53d55e30 100644
--- a/platform/src/sdk/models/operations/getcreateupdatemodeloptionsbydatatype.ts
+++ b/platform/src/sdk/models/operations/getcreateupdatemodeloptionsbydatatype.ts
@@ -2,58 +2,62 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as shared from "../shared/index.js";
+import * as z from "zod";
-export class GetCreateUpdateModelOptionsByDataTypeRequest extends SpeakeasyBase {
+export type GetCreateUpdateModelOptionsByDataTypeRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for a connection.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=connectionId" })
connectionId: string;
-
/**
* The key of a Codat data type
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=dataType" })
- dataType: shared.SchemaDataType;
-}
-
-export class GetCreateUpdateModelOptionsByDataTypeResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- pushOption?: shared.PushOption;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+ dataType: shared.DataType;
+};
+
+/** @internal */
+export const GetCreateUpdateModelOptionsByDataTypeRequest$inboundSchema: z.ZodType<
+ GetCreateUpdateModelOptionsByDataTypeRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ dataType: shared.DataType$inboundSchema,
+});
+
+/** @internal */
+export type GetCreateUpdateModelOptionsByDataTypeRequest$Outbound = {
+ companyId: string;
+ connectionId: string;
+ dataType: string;
+};
+
+/** @internal */
+export const GetCreateUpdateModelOptionsByDataTypeRequest$outboundSchema: z.ZodType<
+ GetCreateUpdateModelOptionsByDataTypeRequest$Outbound,
+ z.ZodTypeDef,
+ GetCreateUpdateModelOptionsByDataTypeRequest
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ dataType: shared.DataType$outboundSchema,
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetCreateUpdateModelOptionsByDataTypeRequest$ {
+ /** @deprecated use `GetCreateUpdateModelOptionsByDataTypeRequest$inboundSchema` instead. */
+ export const inboundSchema = GetCreateUpdateModelOptionsByDataTypeRequest$inboundSchema;
+ /** @deprecated use `GetCreateUpdateModelOptionsByDataTypeRequest$outboundSchema` instead. */
+ export const outboundSchema = GetCreateUpdateModelOptionsByDataTypeRequest$outboundSchema;
+ /** @deprecated use `GetCreateUpdateModelOptionsByDataTypeRequest$Outbound` instead. */
+ export type Outbound = GetCreateUpdateModelOptionsByDataTypeRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getcustomdatatypeconfiguration.ts b/platform/src/sdk/models/operations/getcustomdatatypeconfiguration.ts
index d136e87cc..bbacc5432 100644
--- a/platform/src/sdk/models/operations/getcustomdatatypeconfiguration.ts
+++ b/platform/src/sdk/models/operations/getcustomdatatypeconfiguration.ts
@@ -2,52 +2,54 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class GetCustomDataTypeConfigurationRequest extends SpeakeasyBase {
- /**
- * Unique identifier for a custom data type.
- */
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=customDataIdentifier" })
- customDataIdentifier: string;
+import * as z from "zod";
+export type GetCustomDataTypeConfigurationRequest = {
/**
* A unique 4-letter key to represent a platform in each integration.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=platformKey" })
platformKey: string;
-}
-
-export class GetCustomDataTypeConfigurationResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- customDataTypeRecords?: shared.CustomDataTypeRecords;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
/**
- * Raw HTTP response; suitable for custom response parsing
+ * Unique identifier for a custom data type.
*/
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+ customDataIdentifier: string;
+};
+
+/** @internal */
+export const GetCustomDataTypeConfigurationRequest$inboundSchema: z.ZodType<
+ GetCustomDataTypeConfigurationRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ platformKey: z.string(),
+ customDataIdentifier: z.string(),
+});
+
+/** @internal */
+export type GetCustomDataTypeConfigurationRequest$Outbound = {
+ platformKey: string;
+ customDataIdentifier: string;
+};
+
+/** @internal */
+export const GetCustomDataTypeConfigurationRequest$outboundSchema: z.ZodType<
+ GetCustomDataTypeConfigurationRequest$Outbound,
+ z.ZodTypeDef,
+ GetCustomDataTypeConfigurationRequest
+> = z.object({
+ platformKey: z.string(),
+ customDataIdentifier: z.string(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetCustomDataTypeConfigurationRequest$ {
+ /** @deprecated use `GetCustomDataTypeConfigurationRequest$inboundSchema` instead. */
+ export const inboundSchema = GetCustomDataTypeConfigurationRequest$inboundSchema;
+ /** @deprecated use `GetCustomDataTypeConfigurationRequest$outboundSchema` instead. */
+ export const outboundSchema = GetCustomDataTypeConfigurationRequest$outboundSchema;
+ /** @deprecated use `GetCustomDataTypeConfigurationRequest$Outbound` instead. */
+ export type Outbound = GetCustomDataTypeConfigurationRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getintegration.ts b/platform/src/sdk/models/operations/getintegration.ts
index 3b1acefdb..de746d284 100644
--- a/platform/src/sdk/models/operations/getintegration.ts
+++ b/platform/src/sdk/models/operations/getintegration.ts
@@ -2,46 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetIntegrationRequest extends SpeakeasyBase {
+export type GetIntegrationRequest = {
/**
* A unique 4-letter key to represent a platform in each integration.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=platformKey" })
platformKey: string;
-}
+};
-export class GetIntegrationResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const GetIntegrationRequest$inboundSchema: z.ZodType<
+ GetIntegrationRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ platformKey: z.string(),
+});
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- integration?: shared.Integration;
+/** @internal */
+export type GetIntegrationRequest$Outbound = {
+ platformKey: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const GetIntegrationRequest$outboundSchema: z.ZodType<
+ GetIntegrationRequest$Outbound,
+ z.ZodTypeDef,
+ GetIntegrationRequest
+> = z.object({
+ platformKey: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetIntegrationRequest$ {
+ /** @deprecated use `GetIntegrationRequest$inboundSchema` instead. */
+ export const inboundSchema = GetIntegrationRequest$inboundSchema;
+ /** @deprecated use `GetIntegrationRequest$outboundSchema` instead. */
+ export const outboundSchema = GetIntegrationRequest$outboundSchema;
+ /** @deprecated use `GetIntegrationRequest$Outbound` instead. */
+ export type Outbound = GetIntegrationRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getintegrationsbranding.ts b/platform/src/sdk/models/operations/getintegrationsbranding.ts
index ee9ebc3c0..710205b46 100644
--- a/platform/src/sdk/models/operations/getintegrationsbranding.ts
+++ b/platform/src/sdk/models/operations/getintegrationsbranding.ts
@@ -2,46 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetIntegrationsBrandingRequest extends SpeakeasyBase {
+export type GetIntegrationsBrandingRequest = {
/**
* A unique 4-letter key to represent a platform in each integration.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=platformKey" })
platformKey: string;
-}
+};
-export class GetIntegrationsBrandingResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- branding?: shared.Branding;
+/** @internal */
+export const GetIntegrationsBrandingRequest$inboundSchema: z.ZodType<
+ GetIntegrationsBrandingRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ platformKey: z.string(),
+});
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type GetIntegrationsBrandingRequest$Outbound = {
+ platformKey: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const GetIntegrationsBrandingRequest$outboundSchema: z.ZodType<
+ GetIntegrationsBrandingRequest$Outbound,
+ z.ZodTypeDef,
+ GetIntegrationsBrandingRequest
+> = z.object({
+ platformKey: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetIntegrationsBrandingRequest$ {
+ /** @deprecated use `GetIntegrationsBrandingRequest$inboundSchema` instead. */
+ export const inboundSchema = GetIntegrationsBrandingRequest$inboundSchema;
+ /** @deprecated use `GetIntegrationsBrandingRequest$outboundSchema` instead. */
+ export const outboundSchema = GetIntegrationsBrandingRequest$outboundSchema;
+ /** @deprecated use `GetIntegrationsBrandingRequest$Outbound` instead. */
+ export type Outbound = GetIntegrationsBrandingRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getprofile.ts b/platform/src/sdk/models/operations/getprofile.ts
deleted file mode 100644
index 8f3ec35d1..000000000
--- a/platform/src/sdk/models/operations/getprofile.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class GetProfileResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- profile?: shared.Profile;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/getprofilesyncsettings.ts b/platform/src/sdk/models/operations/getprofilesyncsettings.ts
deleted file mode 100644
index eb4c2629c..000000000
--- a/platform/src/sdk/models/operations/getprofilesyncsettings.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class GetProfileSyncSettingsResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- syncSettings?: shared.SyncSettings;
-}
diff --git a/platform/src/sdk/models/operations/getpulloperation.ts b/platform/src/sdk/models/operations/getpulloperation.ts
index 4d72c1d26..be4d909fd 100644
--- a/platform/src/sdk/models/operations/getpulloperation.ts
+++ b/platform/src/sdk/models/operations/getpulloperation.ts
@@ -2,52 +2,54 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetPullOperationRequest extends SpeakeasyBase {
+export type GetPullOperationRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for the dataset that completed its sync.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=datasetId" })
datasetId: string;
-}
-
-export class GetPullOperationResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- pullOperation?: shared.PullOperation;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+};
+
+/** @internal */
+export const GetPullOperationRequest$inboundSchema: z.ZodType<
+ GetPullOperationRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ datasetId: z.string(),
+});
+
+/** @internal */
+export type GetPullOperationRequest$Outbound = {
+ companyId: string;
+ datasetId: string;
+};
+
+/** @internal */
+export const GetPullOperationRequest$outboundSchema: z.ZodType<
+ GetPullOperationRequest$Outbound,
+ z.ZodTypeDef,
+ GetPullOperationRequest
+> = z.object({
+ companyId: z.string(),
+ datasetId: z.string(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetPullOperationRequest$ {
+ /** @deprecated use `GetPullOperationRequest$inboundSchema` instead. */
+ export const inboundSchema = GetPullOperationRequest$inboundSchema;
+ /** @deprecated use `GetPullOperationRequest$outboundSchema` instead. */
+ export const outboundSchema = GetPullOperationRequest$outboundSchema;
+ /** @deprecated use `GetPullOperationRequest$Outbound` instead. */
+ export type Outbound = GetPullOperationRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getpushoperation.ts b/platform/src/sdk/models/operations/getpushoperation.ts
index bcf2360cf..4db5e6723 100644
--- a/platform/src/sdk/models/operations/getpushoperation.ts
+++ b/platform/src/sdk/models/operations/getpushoperation.ts
@@ -2,52 +2,54 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetPushOperationRequest extends SpeakeasyBase {
+export type GetPushOperationRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Push operation key.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=pushOperationKey" })
pushOperationKey: string;
-}
-
-export class GetPushOperationResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- pushOperation?: shared.PushOperation;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+};
+
+/** @internal */
+export const GetPushOperationRequest$inboundSchema: z.ZodType<
+ GetPushOperationRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ pushOperationKey: z.string(),
+});
+
+/** @internal */
+export type GetPushOperationRequest$Outbound = {
+ companyId: string;
+ pushOperationKey: string;
+};
+
+/** @internal */
+export const GetPushOperationRequest$outboundSchema: z.ZodType<
+ GetPushOperationRequest$Outbound,
+ z.ZodTypeDef,
+ GetPushOperationRequest
+> = z.object({
+ companyId: z.string(),
+ pushOperationKey: z.string(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetPushOperationRequest$ {
+ /** @deprecated use `GetPushOperationRequest$inboundSchema` instead. */
+ export const inboundSchema = GetPushOperationRequest$inboundSchema;
+ /** @deprecated use `GetPushOperationRequest$outboundSchema` instead. */
+ export const outboundSchema = GetPushOperationRequest$outboundSchema;
+ /** @deprecated use `GetPushOperationRequest$Outbound` instead. */
+ export type Outbound = GetPushOperationRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getsupplementaldataconfiguration.ts b/platform/src/sdk/models/operations/getsupplementaldataconfiguration.ts
index 6ac1d0183..2d9f3009d 100644
--- a/platform/src/sdk/models/operations/getsupplementaldataconfiguration.ts
+++ b/platform/src/sdk/models/operations/getsupplementaldataconfiguration.ts
@@ -2,79 +2,105 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import { ClosedEnum } from "../../types/enums.js";
+import * as z from "zod";
/**
* Data types that support supplemental data
*/
-export enum PathParamDataType {
- ChartOfAccounts = "chartOfAccounts",
- Bills = "bills",
- Company = "company",
- CreditNotes = "creditNotes",
- Customers = "customers",
- Invoices = "invoices",
- Items = "items",
- JournalEntries = "journalEntries",
- Suppliers = "suppliers",
- TaxRates = "taxRates",
- CommerceCompanyInfo = "commerce-companyInfo",
- CommerceCustomers = "commerce-customers",
- CommerceDisputes = "commerce-disputes",
- CommerceLocations = "commerce-locations",
- CommerceOrders = "commerce-orders",
- CommercePayments = "commerce-payments",
- CommercePaymentMethods = "commerce-paymentMethods",
- CommerceProducts = "commerce-products",
- CommerceProductCategories = "commerce-productCategories",
- CommerceTaxComponents = "commerce-taxComponents",
- CommerceTransactions = "commerce-transactions",
-}
-
-export class GetSupplementalDataConfigurationRequest extends SpeakeasyBase {
- /**
- * Supported supplemental data data type.
- */
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=dataType" })
- dataType: PathParamDataType;
+export const PathParamDataType = {
+ ChartOfAccounts: "chartOfAccounts",
+ Bills: "bills",
+ Company: "company",
+ CreditNotes: "creditNotes",
+ Customers: "customers",
+ Invoices: "invoices",
+ Items: "items",
+ JournalEntries: "journalEntries",
+ Suppliers: "suppliers",
+ TaxRates: "taxRates",
+ CommerceCompanyInfo: "commerce-companyInfo",
+ CommerceCustomers: "commerce-customers",
+ CommerceDisputes: "commerce-disputes",
+ CommerceLocations: "commerce-locations",
+ CommerceOrders: "commerce-orders",
+ CommercePayments: "commerce-payments",
+ CommercePaymentMethods: "commerce-paymentMethods",
+ CommerceProducts: "commerce-products",
+ CommerceProductCategories: "commerce-productCategories",
+ CommerceTaxComponents: "commerce-taxComponents",
+ CommerceTransactions: "commerce-transactions",
+} as const;
+/**
+ * Data types that support supplemental data
+ */
+export type PathParamDataType = ClosedEnum;
+export type GetSupplementalDataConfigurationRequest = {
/**
* A unique 4-letter key to represent a platform in each integration.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=platformKey" })
platformKey: string;
-}
-
-export class GetSupplementalDataConfigurationResponse extends SpeakeasyBase {
/**
- * HTTP response content type for this operation
+ * Supported supplemental data data type.
*/
- @SpeakeasyMetadata()
- contentType: string;
+ dataType: PathParamDataType;
+};
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export const PathParamDataType$inboundSchema: z.ZodNativeEnum =
+ z.nativeEnum(PathParamDataType);
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const PathParamDataType$outboundSchema: z.ZodNativeEnum =
+ PathParamDataType$inboundSchema;
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace PathParamDataType$ {
+ /** @deprecated use `PathParamDataType$inboundSchema` instead. */
+ export const inboundSchema = PathParamDataType$inboundSchema;
+ /** @deprecated use `PathParamDataType$outboundSchema` instead. */
+ export const outboundSchema = PathParamDataType$outboundSchema;
+}
- /**
- * OK
- */
- @SpeakeasyMetadata()
- supplementalDataConfiguration?: shared.SupplementalDataConfiguration;
+/** @internal */
+export const GetSupplementalDataConfigurationRequest$inboundSchema: z.ZodType<
+ GetSupplementalDataConfigurationRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ platformKey: z.string(),
+ dataType: PathParamDataType$inboundSchema,
+});
+
+/** @internal */
+export type GetSupplementalDataConfigurationRequest$Outbound = {
+ platformKey: string;
+ dataType: string;
+};
+
+/** @internal */
+export const GetSupplementalDataConfigurationRequest$outboundSchema: z.ZodType<
+ GetSupplementalDataConfigurationRequest$Outbound,
+ z.ZodTypeDef,
+ GetSupplementalDataConfigurationRequest
+> = z.object({
+ platformKey: z.string(),
+ dataType: PathParamDataType$outboundSchema,
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetSupplementalDataConfigurationRequest$ {
+ /** @deprecated use `GetSupplementalDataConfigurationRequest$inboundSchema` instead. */
+ export const inboundSchema = GetSupplementalDataConfigurationRequest$inboundSchema;
+ /** @deprecated use `GetSupplementalDataConfigurationRequest$outboundSchema` instead. */
+ export const outboundSchema = GetSupplementalDataConfigurationRequest$outboundSchema;
+ /** @deprecated use `GetSupplementalDataConfigurationRequest$Outbound` instead. */
+ export type Outbound = GetSupplementalDataConfigurationRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/getwebhook.ts b/platform/src/sdk/models/operations/getwebhook.ts
index e3c2d9d42..d4739361d 100644
--- a/platform/src/sdk/models/operations/getwebhook.ts
+++ b/platform/src/sdk/models/operations/getwebhook.ts
@@ -2,46 +2,44 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class GetWebhookRequest extends SpeakeasyBase {
+export type GetWebhookRequest = {
/**
* Unique ID of the webhook or rule.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=ruleId" })
ruleId: string;
-}
+};
-export class GetWebhookResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const GetWebhookRequest$inboundSchema: z.ZodType =
+ z.object({
+ ruleId: z.string(),
+ });
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export type GetWebhookRequest$Outbound = {
+ ruleId: string;
+};
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/** @internal */
+export const GetWebhookRequest$outboundSchema: z.ZodType<
+ GetWebhookRequest$Outbound,
+ z.ZodTypeDef,
+ GetWebhookRequest
+> = z.object({
+ ruleId: z.string(),
+});
- /**
- * OK
- */
- @SpeakeasyMetadata()
- webhook?: shared.Webhook;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace GetWebhookRequest$ {
+ /** @deprecated use `GetWebhookRequest$inboundSchema` instead. */
+ export const inboundSchema = GetWebhookRequest$inboundSchema;
+ /** @deprecated use `GetWebhookRequest$outboundSchema` instead. */
+ export const outboundSchema = GetWebhookRequest$outboundSchema;
+ /** @deprecated use `GetWebhookRequest$Outbound` instead. */
+ export type Outbound = GetWebhookRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/index.ts b/platform/src/sdk/models/operations/index.ts
index fda2559f1..4b496c601 100644
--- a/platform/src/sdk/models/operations/index.ts
+++ b/platform/src/sdk/models/operations/index.ts
@@ -2,51 +2,38 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-export * from "./addcompanytogroup";
-export * from "./configurecustomdatatype";
-export * from "./configuresupplementaldata";
-export * from "./createapikey";
-export * from "./createcompany";
-export * from "./createconnection";
-export * from "./creategroup";
-export * from "./createrule";
-export * from "./createwebhookconsumer";
-export * from "./deleteapikey";
-export * from "./deletecompany";
-export * from "./deleteconnection";
-export * from "./deletewebhookconsumer";
-export * from "./getcompany";
-export * from "./getcompanydatastatus";
-export * from "./getcompanypushhistory";
-export * from "./getconnection";
-export * from "./getconnectionmanagementaccesstoken";
-export * from "./getconnectionmanagementcorssettings";
-export * from "./getcreateupdatemodeloptionsbydatatype";
-export * from "./getcustomdatatypeconfiguration";
-export * from "./getintegration";
-export * from "./getintegrationsbranding";
-export * from "./getprofile";
-export * from "./getprofilesyncsettings";
-export * from "./getpulloperation";
-export * from "./getpushoperation";
-export * from "./getsupplementaldataconfiguration";
-export * from "./getwebhook";
-export * from "./listapikeys";
-export * from "./listcompanies";
-export * from "./listconnections";
-export * from "./listcustomdatatyperecords";
-export * from "./listgroups";
-export * from "./listintegrations";
-export * from "./listpulloperations";
-export * from "./listrules";
-export * from "./listwebhookconsumers";
-export * from "./refreshcompanydata";
-export * from "./refreshcustomdatatype";
-export * from "./refreshdatatype";
-export * from "./removecompanyfromgroup";
-export * from "./setconnectionmanagementcorssettings";
-export * from "./unlinkconnection";
-export * from "./updatecompany";
-export * from "./updateconnectionauthorization";
-export * from "./updateprofile";
-export * from "./updateprofilesyncsettings";
+export * from "./addcompanytogroup.js";
+export * from "./configurecustomdatatype.js";
+export * from "./configuresupplementaldata.js";
+export * from "./createconnection.js";
+export * from "./deleteapikey.js";
+export * from "./deletecompany.js";
+export * from "./deleteconnection.js";
+export * from "./deletewebhookconsumer.js";
+export * from "./getcompany.js";
+export * from "./getcompanydatastatus.js";
+export * from "./getcompanypushhistory.js";
+export * from "./getconnection.js";
+export * from "./getconnectionmanagementaccesstoken.js";
+export * from "./getcreateupdatemodeloptionsbydatatype.js";
+export * from "./getcustomdatatypeconfiguration.js";
+export * from "./getintegration.js";
+export * from "./getintegrationsbranding.js";
+export * from "./getpulloperation.js";
+export * from "./getpushoperation.js";
+export * from "./getsupplementaldataconfiguration.js";
+export * from "./getwebhook.js";
+export * from "./listcompanies.js";
+export * from "./listconnections.js";
+export * from "./listcustomdatatyperecords.js";
+export * from "./listintegrations.js";
+export * from "./listpulloperations.js";
+export * from "./listrules.js";
+export * from "./refreshcompanydata.js";
+export * from "./refreshcustomdatatype.js";
+export * from "./refreshdatatype.js";
+export * from "./removecompanyfromgroup.js";
+export * from "./unlinkconnection.js";
+export * from "./updatecompany.js";
+export * from "./updateconnectionauthorization.js";
+export * from "./updateprofilesyncsettings.js";
diff --git a/platform/src/sdk/models/operations/listapikeys.ts b/platform/src/sdk/models/operations/listapikeys.ts
deleted file mode 100644
index 1a52c8664..000000000
--- a/platform/src/sdk/models/operations/listapikeys.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class ListApiKeysResponse extends SpeakeasyBase {
- /**
- * Success
- */
- @SpeakeasyMetadata()
- apiKeys?: shared.ApiKeys;
-
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/listcompanies.ts b/platform/src/sdk/models/operations/listcompanies.ts
index 0f76bf55e..c8efeba02 100644
--- a/platform/src/sdk/models/operations/listcompanies.ts
+++ b/platform/src/sdk/models/operations/listcompanies.ts
@@ -2,64 +2,68 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class ListCompaniesRequest extends SpeakeasyBase {
- /**
- * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
- */
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=orderBy" })
- orderBy?: string;
+import * as z from "zod";
+export type ListCompaniesRequest = {
/**
* Page number. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=page" })
- page?: number;
-
+ page?: number | undefined;
/**
* Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=pageSize" })
- pageSize?: number;
-
+ pageSize?: number | undefined;
/**
* Codat query string. [Read more](https://docs.codat.io/using-the-api/querying).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=query" })
- query?: string;
-}
-
-export class ListCompaniesResponse extends SpeakeasyBase {
+ query?: string | undefined;
/**
- * OK
+ * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
*/
- @SpeakeasyMetadata()
- companies?: shared.Companies;
+ orderBy?: string | undefined;
+};
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const ListCompaniesRequest$inboundSchema: z.ZodType<
+ ListCompaniesRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * Your `query` parameter was not correctly formed
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type ListCompaniesRequest$Outbound = {
+ page: number;
+ pageSize: number;
+ query?: string | undefined;
+ orderBy?: string | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const ListCompaniesRequest$outboundSchema: z.ZodType<
+ ListCompaniesRequest$Outbound,
+ z.ZodTypeDef,
+ ListCompaniesRequest
+> = z.object({
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ListCompaniesRequest$ {
+ /** @deprecated use `ListCompaniesRequest$inboundSchema` instead. */
+ export const inboundSchema = ListCompaniesRequest$inboundSchema;
+ /** @deprecated use `ListCompaniesRequest$outboundSchema` instead. */
+ export const outboundSchema = ListCompaniesRequest$outboundSchema;
+ /** @deprecated use `ListCompaniesRequest$Outbound` instead. */
+ export type Outbound = ListCompaniesRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/listconnections.ts b/platform/src/sdk/models/operations/listconnections.ts
index f2b232473..fda56c1a5 100644
--- a/platform/src/sdk/models/operations/listconnections.ts
+++ b/platform/src/sdk/models/operations/listconnections.ts
@@ -2,70 +2,75 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class ListConnectionsRequest extends SpeakeasyBase {
+export type ListConnectionsRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
- /**
- * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
- */
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=orderBy" })
- orderBy?: string;
-
/**
* Page number. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=page" })
- page?: number;
-
+ page?: number | undefined;
/**
* Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=pageSize" })
- pageSize?: number;
-
+ pageSize?: number | undefined;
/**
* Codat query string. [Read more](https://docs.codat.io/using-the-api/querying).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=query" })
- query?: string;
-}
-
-export class ListConnectionsResponse extends SpeakeasyBase {
+ query?: string | undefined;
/**
- * OK
+ * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
*/
- @SpeakeasyMetadata()
- connections?: shared.Connections;
+ orderBy?: string | undefined;
+};
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const ListConnectionsRequest$inboundSchema: z.ZodType<
+ ListConnectionsRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * Your `query` parameter was not correctly formed
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type ListConnectionsRequest$Outbound = {
+ companyId: string;
+ page: number;
+ pageSize: number;
+ query?: string | undefined;
+ orderBy?: string | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const ListConnectionsRequest$outboundSchema: z.ZodType<
+ ListConnectionsRequest$Outbound,
+ z.ZodTypeDef,
+ ListConnectionsRequest
+> = z.object({
+ companyId: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ListConnectionsRequest$ {
+ /** @deprecated use `ListConnectionsRequest$inboundSchema` instead. */
+ export const inboundSchema = ListConnectionsRequest$inboundSchema;
+ /** @deprecated use `ListConnectionsRequest$outboundSchema` instead. */
+ export const outboundSchema = ListConnectionsRequest$outboundSchema;
+ /** @deprecated use `ListConnectionsRequest$Outbound` instead. */
+ export type Outbound = ListConnectionsRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/listcustomdatatyperecords.ts b/platform/src/sdk/models/operations/listcustomdatatyperecords.ts
index 6145441c0..136986372 100644
--- a/platform/src/sdk/models/operations/listcustomdatatyperecords.ts
+++ b/platform/src/sdk/models/operations/listcustomdatatyperecords.ts
@@ -2,70 +2,75 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class ListCustomDataTypeRecordsRequest extends SpeakeasyBase {
+export type ListCustomDataTypeRecordsRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for a connection.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=connectionId" })
connectionId: string;
-
/**
* Unique identifier for a custom data type.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=customDataIdentifier" })
customDataIdentifier: string;
-
/**
* Page number. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=page" })
- page?: number;
-
+ page?: number | undefined;
/**
* Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=pageSize" })
- pageSize?: number;
-}
-
-export class ListCustomDataTypeRecordsResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+ pageSize?: number | undefined;
+};
- /**
- * OK
- */
- @SpeakeasyMetadata()
- customDataTypeRecords?: shared.CustomDataTypeRecords;
+/** @internal */
+export const ListCustomDataTypeRecordsRequest$inboundSchema: z.ZodType<
+ ListCustomDataTypeRecordsRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ customDataIdentifier: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+});
- /**
- * The request made is not valid.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type ListCustomDataTypeRecordsRequest$Outbound = {
+ companyId: string;
+ connectionId: string;
+ customDataIdentifier: string;
+ page: number;
+ pageSize: number;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const ListCustomDataTypeRecordsRequest$outboundSchema: z.ZodType<
+ ListCustomDataTypeRecordsRequest$Outbound,
+ z.ZodTypeDef,
+ ListCustomDataTypeRecordsRequest
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ customDataIdentifier: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ListCustomDataTypeRecordsRequest$ {
+ /** @deprecated use `ListCustomDataTypeRecordsRequest$inboundSchema` instead. */
+ export const inboundSchema = ListCustomDataTypeRecordsRequest$inboundSchema;
+ /** @deprecated use `ListCustomDataTypeRecordsRequest$outboundSchema` instead. */
+ export const outboundSchema = ListCustomDataTypeRecordsRequest$outboundSchema;
+ /** @deprecated use `ListCustomDataTypeRecordsRequest$Outbound` instead. */
+ export type Outbound = ListCustomDataTypeRecordsRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/listgroups.ts b/platform/src/sdk/models/operations/listgroups.ts
deleted file mode 100644
index bca2f3b66..000000000
--- a/platform/src/sdk/models/operations/listgroups.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class ListGroupsResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-
- /**
- * Success
- */
- @SpeakeasyMetadata()
- groups?: shared.Groups;
-}
diff --git a/platform/src/sdk/models/operations/listintegrations.ts b/platform/src/sdk/models/operations/listintegrations.ts
index f163993f7..d9733c1f2 100644
--- a/platform/src/sdk/models/operations/listintegrations.ts
+++ b/platform/src/sdk/models/operations/listintegrations.ts
@@ -2,64 +2,68 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class ListIntegrationsRequest extends SpeakeasyBase {
- /**
- * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
- */
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=orderBy" })
- orderBy?: string;
+import * as z from "zod";
+export type ListIntegrationsRequest = {
/**
* Page number. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=page" })
- page?: number;
-
+ page?: number | undefined;
/**
* Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=pageSize" })
- pageSize?: number;
-
+ pageSize?: number | undefined;
/**
* Codat query string. [Read more](https://docs.codat.io/using-the-api/querying).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=query" })
- query?: string;
-}
-
-export class ListIntegrationsResponse extends SpeakeasyBase {
+ query?: string | undefined;
/**
- * HTTP response content type for this operation
+ * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
*/
- @SpeakeasyMetadata()
- contentType: string;
+ orderBy?: string | undefined;
+};
- /**
- * Your `query` parameter was not correctly formed
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export const ListIntegrationsRequest$inboundSchema: z.ZodType<
+ ListIntegrationsRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * OK
- */
- @SpeakeasyMetadata()
- integrations?: shared.Integrations;
+/** @internal */
+export type ListIntegrationsRequest$Outbound = {
+ page: number;
+ pageSize: number;
+ query?: string | undefined;
+ orderBy?: string | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const ListIntegrationsRequest$outboundSchema: z.ZodType<
+ ListIntegrationsRequest$Outbound,
+ z.ZodTypeDef,
+ ListIntegrationsRequest
+> = z.object({
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ListIntegrationsRequest$ {
+ /** @deprecated use `ListIntegrationsRequest$inboundSchema` instead. */
+ export const inboundSchema = ListIntegrationsRequest$inboundSchema;
+ /** @deprecated use `ListIntegrationsRequest$outboundSchema` instead. */
+ export const outboundSchema = ListIntegrationsRequest$outboundSchema;
+ /** @deprecated use `ListIntegrationsRequest$Outbound` instead. */
+ export type Outbound = ListIntegrationsRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/listpulloperations.ts b/platform/src/sdk/models/operations/listpulloperations.ts
index f014b4d9d..ee2a15aa9 100644
--- a/platform/src/sdk/models/operations/listpulloperations.ts
+++ b/platform/src/sdk/models/operations/listpulloperations.ts
@@ -2,70 +2,75 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class ListPullOperationsRequest extends SpeakeasyBase {
+export type ListPullOperationsRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
- /**
- * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
- */
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=orderBy" })
- orderBy?: string;
-
/**
* Page number. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=page" })
- page?: number;
-
+ page?: number | undefined;
/**
* Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=pageSize" })
- pageSize?: number;
-
+ pageSize?: number | undefined;
/**
* Codat query string. [Read more](https://docs.codat.io/using-the-api/querying).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=query" })
- query?: string;
-}
-
-export class ListPullOperationsResponse extends SpeakeasyBase {
+ query?: string | undefined;
/**
- * HTTP response content type for this operation
+ * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
*/
- @SpeakeasyMetadata()
- contentType: string;
+ orderBy?: string | undefined;
+};
- /**
- * Your `query` parameter was not correctly formed
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export const ListPullOperationsRequest$inboundSchema: z.ZodType<
+ ListPullOperationsRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * OK
- */
- @SpeakeasyMetadata()
- pullOperations?: shared.PullOperations;
+/** @internal */
+export type ListPullOperationsRequest$Outbound = {
+ companyId: string;
+ page: number;
+ pageSize: number;
+ query?: string | undefined;
+ orderBy?: string | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const ListPullOperationsRequest$outboundSchema: z.ZodType<
+ ListPullOperationsRequest$Outbound,
+ z.ZodTypeDef,
+ ListPullOperationsRequest
+> = z.object({
+ companyId: z.string(),
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ListPullOperationsRequest$ {
+ /** @deprecated use `ListPullOperationsRequest$inboundSchema` instead. */
+ export const inboundSchema = ListPullOperationsRequest$inboundSchema;
+ /** @deprecated use `ListPullOperationsRequest$outboundSchema` instead. */
+ export const outboundSchema = ListPullOperationsRequest$outboundSchema;
+ /** @deprecated use `ListPullOperationsRequest$Outbound` instead. */
+ export type Outbound = ListPullOperationsRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/listrules.ts b/platform/src/sdk/models/operations/listrules.ts
index 4ee606610..ab9f6ee0d 100644
--- a/platform/src/sdk/models/operations/listrules.ts
+++ b/platform/src/sdk/models/operations/listrules.ts
@@ -2,64 +2,65 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class ListRulesRequest extends SpeakeasyBase {
- /**
- * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
- */
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=orderBy" })
- orderBy?: string;
+import * as z from "zod";
+export type ListRulesRequest = {
/**
* Page number. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=page" })
- page?: number;
-
+ page?: number | undefined;
/**
* Number of records to return in a page. [Read more](https://docs.codat.io/using-the-api/paging).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=pageSize" })
- pageSize?: number;
-
+ pageSize?: number | undefined;
/**
* Codat query string. [Read more](https://docs.codat.io/using-the-api/querying).
*/
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=query" })
- query?: string;
-}
-
-export class ListRulesResponse extends SpeakeasyBase {
+ query?: string | undefined;
/**
- * HTTP response content type for this operation
+ * Field to order results by. [Read more](https://docs.codat.io/using-the-api/ordering-results).
*/
- @SpeakeasyMetadata()
- contentType: string;
+ orderBy?: string | undefined;
+};
- /**
- * Your `query` parameter was not correctly formed
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export const ListRulesRequest$inboundSchema: z.ZodType =
+ z.object({
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+ });
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export type ListRulesRequest$Outbound = {
+ page: number;
+ pageSize: number;
+ query?: string | undefined;
+ orderBy?: string | undefined;
+};
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/** @internal */
+export const ListRulesRequest$outboundSchema: z.ZodType<
+ ListRulesRequest$Outbound,
+ z.ZodTypeDef,
+ ListRulesRequest
+> = z.object({
+ page: z.number().int().default(1),
+ pageSize: z.number().int().default(100),
+ query: z.string().optional(),
+ orderBy: z.string().optional(),
+});
- /**
- * OK
- */
- @SpeakeasyMetadata()
- webhooks?: shared.Webhooks;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ListRulesRequest$ {
+ /** @deprecated use `ListRulesRequest$inboundSchema` instead. */
+ export const inboundSchema = ListRulesRequest$inboundSchema;
+ /** @deprecated use `ListRulesRequest$outboundSchema` instead. */
+ export const outboundSchema = ListRulesRequest$outboundSchema;
+ /** @deprecated use `ListRulesRequest$Outbound` instead. */
+ export type Outbound = ListRulesRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/listwebhookconsumers.ts b/platform/src/sdk/models/operations/listwebhookconsumers.ts
deleted file mode 100644
index 2469bf949..000000000
--- a/platform/src/sdk/models/operations/listwebhookconsumers.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class ListWebhookConsumersResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * The request made is not valid.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- webhookConsumers?: shared.WebhookConsumers;
-}
diff --git a/platform/src/sdk/models/operations/refreshcompanydata.ts b/platform/src/sdk/models/operations/refreshcompanydata.ts
index 0e5e27072..3d1c31f73 100644
--- a/platform/src/sdk/models/operations/refreshcompanydata.ts
+++ b/platform/src/sdk/models/operations/refreshcompanydata.ts
@@ -2,40 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class RefreshCompanyDataRequest extends SpeakeasyBase {
+export type RefreshCompanyDataRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
+};
-export class RefreshCompanyDataResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const RefreshCompanyDataRequest$inboundSchema: z.ZodType<
+ RefreshCompanyDataRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type RefreshCompanyDataRequest$Outbound = {
+ companyId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const RefreshCompanyDataRequest$outboundSchema: z.ZodType<
+ RefreshCompanyDataRequest$Outbound,
+ z.ZodTypeDef,
+ RefreshCompanyDataRequest
+> = z.object({
+ companyId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace RefreshCompanyDataRequest$ {
+ /** @deprecated use `RefreshCompanyDataRequest$inboundSchema` instead. */
+ export const inboundSchema = RefreshCompanyDataRequest$inboundSchema;
+ /** @deprecated use `RefreshCompanyDataRequest$outboundSchema` instead. */
+ export const outboundSchema = RefreshCompanyDataRequest$outboundSchema;
+ /** @deprecated use `RefreshCompanyDataRequest$Outbound` instead. */
+ export type Outbound = RefreshCompanyDataRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/refreshcustomdatatype.ts b/platform/src/sdk/models/operations/refreshcustomdatatype.ts
index 6233454c0..25e6b49da 100644
--- a/platform/src/sdk/models/operations/refreshcustomdatatype.ts
+++ b/platform/src/sdk/models/operations/refreshcustomdatatype.ts
@@ -2,58 +2,61 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class RefreshCustomDataTypeRequest extends SpeakeasyBase {
+export type RefreshCustomDataTypeRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for a connection.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=connectionId" })
connectionId: string;
-
/**
* Unique identifier for a custom data type.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=customDataIdentifier" })
customDataIdentifier: string;
-}
-
-export class RefreshCustomDataTypeResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- pullOperation?: shared.PullOperation;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+};
+
+/** @internal */
+export const RefreshCustomDataTypeRequest$inboundSchema: z.ZodType<
+ RefreshCustomDataTypeRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ customDataIdentifier: z.string(),
+});
+
+/** @internal */
+export type RefreshCustomDataTypeRequest$Outbound = {
+ companyId: string;
+ connectionId: string;
+ customDataIdentifier: string;
+};
+
+/** @internal */
+export const RefreshCustomDataTypeRequest$outboundSchema: z.ZodType<
+ RefreshCustomDataTypeRequest$Outbound,
+ z.ZodTypeDef,
+ RefreshCustomDataTypeRequest
+> = z.object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ customDataIdentifier: z.string(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace RefreshCustomDataTypeRequest$ {
+ /** @deprecated use `RefreshCustomDataTypeRequest$inboundSchema` instead. */
+ export const inboundSchema = RefreshCustomDataTypeRequest$inboundSchema;
+ /** @deprecated use `RefreshCustomDataTypeRequest$outboundSchema` instead. */
+ export const outboundSchema = RefreshCustomDataTypeRequest$outboundSchema;
+ /** @deprecated use `RefreshCustomDataTypeRequest$Outbound` instead. */
+ export type Outbound = RefreshCustomDataTypeRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/refreshdatatype.ts b/platform/src/sdk/models/operations/refreshdatatype.ts
index d3dc48909..80421551d 100644
--- a/platform/src/sdk/models/operations/refreshdatatype.ts
+++ b/platform/src/sdk/models/operations/refreshdatatype.ts
@@ -2,58 +2,62 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as shared from "../shared/index.js";
+import * as z from "zod";
-export class RefreshDataTypeRequest extends SpeakeasyBase {
+export type RefreshDataTypeRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
- /**
- * Optionally, provide a data connection id to only queue pull operations on that connection.
- */
- @SpeakeasyMetadata({ data: "queryParam, style=form;explode=true;name=connectionId" })
- connectionId?: string;
-
/**
* The key of a Codat data type
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=dataType" })
- dataType: shared.SchemaDataType;
-}
-
-export class RefreshDataTypeResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- pullOperation?: shared.PullOperation;
-
+ dataType: shared.DataType;
/**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
+ * Optionally, provide a data connection id to only queue pull operations on that connection.
*/
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+ connectionId?: string | undefined;
+};
+
+/** @internal */
+export const RefreshDataTypeRequest$inboundSchema: z.ZodType<
+ RefreshDataTypeRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ dataType: shared.DataType$inboundSchema,
+ connectionId: z.string().optional(),
+});
+
+/** @internal */
+export type RefreshDataTypeRequest$Outbound = {
+ companyId: string;
+ dataType: string;
+ connectionId?: string | undefined;
+};
+
+/** @internal */
+export const RefreshDataTypeRequest$outboundSchema: z.ZodType<
+ RefreshDataTypeRequest$Outbound,
+ z.ZodTypeDef,
+ RefreshDataTypeRequest
+> = z.object({
+ companyId: z.string(),
+ dataType: shared.DataType$outboundSchema,
+ connectionId: z.string().optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace RefreshDataTypeRequest$ {
+ /** @deprecated use `RefreshDataTypeRequest$inboundSchema` instead. */
+ export const inboundSchema = RefreshDataTypeRequest$inboundSchema;
+ /** @deprecated use `RefreshDataTypeRequest$outboundSchema` instead. */
+ export const outboundSchema = RefreshDataTypeRequest$outboundSchema;
+ /** @deprecated use `RefreshDataTypeRequest$Outbound` instead. */
+ export type Outbound = RefreshDataTypeRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/removecompanyfromgroup.ts b/platform/src/sdk/models/operations/removecompanyfromgroup.ts
index 2f41a92f5..6eb7339e2 100644
--- a/platform/src/sdk/models/operations/removecompanyfromgroup.ts
+++ b/platform/src/sdk/models/operations/removecompanyfromgroup.ts
@@ -2,46 +2,54 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
+import * as z from "zod";
-export class RemoveCompanyFromGroupRequest extends SpeakeasyBase {
+export type RemoveCompanyFromGroupRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for the group.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=groupId" })
groupId: string;
-}
+};
-export class RemoveCompanyFromGroupResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const RemoveCompanyFromGroupRequest$inboundSchema: z.ZodType<
+ RemoveCompanyFromGroupRequest,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ companyId: z.string(),
+ groupId: z.string(),
+});
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type RemoveCompanyFromGroupRequest$Outbound = {
+ companyId: string;
+ groupId: string;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const RemoveCompanyFromGroupRequest$outboundSchema: z.ZodType<
+ RemoveCompanyFromGroupRequest$Outbound,
+ z.ZodTypeDef,
+ RemoveCompanyFromGroupRequest
+> = z.object({
+ companyId: z.string(),
+ groupId: z.string(),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace RemoveCompanyFromGroupRequest$ {
+ /** @deprecated use `RemoveCompanyFromGroupRequest$inboundSchema` instead. */
+ export const inboundSchema = RemoveCompanyFromGroupRequest$inboundSchema;
+ /** @deprecated use `RemoveCompanyFromGroupRequest$outboundSchema` instead. */
+ export const outboundSchema = RemoveCompanyFromGroupRequest$outboundSchema;
+ /** @deprecated use `RemoveCompanyFromGroupRequest$Outbound` instead. */
+ export type Outbound = RemoveCompanyFromGroupRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/setconnectionmanagementcorssettings.ts b/platform/src/sdk/models/operations/setconnectionmanagementcorssettings.ts
deleted file mode 100644
index c3d898c84..000000000
--- a/platform/src/sdk/models/operations/setconnectionmanagementcorssettings.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class SetConnectionManagementCorsSettingsResponse extends SpeakeasyBase {
- /**
- * Success
- */
- @SpeakeasyMetadata()
- connectionManagementAllowedOrigins?: shared.ConnectionManagementAllowedOrigins;
-
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/unlinkconnection.ts b/platform/src/sdk/models/operations/unlinkconnection.ts
index 7574946ea..658c85a28 100644
--- a/platform/src/sdk/models/operations/unlinkconnection.ts
+++ b/platform/src/sdk/models/operations/unlinkconnection.ts
@@ -2,55 +2,72 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class UnlinkConnectionRequest extends SpeakeasyBase {
- @SpeakeasyMetadata({ data: "request, media_type=application/json" })
- updateConnectionStatus?: shared.UpdateConnectionStatus;
+import { remap as remap$ } from "../../../lib/primitives.js";
+import * as shared from "../shared/index.js";
+import * as z from "zod";
+export type UnlinkConnectionRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for a connection.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=connectionId" })
connectionId: string;
-}
+ updateConnectionStatus?: shared.UpdateConnectionStatus | undefined;
+};
-export class UnlinkConnectionResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- connection?: shared.Connection;
+/** @internal */
+export const UnlinkConnectionRequest$inboundSchema: z.ZodType<
+ UnlinkConnectionRequest,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ UpdateConnectionStatus: shared.UpdateConnectionStatus$inboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ UpdateConnectionStatus: "updateConnectionStatus",
+ });
+ });
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type UnlinkConnectionRequest$Outbound = {
+ companyId: string;
+ connectionId: string;
+ UpdateConnectionStatus?: shared.UpdateConnectionStatus$Outbound | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const UnlinkConnectionRequest$outboundSchema: z.ZodType<
+ UnlinkConnectionRequest$Outbound,
+ z.ZodTypeDef,
+ UnlinkConnectionRequest
+> = z
+ .object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ updateConnectionStatus: shared.UpdateConnectionStatus$outboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ updateConnectionStatus: "UpdateConnectionStatus",
+ });
+ });
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace UnlinkConnectionRequest$ {
+ /** @deprecated use `UnlinkConnectionRequest$inboundSchema` instead. */
+ export const inboundSchema = UnlinkConnectionRequest$inboundSchema;
+ /** @deprecated use `UnlinkConnectionRequest$outboundSchema` instead. */
+ export const outboundSchema = UnlinkConnectionRequest$outboundSchema;
+ /** @deprecated use `UnlinkConnectionRequest$Outbound` instead. */
+ export type Outbound = UnlinkConnectionRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/updatecompany.ts b/platform/src/sdk/models/operations/updatecompany.ts
index 5e9c5b28e..813b0e229 100644
--- a/platform/src/sdk/models/operations/updatecompany.ts
+++ b/platform/src/sdk/models/operations/updatecompany.ts
@@ -2,49 +2,65 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class UpdateCompanyRequest extends SpeakeasyBase {
- @SpeakeasyMetadata({ data: "request, media_type=application/json" })
- companyRequestBody?: shared.CompanyRequestBody;
+import { remap as remap$ } from "../../../lib/primitives.js";
+import * as shared from "../shared/index.js";
+import * as z from "zod";
+export type UpdateCompanyRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-}
-
-export class UpdateCompanyResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- company?: shared.Company;
+ companyRequestBody?: shared.CompanyRequestBody | undefined;
+};
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const UpdateCompanyRequest$inboundSchema: z.ZodType<
+ UpdateCompanyRequest,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ companyId: z.string(),
+ CompanyRequestBody: shared.CompanyRequestBody$inboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ CompanyRequestBody: "companyRequestBody",
+ });
+ });
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type UpdateCompanyRequest$Outbound = {
+ companyId: string;
+ CompanyRequestBody?: shared.CompanyRequestBody$Outbound | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const UpdateCompanyRequest$outboundSchema: z.ZodType<
+ UpdateCompanyRequest$Outbound,
+ z.ZodTypeDef,
+ UpdateCompanyRequest
+> = z
+ .object({
+ companyId: z.string(),
+ companyRequestBody: shared.CompanyRequestBody$outboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ companyRequestBody: "CompanyRequestBody",
+ });
+ });
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace UpdateCompanyRequest$ {
+ /** @deprecated use `UpdateCompanyRequest$inboundSchema` instead. */
+ export const inboundSchema = UpdateCompanyRequest$inboundSchema;
+ /** @deprecated use `UpdateCompanyRequest$outboundSchema` instead. */
+ export const outboundSchema = UpdateCompanyRequest$outboundSchema;
+ /** @deprecated use `UpdateCompanyRequest$Outbound` instead. */
+ export type Outbound = UpdateCompanyRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/updateconnectionauthorization.ts b/platform/src/sdk/models/operations/updateconnectionauthorization.ts
index 66ea042fb..b1864ad6e 100644
--- a/platform/src/sdk/models/operations/updateconnectionauthorization.ts
+++ b/platform/src/sdk/models/operations/updateconnectionauthorization.ts
@@ -2,55 +2,71 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class UpdateConnectionAuthorizationRequest extends SpeakeasyBase {
- @SpeakeasyMetadata({ data: "request, media_type=application/json" })
- requestBody?: Record;
+import { remap as remap$ } from "../../../lib/primitives.js";
+import * as z from "zod";
+export type UpdateConnectionAuthorizationRequest = {
/**
* Unique identifier for a company.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=companyId" })
companyId: string;
-
/**
* Unique identifier for a connection.
*/
- @SpeakeasyMetadata({ data: "pathParam, style=simple;explode=false;name=connectionId" })
connectionId: string;
-}
+ requestBody?: { [k: string]: string } | undefined;
+};
-export class UpdateConnectionAuthorizationResponse extends SpeakeasyBase {
- /**
- * OK
- */
- @SpeakeasyMetadata()
- connection?: shared.Connection;
+/** @internal */
+export const UpdateConnectionAuthorizationRequest$inboundSchema: z.ZodType<
+ UpdateConnectionAuthorizationRequest,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ RequestBody: z.record(z.string()).optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ RequestBody: "requestBody",
+ });
+ });
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type UpdateConnectionAuthorizationRequest$Outbound = {
+ companyId: string;
+ connectionId: string;
+ RequestBody?: { [k: string]: string } | undefined;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const UpdateConnectionAuthorizationRequest$outboundSchema: z.ZodType<
+ UpdateConnectionAuthorizationRequest$Outbound,
+ z.ZodTypeDef,
+ UpdateConnectionAuthorizationRequest
+> = z
+ .object({
+ companyId: z.string(),
+ connectionId: z.string(),
+ requestBody: z.record(z.string()).optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ requestBody: "RequestBody",
+ });
+ });
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace UpdateConnectionAuthorizationRequest$ {
+ /** @deprecated use `UpdateConnectionAuthorizationRequest$inboundSchema` instead. */
+ export const inboundSchema = UpdateConnectionAuthorizationRequest$inboundSchema;
+ /** @deprecated use `UpdateConnectionAuthorizationRequest$outboundSchema` instead. */
+ export const outboundSchema = UpdateConnectionAuthorizationRequest$outboundSchema;
+ /** @deprecated use `UpdateConnectionAuthorizationRequest$Outbound` instead. */
+ export type Outbound = UpdateConnectionAuthorizationRequest$Outbound;
}
diff --git a/platform/src/sdk/models/operations/updateprofile.ts b/platform/src/sdk/models/operations/updateprofile.ts
deleted file mode 100644
index ce9cf8e3b..000000000
--- a/platform/src/sdk/models/operations/updateprofile.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
- */
-
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-
-export class UpdateProfileResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
-
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
-
- /**
- * OK
- */
- @SpeakeasyMetadata()
- profile?: shared.Profile;
-
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
-
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
-}
diff --git a/platform/src/sdk/models/operations/updateprofilesyncsettings.ts b/platform/src/sdk/models/operations/updateprofilesyncsettings.ts
index 0c1ebd3af..850f8fc47 100644
--- a/platform/src/sdk/models/operations/updateprofilesyncsettings.ts
+++ b/platform/src/sdk/models/operations/updateprofilesyncsettings.ts
@@ -2,10 +2,8 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import * as shared from "../../../sdk/models/shared";
-import { AxiosResponse } from "axios";
-import { Expose, Type } from "class-transformer";
+import * as shared from "../shared/index.js";
+import * as z from "zod";
/**
* Include a `syncSetting` object for each data type.
@@ -13,49 +11,56 @@ import { Expose, Type } from "class-transformer";
* @remarks
* `syncFromWindow`, `syncFromUTC` & `monthsToSync` only need to be included if you wish to set a value for them.
*/
-export class UpdateProfileSyncSettingsRequestBody extends SpeakeasyBase {
+export type UpdateProfileSyncSettingsRequestBody = {
/**
* Unique identifier for your client in Codat.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "clientId" })
clientId: string;
-
+ settings: Array;
/**
* Set to `True` if you want to override default [sync settings](https://docs.codat.io/knowledge-base/advanced-sync-settings).
*/
- @SpeakeasyMetadata()
- @Expose({ name: "overridesDefaults" })
- overridesDefaults: boolean;
-
- @SpeakeasyMetadata({ elemType: shared.SyncSetting })
- @Expose({ name: "settings" })
- @Type(() => shared.SyncSetting)
- settings: shared.SyncSetting[];
-}
+ overridesDefaults?: boolean | undefined;
+};
-export class UpdateProfileSyncSettingsResponse extends SpeakeasyBase {
- /**
- * HTTP response content type for this operation
- */
- @SpeakeasyMetadata()
- contentType: string;
+/** @internal */
+export const UpdateProfileSyncSettingsRequestBody$inboundSchema: z.ZodType<
+ UpdateProfileSyncSettingsRequestBody,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ clientId: z.string(),
+ settings: z.array(shared.SyncSetting$inboundSchema),
+ overridesDefaults: z.boolean().default(true),
+});
- /**
- * Your API request was not properly authorized.
- */
- @SpeakeasyMetadata()
- errorMessage?: shared.ErrorMessage;
+/** @internal */
+export type UpdateProfileSyncSettingsRequestBody$Outbound = {
+ clientId: string;
+ settings: Array;
+ overridesDefaults: boolean;
+};
- /**
- * HTTP response status code for this operation
- */
- @SpeakeasyMetadata()
- statusCode: number;
+/** @internal */
+export const UpdateProfileSyncSettingsRequestBody$outboundSchema: z.ZodType<
+ UpdateProfileSyncSettingsRequestBody$Outbound,
+ z.ZodTypeDef,
+ UpdateProfileSyncSettingsRequestBody
+> = z.object({
+ clientId: z.string(),
+ settings: z.array(shared.SyncSetting$outboundSchema),
+ overridesDefaults: z.boolean().default(true),
+});
- /**
- * Raw HTTP response; suitable for custom response parsing
- */
- @SpeakeasyMetadata()
- rawResponse: AxiosResponse;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace UpdateProfileSyncSettingsRequestBody$ {
+ /** @deprecated use `UpdateProfileSyncSettingsRequestBody$inboundSchema` instead. */
+ export const inboundSchema = UpdateProfileSyncSettingsRequestBody$inboundSchema;
+ /** @deprecated use `UpdateProfileSyncSettingsRequestBody$outboundSchema` instead. */
+ export const outboundSchema = UpdateProfileSyncSettingsRequestBody$outboundSchema;
+ /** @deprecated use `UpdateProfileSyncSettingsRequestBody$Outbound` instead. */
+ export type Outbound = UpdateProfileSyncSettingsRequestBody$Outbound;
}
diff --git a/platform/src/sdk/models/shared/apikeydetails.ts b/platform/src/sdk/models/shared/apikeydetails.ts
index 0cc44b84f..74753588c 100644
--- a/platform/src/sdk/models/shared/apikeydetails.ts
+++ b/platform/src/sdk/models/shared/apikeydetails.ts
@@ -2,20 +2,24 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Expose } from "class-transformer";
+import * as z from "zod";
/**
* Details of the API key.
*/
-export class ApiKeyDetails extends SpeakeasyBase {
+export type ApiKeyDetails = {
+ /**
+ * Unique identifier for the API key.
+ */
+ id?: string | undefined;
+ /**
+ * A meaningful name assigned to the API key.
+ */
+ name?: string | null | undefined;
/**
* The API key value used to make authenticated http requests.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "apiKey" })
- apiKey?: string;
-
+ apiKey?: string | undefined;
/**
* In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
*
@@ -39,21 +43,47 @@ export class ApiKeyDetails extends SpeakeasyBase {
* > Not all dates from Codat will contain information about time zones.
* > Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "createdDate" })
- createdDate?: string;
+ createdDate?: string | undefined;
+};
- /**
- * Unique identifier for the API key.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "id" })
- id?: string;
+/** @internal */
+export const ApiKeyDetails$inboundSchema: z.ZodType =
+ z.object({
+ id: z.string().optional(),
+ name: z.nullable(z.string()).optional(),
+ apiKey: z.string().optional(),
+ createdDate: z.string().optional(),
+ });
- /**
- * A meaningful name assigned to the API key.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "name" })
- name?: string;
+/** @internal */
+export type ApiKeyDetails$Outbound = {
+ id?: string | undefined;
+ name?: string | null | undefined;
+ apiKey?: string | undefined;
+ createdDate?: string | undefined;
+};
+
+/** @internal */
+export const ApiKeyDetails$outboundSchema: z.ZodType<
+ ApiKeyDetails$Outbound,
+ z.ZodTypeDef,
+ ApiKeyDetails
+> = z.object({
+ id: z.string().optional(),
+ name: z.nullable(z.string()).optional(),
+ apiKey: z.string().optional(),
+ createdDate: z.string().optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ApiKeyDetails$ {
+ /** @deprecated use `ApiKeyDetails$inboundSchema` instead. */
+ export const inboundSchema = ApiKeyDetails$inboundSchema;
+ /** @deprecated use `ApiKeyDetails$outboundSchema` instead. */
+ export const outboundSchema = ApiKeyDetails$outboundSchema;
+ /** @deprecated use `ApiKeyDetails$Outbound` instead. */
+ export type Outbound = ApiKeyDetails$Outbound;
}
diff --git a/platform/src/sdk/models/shared/apikeys.ts b/platform/src/sdk/models/shared/apikeys.ts
index 4677a658e..0c3fb46f0 100644
--- a/platform/src/sdk/models/shared/apikeys.ts
+++ b/platform/src/sdk/models/shared/apikeys.ts
@@ -2,13 +2,42 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { ApiKeyDetails } from "./apikeydetails";
-import { Expose, Type } from "class-transformer";
-
-export class ApiKeys extends SpeakeasyBase {
- @SpeakeasyMetadata({ elemType: ApiKeyDetails })
- @Expose({ name: "results" })
- @Type(() => ApiKeyDetails)
- results?: ApiKeyDetails[];
+import {
+ ApiKeyDetails,
+ ApiKeyDetails$inboundSchema,
+ ApiKeyDetails$Outbound,
+ ApiKeyDetails$outboundSchema,
+} from "./apikeydetails.js";
+import * as z from "zod";
+
+export type ApiKeys = {
+ results?: Array | undefined;
+};
+
+/** @internal */
+export const ApiKeys$inboundSchema: z.ZodType = z.object({
+ results: z.array(ApiKeyDetails$inboundSchema).optional(),
+});
+
+/** @internal */
+export type ApiKeys$Outbound = {
+ results?: Array | undefined;
+};
+
+/** @internal */
+export const ApiKeys$outboundSchema: z.ZodType = z.object({
+ results: z.array(ApiKeyDetails$outboundSchema).optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ApiKeys$ {
+ /** @deprecated use `ApiKeys$inboundSchema` instead. */
+ export const inboundSchema = ApiKeys$inboundSchema;
+ /** @deprecated use `ApiKeys$outboundSchema` instead. */
+ export const outboundSchema = ApiKeys$outboundSchema;
+ /** @deprecated use `ApiKeys$Outbound` instead. */
+ export type Outbound = ApiKeys$Outbound;
}
diff --git a/platform/src/sdk/models/shared/branding.ts b/platform/src/sdk/models/shared/branding.ts
index aa821b859..c2251e184 100644
--- a/platform/src/sdk/models/shared/branding.ts
+++ b/platform/src/sdk/models/shared/branding.ts
@@ -2,32 +2,66 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { BrandingButton } from "./brandingbutton";
-import { BrandingLogo } from "./brandinglogo";
-import { Expose, Type } from "class-transformer";
+import {
+ BrandingButton,
+ BrandingButton$inboundSchema,
+ BrandingButton$Outbound,
+ BrandingButton$outboundSchema,
+} from "./brandingbutton.js";
+import {
+ BrandingLogo,
+ BrandingLogo$inboundSchema,
+ BrandingLogo$Outbound,
+ BrandingLogo$outboundSchema,
+} from "./brandinglogo.js";
+import * as z from "zod";
-export class Branding extends SpeakeasyBase {
+export type Branding = {
/**
- * Button branding references.
+ * Logo branding references.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "button" })
- @Type(() => BrandingButton)
- button?: BrandingButton;
-
+ logo?: BrandingLogo | undefined;
/**
- * Logo branding references.
+ * Button branding references.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "logo" })
- @Type(() => BrandingLogo)
- logo?: BrandingLogo;
-
+ button?: BrandingButton | undefined;
/**
* A source-specific ID used to distinguish between different sources originating from the same data connection. In general, a data connection is a single data source. However, for TrueLayer, `sourceId` is associated with a specific bank and has a many-to-one relationship with the `integrationId`.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "sourceId" })
- sourceId?: string;
+ sourceId?: string | undefined;
+};
+
+/** @internal */
+export const Branding$inboundSchema: z.ZodType = z.object({
+ logo: BrandingLogo$inboundSchema.optional(),
+ button: BrandingButton$inboundSchema.optional(),
+ sourceId: z.string().optional(),
+});
+
+/** @internal */
+export type Branding$Outbound = {
+ logo?: BrandingLogo$Outbound | undefined;
+ button?: BrandingButton$Outbound | undefined;
+ sourceId?: string | undefined;
+};
+
+/** @internal */
+export const Branding$outboundSchema: z.ZodType =
+ z.object({
+ logo: BrandingLogo$outboundSchema.optional(),
+ button: BrandingButton$outboundSchema.optional(),
+ sourceId: z.string().optional(),
+ });
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace Branding$ {
+ /** @deprecated use `Branding$inboundSchema` instead. */
+ export const inboundSchema = Branding$inboundSchema;
+ /** @deprecated use `Branding$outboundSchema` instead. */
+ export const outboundSchema = Branding$outboundSchema;
+ /** @deprecated use `Branding$Outbound` instead. */
+ export type Outbound = Branding$Outbound;
}
diff --git a/platform/src/sdk/models/shared/brandingbutton.ts b/platform/src/sdk/models/shared/brandingbutton.ts
index d90eac96c..d0abaca99 100644
--- a/platform/src/sdk/models/shared/brandingbutton.ts
+++ b/platform/src/sdk/models/shared/brandingbutton.ts
@@ -2,21 +2,54 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { BrandingImage } from "./brandingimage";
-import { Expose, Type } from "class-transformer";
+import {
+ BrandingImage,
+ BrandingImage$inboundSchema,
+ BrandingImage$Outbound,
+ BrandingImage$outboundSchema,
+} from "./brandingimage.js";
+import * as z from "zod";
/**
* Button branding references.
*/
-export class BrandingButton extends SpeakeasyBase {
- @SpeakeasyMetadata()
- @Expose({ name: "default" })
- @Type(() => BrandingImage)
- default?: BrandingImage;
+export type BrandingButton = {
+ default?: BrandingImage | undefined;
+ hover?: BrandingImage | undefined;
+};
- @SpeakeasyMetadata()
- @Expose({ name: "hover" })
- @Type(() => BrandingImage)
- hover?: BrandingImage;
+/** @internal */
+export const BrandingButton$inboundSchema: z.ZodType =
+ z.object({
+ default: BrandingImage$inboundSchema.optional(),
+ hover: BrandingImage$inboundSchema.optional(),
+ });
+
+/** @internal */
+export type BrandingButton$Outbound = {
+ default?: BrandingImage$Outbound | undefined;
+ hover?: BrandingImage$Outbound | undefined;
+};
+
+/** @internal */
+export const BrandingButton$outboundSchema: z.ZodType<
+ BrandingButton$Outbound,
+ z.ZodTypeDef,
+ BrandingButton
+> = z.object({
+ default: BrandingImage$outboundSchema.optional(),
+ hover: BrandingImage$outboundSchema.optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace BrandingButton$ {
+ /** @deprecated use `BrandingButton$inboundSchema` instead. */
+ export const inboundSchema = BrandingButton$inboundSchema;
+ /** @deprecated use `BrandingButton$outboundSchema` instead. */
+ export const outboundSchema = BrandingButton$outboundSchema;
+ /** @deprecated use `BrandingButton$Outbound` instead. */
+ export type Outbound = BrandingButton$Outbound;
}
diff --git a/platform/src/sdk/models/shared/brandingimage.ts b/platform/src/sdk/models/shared/brandingimage.ts
index 36c909a88..a58c0a4e4 100644
--- a/platform/src/sdk/models/shared/brandingimage.ts
+++ b/platform/src/sdk/models/shared/brandingimage.ts
@@ -2,16 +2,50 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { ImageReference } from "./imagereference";
-import { Expose, Type } from "class-transformer";
+import {
+ ImageReference,
+ ImageReference$inboundSchema,
+ ImageReference$Outbound,
+ ImageReference$outboundSchema,
+} from "./imagereference.js";
+import * as z from "zod";
-export class BrandingImage extends SpeakeasyBase {
+export type BrandingImage = {
/**
* Image reference.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "image" })
- @Type(() => ImageReference)
- image?: ImageReference;
+ image?: ImageReference | undefined;
+};
+
+/** @internal */
+export const BrandingImage$inboundSchema: z.ZodType =
+ z.object({
+ image: ImageReference$inboundSchema.optional(),
+ });
+
+/** @internal */
+export type BrandingImage$Outbound = {
+ image?: ImageReference$Outbound | undefined;
+};
+
+/** @internal */
+export const BrandingImage$outboundSchema: z.ZodType<
+ BrandingImage$Outbound,
+ z.ZodTypeDef,
+ BrandingImage
+> = z.object({
+ image: ImageReference$outboundSchema.optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace BrandingImage$ {
+ /** @deprecated use `BrandingImage$inboundSchema` instead. */
+ export const inboundSchema = BrandingImage$inboundSchema;
+ /** @deprecated use `BrandingImage$outboundSchema` instead. */
+ export const outboundSchema = BrandingImage$outboundSchema;
+ /** @deprecated use `BrandingImage$Outbound` instead. */
+ export type Outbound = BrandingImage$Outbound;
}
diff --git a/platform/src/sdk/models/shared/brandinglogo.ts b/platform/src/sdk/models/shared/brandinglogo.ts
index e5f06089a..e76fe562c 100644
--- a/platform/src/sdk/models/shared/brandinglogo.ts
+++ b/platform/src/sdk/models/shared/brandinglogo.ts
@@ -2,21 +2,53 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { BrandingImage } from "./brandingimage";
-import { Expose, Type } from "class-transformer";
+import {
+ BrandingImage,
+ BrandingImage$inboundSchema,
+ BrandingImage$Outbound,
+ BrandingImage$outboundSchema,
+} from "./brandingimage.js";
+import * as z from "zod";
/**
* Logo branding references.
*/
-export class BrandingLogo extends SpeakeasyBase {
- @SpeakeasyMetadata()
- @Expose({ name: "full" })
- @Type(() => BrandingImage)
- full?: BrandingImage;
+export type BrandingLogo = {
+ full?: BrandingImage | undefined;
+ square?: BrandingImage | undefined;
+};
- @SpeakeasyMetadata()
- @Expose({ name: "square" })
- @Type(() => BrandingImage)
- square?: BrandingImage;
+/** @internal */
+export const BrandingLogo$inboundSchema: z.ZodType = z.object({
+ full: BrandingImage$inboundSchema.optional(),
+ square: BrandingImage$inboundSchema.optional(),
+});
+
+/** @internal */
+export type BrandingLogo$Outbound = {
+ full?: BrandingImage$Outbound | undefined;
+ square?: BrandingImage$Outbound | undefined;
+};
+
+/** @internal */
+export const BrandingLogo$outboundSchema: z.ZodType<
+ BrandingLogo$Outbound,
+ z.ZodTypeDef,
+ BrandingLogo
+> = z.object({
+ full: BrandingImage$outboundSchema.optional(),
+ square: BrandingImage$outboundSchema.optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace BrandingLogo$ {
+ /** @deprecated use `BrandingLogo$inboundSchema` instead. */
+ export const inboundSchema = BrandingLogo$inboundSchema;
+ /** @deprecated use `BrandingLogo$outboundSchema` instead. */
+ export const outboundSchema = BrandingLogo$outboundSchema;
+ /** @deprecated use `BrandingLogo$Outbound` instead. */
+ export type Outbound = BrandingLogo$Outbound;
}
diff --git a/platform/src/sdk/models/shared/clientratelimitreachedwebhook.ts b/platform/src/sdk/models/shared/clientratelimitreachedwebhook.ts
index 5319d822b..4e42eaa5a 100644
--- a/platform/src/sdk/models/shared/clientratelimitreachedwebhook.ts
+++ b/platform/src/sdk/models/shared/clientratelimitreachedwebhook.ts
@@ -2,60 +2,122 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { ClientRateLimitReachedWebhookData } from "./clientratelimitreachedwebhookdata";
-import { Expose, Type } from "class-transformer";
+import { remap as remap$ } from "../../../lib/primitives.js";
+import {
+ ClientRateLimitReachedWebhookData,
+ ClientRateLimitReachedWebhookData$inboundSchema,
+ ClientRateLimitReachedWebhookData$Outbound,
+ ClientRateLimitReachedWebhookData$outboundSchema,
+} from "./clientratelimitreachedwebhookdata.js";
+import * as z from "zod";
/**
* Webhook request body for a client that has reached their rate limit.
*/
-export class ClientRateLimitReachedWebhook extends SpeakeasyBase {
- /**
- * Unique identifier of the webhook event.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "AlertId" })
- alertId?: string;
-
+export type ClientRateLimitReachedWebhook = {
/**
* Unique identifier for your client in Codat.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "ClientId" })
- clientId?: string;
-
+ clientId?: string | undefined;
/**
* Name of your client in Codat.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "ClientName" })
- clientName?: string;
-
- @SpeakeasyMetadata()
- @Expose({ name: "Data" })
- @Type(() => ClientRateLimitReachedWebhookData)
- data?: ClientRateLimitReachedWebhookData;
-
- /**
- * A human-readable message about the webhook.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "Message" })
- message?: string;
-
+ clientName?: string | undefined;
/**
* Unique identifier for the rule.
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "RuleId" })
- ruleId?: string;
-
+ ruleId?: string | undefined;
/**
* The type of rule.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "RuleType" })
- ruleType?: string;
+ ruleType?: string | undefined;
+ /**
+ * Unique identifier of the webhook event.
+ */
+ alertId?: string | undefined;
+ /**
+ * A human-readable message about the webhook.
+ */
+ message?: string | undefined;
+ data?: ClientRateLimitReachedWebhookData | undefined;
+};
+
+/** @internal */
+export const ClientRateLimitReachedWebhook$inboundSchema: z.ZodType<
+ ClientRateLimitReachedWebhook,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ ClientId: z.string().optional(),
+ ClientName: z.string().optional(),
+ RuleId: z.string().optional(),
+ RuleType: z.string().optional(),
+ AlertId: z.string().optional(),
+ Message: z.string().optional(),
+ Data: ClientRateLimitReachedWebhookData$inboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ ClientId: "clientId",
+ ClientName: "clientName",
+ RuleId: "ruleId",
+ RuleType: "ruleType",
+ AlertId: "alertId",
+ Message: "message",
+ Data: "data",
+ });
+ });
+
+/** @internal */
+export type ClientRateLimitReachedWebhook$Outbound = {
+ ClientId?: string | undefined;
+ ClientName?: string | undefined;
+ RuleId?: string | undefined;
+ RuleType?: string | undefined;
+ AlertId?: string | undefined;
+ Message?: string | undefined;
+ Data?: ClientRateLimitReachedWebhookData$Outbound | undefined;
+};
+
+/** @internal */
+export const ClientRateLimitReachedWebhook$outboundSchema: z.ZodType<
+ ClientRateLimitReachedWebhook$Outbound,
+ z.ZodTypeDef,
+ ClientRateLimitReachedWebhook
+> = z
+ .object({
+ clientId: z.string().optional(),
+ clientName: z.string().optional(),
+ ruleId: z.string().optional(),
+ ruleType: z.string().optional(),
+ alertId: z.string().optional(),
+ message: z.string().optional(),
+ data: ClientRateLimitReachedWebhookData$outboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ clientId: "ClientId",
+ clientName: "ClientName",
+ ruleId: "RuleId",
+ ruleType: "RuleType",
+ alertId: "AlertId",
+ message: "Message",
+ data: "Data",
+ });
+ });
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ClientRateLimitReachedWebhook$ {
+ /** @deprecated use `ClientRateLimitReachedWebhook$inboundSchema` instead. */
+ export const inboundSchema = ClientRateLimitReachedWebhook$inboundSchema;
+ /** @deprecated use `ClientRateLimitReachedWebhook$outboundSchema` instead. */
+ export const outboundSchema = ClientRateLimitReachedWebhook$outboundSchema;
+ /** @deprecated use `ClientRateLimitReachedWebhook$Outbound` instead. */
+ export type Outbound = ClientRateLimitReachedWebhook$Outbound;
}
diff --git a/platform/src/sdk/models/shared/clientratelimitreachedwebhookdata.ts b/platform/src/sdk/models/shared/clientratelimitreachedwebhookdata.ts
index 4c242c003..247ee7314 100644
--- a/platform/src/sdk/models/shared/clientratelimitreachedwebhookdata.ts
+++ b/platform/src/sdk/models/shared/clientratelimitreachedwebhookdata.ts
@@ -2,17 +2,14 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Expose } from "class-transformer";
+import { remap as remap$ } from "../../../lib/primitives.js";
+import * as z from "zod";
-export class ClientRateLimitReachedWebhookData extends SpeakeasyBase {
+export type ClientRateLimitReachedWebhookData = {
/**
* The number of available requests per day.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "DailyQuota" })
- dailyQuota?: number;
-
+ dailyQuota?: number | undefined;
/**
* In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
*
@@ -36,7 +33,58 @@ export class ClientRateLimitReachedWebhookData extends SpeakeasyBase {
* > Not all dates from Codat will contain information about time zones.
* > Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "ExpiresUtc" })
- expiresUtc?: string;
+ expiresUtc?: string | undefined;
+};
+
+/** @internal */
+export const ClientRateLimitReachedWebhookData$inboundSchema: z.ZodType<
+ ClientRateLimitReachedWebhookData,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ DailyQuota: z.number().int().optional(),
+ ExpiresUtc: z.string().optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ DailyQuota: "dailyQuota",
+ ExpiresUtc: "expiresUtc",
+ });
+ });
+
+/** @internal */
+export type ClientRateLimitReachedWebhookData$Outbound = {
+ DailyQuota?: number | undefined;
+ ExpiresUtc?: string | undefined;
+};
+
+/** @internal */
+export const ClientRateLimitReachedWebhookData$outboundSchema: z.ZodType<
+ ClientRateLimitReachedWebhookData$Outbound,
+ z.ZodTypeDef,
+ ClientRateLimitReachedWebhookData
+> = z
+ .object({
+ dailyQuota: z.number().int().optional(),
+ expiresUtc: z.string().optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ dailyQuota: "DailyQuota",
+ expiresUtc: "ExpiresUtc",
+ });
+ });
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ClientRateLimitReachedWebhookData$ {
+ /** @deprecated use `ClientRateLimitReachedWebhookData$inboundSchema` instead. */
+ export const inboundSchema = ClientRateLimitReachedWebhookData$inboundSchema;
+ /** @deprecated use `ClientRateLimitReachedWebhookData$outboundSchema` instead. */
+ export const outboundSchema = ClientRateLimitReachedWebhookData$outboundSchema;
+ /** @deprecated use `ClientRateLimitReachedWebhookData$Outbound` instead. */
+ export type Outbound = ClientRateLimitReachedWebhookData$Outbound;
}
diff --git a/platform/src/sdk/models/shared/clientratelimitresetwebhook.ts b/platform/src/sdk/models/shared/clientratelimitresetwebhook.ts
index 3d6e7f2a2..cba063b0d 100644
--- a/platform/src/sdk/models/shared/clientratelimitresetwebhook.ts
+++ b/platform/src/sdk/models/shared/clientratelimitresetwebhook.ts
@@ -2,60 +2,122 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { ClientRateLimitResetWebhookData } from "./clientratelimitresetwebhookdata";
-import { Expose, Type } from "class-transformer";
+import { remap as remap$ } from "../../../lib/primitives.js";
+import {
+ ClientRateLimitResetWebhookData,
+ ClientRateLimitResetWebhookData$inboundSchema,
+ ClientRateLimitResetWebhookData$Outbound,
+ ClientRateLimitResetWebhookData$outboundSchema,
+} from "./clientratelimitresetwebhookdata.js";
+import * as z from "zod";
/**
* Webhook request body for a client that has had their rate limit reset.
*/
-export class ClientRateLimitResetWebhook extends SpeakeasyBase {
- /**
- * Unique identifier of the webhook event.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "AlertId" })
- alertId?: string;
-
+export type ClientRateLimitResetWebhook = {
/**
* Unique identifier for your client in Codat.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "ClientId" })
- clientId?: string;
-
+ clientId?: string | undefined;
/**
* Name of your client in Codat.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "ClientName" })
- clientName?: string;
-
- @SpeakeasyMetadata()
- @Expose({ name: "Data" })
- @Type(() => ClientRateLimitResetWebhookData)
- data?: ClientRateLimitResetWebhookData;
-
- /**
- * A human-readable message about the webhook.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "Message" })
- message?: string;
-
+ clientName?: string | undefined;
/**
* Unique identifier for the rule.
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "RuleId" })
- ruleId?: string;
-
+ ruleId?: string | undefined;
/**
* The type of rule.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "RuleType" })
- ruleType?: string;
+ ruleType?: string | undefined;
+ /**
+ * Unique identifier of the webhook event.
+ */
+ alertId?: string | undefined;
+ /**
+ * A human-readable message about the webhook.
+ */
+ message?: string | undefined;
+ data?: ClientRateLimitResetWebhookData | undefined;
+};
+
+/** @internal */
+export const ClientRateLimitResetWebhook$inboundSchema: z.ZodType<
+ ClientRateLimitResetWebhook,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ ClientId: z.string().optional(),
+ ClientName: z.string().optional(),
+ RuleId: z.string().optional(),
+ RuleType: z.string().optional(),
+ AlertId: z.string().optional(),
+ Message: z.string().optional(),
+ Data: ClientRateLimitResetWebhookData$inboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ ClientId: "clientId",
+ ClientName: "clientName",
+ RuleId: "ruleId",
+ RuleType: "ruleType",
+ AlertId: "alertId",
+ Message: "message",
+ Data: "data",
+ });
+ });
+
+/** @internal */
+export type ClientRateLimitResetWebhook$Outbound = {
+ ClientId?: string | undefined;
+ ClientName?: string | undefined;
+ RuleId?: string | undefined;
+ RuleType?: string | undefined;
+ AlertId?: string | undefined;
+ Message?: string | undefined;
+ Data?: ClientRateLimitResetWebhookData$Outbound | undefined;
+};
+
+/** @internal */
+export const ClientRateLimitResetWebhook$outboundSchema: z.ZodType<
+ ClientRateLimitResetWebhook$Outbound,
+ z.ZodTypeDef,
+ ClientRateLimitResetWebhook
+> = z
+ .object({
+ clientId: z.string().optional(),
+ clientName: z.string().optional(),
+ ruleId: z.string().optional(),
+ ruleType: z.string().optional(),
+ alertId: z.string().optional(),
+ message: z.string().optional(),
+ data: ClientRateLimitResetWebhookData$outboundSchema.optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ clientId: "ClientId",
+ clientName: "ClientName",
+ ruleId: "RuleId",
+ ruleType: "RuleType",
+ alertId: "AlertId",
+ message: "Message",
+ data: "Data",
+ });
+ });
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ClientRateLimitResetWebhook$ {
+ /** @deprecated use `ClientRateLimitResetWebhook$inboundSchema` instead. */
+ export const inboundSchema = ClientRateLimitResetWebhook$inboundSchema;
+ /** @deprecated use `ClientRateLimitResetWebhook$outboundSchema` instead. */
+ export const outboundSchema = ClientRateLimitResetWebhook$outboundSchema;
+ /** @deprecated use `ClientRateLimitResetWebhook$Outbound` instead. */
+ export type Outbound = ClientRateLimitResetWebhook$Outbound;
}
diff --git a/platform/src/sdk/models/shared/clientratelimitresetwebhookdata.ts b/platform/src/sdk/models/shared/clientratelimitresetwebhookdata.ts
index beeceba66..2a7444f59 100644
--- a/platform/src/sdk/models/shared/clientratelimitresetwebhookdata.ts
+++ b/platform/src/sdk/models/shared/clientratelimitresetwebhookdata.ts
@@ -2,17 +2,22 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Expose } from "class-transformer";
+import { remap as remap$ } from "../../../lib/primitives.js";
+import * as z from "zod";
-export class ClientRateLimitResetWebhookData extends SpeakeasyBase {
+export type ClientRateLimitResetWebhookData = {
+ /**
+ * Total number of requests remaining for your client.
+ */
+ quotaRemaining?: number | null | undefined;
+ /**
+ * The reason for your rate limit quota being reset.
+ */
+ resetReason?: string | undefined;
/**
* The number of available requests per day.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "DailyQuota" })
- dailyQuota?: number;
-
+ dailyQuota?: number | undefined;
/**
* In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
*
@@ -36,21 +41,68 @@ export class ClientRateLimitResetWebhookData extends SpeakeasyBase {
* > Not all dates from Codat will contain information about time zones.
* > Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "ExpiresUtc" })
- expiresUtc?: string;
+ expiresUtc?: string | undefined;
+};
- /**
- * Total number of requests remaining for your client.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "QuotaRemaining" })
- quotaRemaining?: number;
+/** @internal */
+export const ClientRateLimitResetWebhookData$inboundSchema: z.ZodType<
+ ClientRateLimitResetWebhookData,
+ z.ZodTypeDef,
+ unknown
+> = z
+ .object({
+ QuotaRemaining: z.nullable(z.number().int()).optional(),
+ ResetReason: z.string().optional(),
+ DailyQuota: z.number().int().optional(),
+ ExpiresUtc: z.string().optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ QuotaRemaining: "quotaRemaining",
+ ResetReason: "resetReason",
+ DailyQuota: "dailyQuota",
+ ExpiresUtc: "expiresUtc",
+ });
+ });
- /**
- * The reason for your rate limit quota being reset.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "ResetReason" })
- resetReason?: string;
+/** @internal */
+export type ClientRateLimitResetWebhookData$Outbound = {
+ QuotaRemaining?: number | null | undefined;
+ ResetReason?: string | undefined;
+ DailyQuota?: number | undefined;
+ ExpiresUtc?: string | undefined;
+};
+
+/** @internal */
+export const ClientRateLimitResetWebhookData$outboundSchema: z.ZodType<
+ ClientRateLimitResetWebhookData$Outbound,
+ z.ZodTypeDef,
+ ClientRateLimitResetWebhookData
+> = z
+ .object({
+ quotaRemaining: z.nullable(z.number().int()).optional(),
+ resetReason: z.string().optional(),
+ dailyQuota: z.number().int().optional(),
+ expiresUtc: z.string().optional(),
+ })
+ .transform((v) => {
+ return remap$(v, {
+ quotaRemaining: "QuotaRemaining",
+ resetReason: "ResetReason",
+ dailyQuota: "DailyQuota",
+ expiresUtc: "ExpiresUtc",
+ });
+ });
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ClientRateLimitResetWebhookData$ {
+ /** @deprecated use `ClientRateLimitResetWebhookData$inboundSchema` instead. */
+ export const inboundSchema = ClientRateLimitResetWebhookData$inboundSchema;
+ /** @deprecated use `ClientRateLimitResetWebhookData$outboundSchema` instead. */
+ export const outboundSchema = ClientRateLimitResetWebhookData$outboundSchema;
+ /** @deprecated use `ClientRateLimitResetWebhookData$Outbound` instead. */
+ export type Outbound = ClientRateLimitResetWebhookData$Outbound;
}
diff --git a/platform/src/sdk/models/shared/companies.ts b/platform/src/sdk/models/shared/companies.ts
index b481f0dc2..56aefb9be 100644
--- a/platform/src/sdk/models/shared/companies.ts
+++ b/platform/src/sdk/models/shared/companies.ts
@@ -2,40 +2,81 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Company } from "./company";
-import { Links } from "./links";
-import { Expose, Type } from "class-transformer";
-
-export class Companies extends SpeakeasyBase {
- @SpeakeasyMetadata()
- @Expose({ name: "_links" })
- @Type(() => Links)
- links: Links;
+import { remap as remap$ } from "../../../lib/primitives.js";
+import {
+ Company,
+ Company$inboundSchema,
+ Company$Outbound,
+ Company$outboundSchema,
+} from "./company.js";
+import { Links, Links$inboundSchema, Links$Outbound, Links$outboundSchema } from "./links.js";
+import * as z from "zod";
+export type Companies = {
+ results?: Array | undefined;
/**
* Current page number.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "pageNumber" })
pageNumber: number;
-
/**
* Number of items to return in results array.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "pageSize" })
pageSize: number;
-
- @SpeakeasyMetadata({ elemType: Company })
- @Expose({ name: "results" })
- @Type(() => Company)
- results?: Company[];
-
/**
* Total number of items.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "totalResults" })
totalResults: number;
+ links: Links;
+};
+
+/** @internal */
+export const Companies$inboundSchema: z.ZodType = z
+ .object({
+ results: z.array(Company$inboundSchema).optional(),
+ pageNumber: z.number().int(),
+ pageSize: z.number().int(),
+ totalResults: z.number().int(),
+ _links: Links$inboundSchema,
+ })
+ .transform((v) => {
+ return remap$(v, {
+ _links: "links",
+ });
+ });
+
+/** @internal */
+export type Companies$Outbound = {
+ results?: Array | undefined;
+ pageNumber: number;
+ pageSize: number;
+ totalResults: number;
+ _links: Links$Outbound;
+};
+
+/** @internal */
+export const Companies$outboundSchema: z.ZodType = z
+ .object({
+ results: z.array(Company$outboundSchema).optional(),
+ pageNumber: z.number().int(),
+ pageSize: z.number().int(),
+ totalResults: z.number().int(),
+ links: Links$outboundSchema,
+ })
+ .transform((v) => {
+ return remap$(v, {
+ links: "_links",
+ });
+ });
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace Companies$ {
+ /** @deprecated use `Companies$inboundSchema` instead. */
+ export const inboundSchema = Companies$inboundSchema;
+ /** @deprecated use `Companies$outboundSchema` instead. */
+ export const outboundSchema = Companies$outboundSchema;
+ /** @deprecated use `Companies$Outbound` instead. */
+ export type Outbound = Companies$Outbound;
}
diff --git a/platform/src/sdk/models/shared/company.ts b/platform/src/sdk/models/shared/company.ts
index 4bc3c853e..9fb310685 100644
--- a/platform/src/sdk/models/shared/company.ts
+++ b/platform/src/sdk/models/shared/company.ts
@@ -2,10 +2,19 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Connection } from "./connection";
-import { GroupRef } from "./groupref";
-import { Expose, Type } from "class-transformer";
+import {
+ Connection,
+ Connection$inboundSchema,
+ Connection$Outbound,
+ Connection$outboundSchema,
+} from "./connection.js";
+import {
+ GroupRef,
+ GroupRef$inboundSchema,
+ GroupRef$Outbound,
+ GroupRef$outboundSchema,
+} from "./groupref.js";
+import * as z from "zod";
/**
* In Codat, a company represents a business sharing access to their data. Each company can have multiple [connections](https://docs.codat.io/platform-api#/schemas/Connection) to different data sources such as one connection to [Xero](https://docs.codat.io/integrations/accounting/xero/accounting-xero) for accounting data, two connections to [Plaid](https://docs.codat.io/integrations/banking/plaid/banking-plaid) for two bank accounts and a connection to [Zettle](https://docs.codat.io/integrations/commerce/zettle/commerce-zettle) for POS data.
@@ -16,7 +25,29 @@ import { Expose, Type } from "class-transformer";
*
* When you create a company, you can specify a `name` and we will automatically generate a unique `id` for the company. You can also add a `description` to store any additional information about the company.
*/
-export class Company extends SpeakeasyBase {
+export type Company = {
+ /**
+ * Unique identifier for your SMB in Codat.
+ */
+ id: string;
+ /**
+ * The name of the company
+ */
+ name: string;
+ /**
+ * Additional information about the company. This can be used to store foreign IDs, references, etc.
+ */
+ description?: string | undefined;
+ /**
+ * `platformKeys` name used when creating the company.
+ *
+ * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
+ */
+ platform?: string | undefined;
+ /**
+ * The `redirect` [Link URL](https://docs.codat.io/auth-flow/authorize-hosted-link) enabling the customer to start their auth flow journey for the company.
+ */
+ redirect: string;
/**
* In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
*
@@ -40,44 +71,7 @@ export class Company extends SpeakeasyBase {
* > Not all dates from Codat will contain information about time zones.
* > Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "created" })
- created?: string;
-
- /**
- * Name of user that created the company in Codat.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "createdByUserName" })
- createdByUserName?: string;
-
- @SpeakeasyMetadata({ elemType: Connection })
- @Expose({ name: "dataConnections" })
- @Type(() => Connection)
- dataConnections?: Connection[];
-
- /**
- * Additional information about the company. This can be used to store foreign IDs, references, etc.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "description" })
- description?: string;
-
- /**
- * An array of groups the company has been assigned to.
- */
- @SpeakeasyMetadata({ elemType: GroupRef })
- @Expose({ name: "groups" })
- @Type(() => GroupRef)
- groups?: GroupRef[];
-
- /**
- * Unique identifier for your SMB in Codat.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "id" })
- id: string;
-
+ lastSync?: string | undefined;
/**
* In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
*
@@ -101,30 +95,69 @@ export class Company extends SpeakeasyBase {
* > Not all dates from Codat will contain information about time zones.
* > Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "lastSync" })
- lastSync?: string;
-
+ created?: string | undefined;
/**
- * The name of the company
+ * Name of user that created the company in Codat.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "name" })
- name: string;
-
+ createdByUserName?: string | undefined;
+ dataConnections?: Array | undefined;
/**
- * `platformKeys` name used when creating the company.
- *
- * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
+ * An array of groups the company has been assigned to.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "platform" })
- platform?: string;
+ groups?: Array | undefined;
+};
- /**
- * The `redirect` [Link URL](https://docs.codat.io/auth-flow/authorize-hosted-link) enabling the customer to start their auth flow journey for the company.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "redirect" })
+/** @internal */
+export const Company$inboundSchema: z.ZodType = z.object({
+ id: z.string(),
+ name: z.string(),
+ description: z.string().optional(),
+ platform: z.string().optional(),
+ redirect: z.string(),
+ lastSync: z.string().optional(),
+ created: z.string().optional(),
+ createdByUserName: z.string().optional(),
+ dataConnections: z.array(Connection$inboundSchema).optional(),
+ groups: z.array(GroupRef$inboundSchema).optional(),
+});
+
+/** @internal */
+export type Company$Outbound = {
+ id: string;
+ name: string;
+ description?: string | undefined;
+ platform?: string | undefined;
redirect: string;
+ lastSync?: string | undefined;
+ created?: string | undefined;
+ createdByUserName?: string | undefined;
+ dataConnections?: Array | undefined;
+ groups?: Array | undefined;
+};
+
+/** @internal */
+export const Company$outboundSchema: z.ZodType = z.object({
+ id: z.string(),
+ name: z.string(),
+ description: z.string().optional(),
+ platform: z.string().optional(),
+ redirect: z.string(),
+ lastSync: z.string().optional(),
+ created: z.string().optional(),
+ createdByUserName: z.string().optional(),
+ dataConnections: z.array(Connection$outboundSchema).optional(),
+ groups: z.array(GroupRef$outboundSchema).optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace Company$ {
+ /** @deprecated use `Company$inboundSchema` instead. */
+ export const inboundSchema = Company$inboundSchema;
+ /** @deprecated use `Company$outboundSchema` instead. */
+ export const outboundSchema = Company$outboundSchema;
+ /** @deprecated use `Company$Outbound` instead. */
+ export type Outbound = Company$Outbound;
}
diff --git a/platform/src/sdk/models/shared/companygroupassignment.ts b/platform/src/sdk/models/shared/companygroupassignment.ts
index 05ad50e3e..80721b68f 100644
--- a/platform/src/sdk/models/shared/companygroupassignment.ts
+++ b/platform/src/sdk/models/shared/companygroupassignment.ts
@@ -2,11 +2,44 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Expose } from "class-transformer";
+import * as z from "zod";
-export class CompanyGroupAssignment extends SpeakeasyBase {
- @SpeakeasyMetadata()
- @Expose({ name: "groupId" })
- groupId?: string;
+export type CompanyGroupAssignment = {
+ groupId?: string | undefined;
+};
+
+/** @internal */
+export const CompanyGroupAssignment$inboundSchema: z.ZodType<
+ CompanyGroupAssignment,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ groupId: z.string().optional(),
+});
+
+/** @internal */
+export type CompanyGroupAssignment$Outbound = {
+ groupId?: string | undefined;
+};
+
+/** @internal */
+export const CompanyGroupAssignment$outboundSchema: z.ZodType<
+ CompanyGroupAssignment$Outbound,
+ z.ZodTypeDef,
+ CompanyGroupAssignment
+> = z.object({
+ groupId: z.string().optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace CompanyGroupAssignment$ {
+ /** @deprecated use `CompanyGroupAssignment$inboundSchema` instead. */
+ export const inboundSchema = CompanyGroupAssignment$inboundSchema;
+ /** @deprecated use `CompanyGroupAssignment$outboundSchema` instead. */
+ export const outboundSchema = CompanyGroupAssignment$outboundSchema;
+ /** @deprecated use `CompanyGroupAssignment$Outbound` instead. */
+ export type Outbound = CompanyGroupAssignment$Outbound;
}
diff --git a/platform/src/sdk/models/shared/companyrequestbody.ts b/platform/src/sdk/models/shared/companyrequestbody.ts
index 7742c6f36..c7e5b20be 100644
--- a/platform/src/sdk/models/shared/companyrequestbody.ts
+++ b/platform/src/sdk/models/shared/companyrequestbody.ts
@@ -2,30 +2,67 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { GroupRef } from "./groupref";
-import { Expose, Type } from "class-transformer";
+import {
+ GroupRef,
+ GroupRef$inboundSchema,
+ GroupRef$Outbound,
+ GroupRef$outboundSchema,
+} from "./groupref.js";
+import * as z from "zod";
-export class CompanyRequestBody extends SpeakeasyBase {
+export type CompanyRequestBody = {
+ /**
+ * Name of company being connected.
+ */
+ name: string;
/**
* Additional information about the company. This can be used to store foreign IDs, references, etc.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "description" })
- description?: string;
-
+ description?: string | undefined;
/**
* Reference to the groups that the company is assigned to.
*/
- @SpeakeasyMetadata({ elemType: GroupRef })
- @Expose({ name: "groups" })
- @Type(() => GroupRef)
- groups?: GroupRef[];
+ groups?: Array | undefined;
+};
- /**
- * Name of company being connected.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "name" })
+/** @internal */
+export const CompanyRequestBody$inboundSchema: z.ZodType<
+ CompanyRequestBody,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ name: z.string(),
+ description: z.string().optional(),
+ groups: z.array(GroupRef$inboundSchema).optional(),
+});
+
+/** @internal */
+export type CompanyRequestBody$Outbound = {
name: string;
+ description?: string | undefined;
+ groups?: Array | undefined;
+};
+
+/** @internal */
+export const CompanyRequestBody$outboundSchema: z.ZodType<
+ CompanyRequestBody$Outbound,
+ z.ZodTypeDef,
+ CompanyRequestBody
+> = z.object({
+ name: z.string(),
+ description: z.string().optional(),
+ groups: z.array(GroupRef$outboundSchema).optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace CompanyRequestBody$ {
+ /** @deprecated use `CompanyRequestBody$inboundSchema` instead. */
+ export const inboundSchema = CompanyRequestBody$inboundSchema;
+ /** @deprecated use `CompanyRequestBody$outboundSchema` instead. */
+ export const outboundSchema = CompanyRequestBody$outboundSchema;
+ /** @deprecated use `CompanyRequestBody$Outbound` instead. */
+ export type Outbound = CompanyRequestBody$Outbound;
}
diff --git a/platform/src/sdk/models/shared/connection.ts b/platform/src/sdk/models/shared/connection.ts
index 4fdede029..e77e2e760 100644
--- a/platform/src/sdk/models/shared/connection.ts
+++ b/platform/src/sdk/models/shared/connection.ts
@@ -2,11 +2,19 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { DataConnectionError } from "./dataconnectionerror";
-import { DataConnectionStatus } from "./dataconnectionstatus";
-import { SourceType } from "./sourcetype";
-import { Expose, Type } from "class-transformer";
+import {
+ DataConnectionError,
+ DataConnectionError$inboundSchema,
+ DataConnectionError$Outbound,
+ DataConnectionError$outboundSchema,
+} from "./dataconnectionerror.js";
+import {
+ DataConnectionStatus,
+ DataConnectionStatus$inboundSchema,
+ DataConnectionStatus$outboundSchema,
+} from "./dataconnectionstatus.js";
+import { SourceType, SourceType$inboundSchema, SourceType$outboundSchema } from "./sourcetype.js";
+import * as z from "zod";
/**
* A connection represents a [company's](https://docs.codat.io/platform-api#/schemas/Company) connection to a data source and allows you to synchronize data (pull and/or push) with that source.
@@ -22,15 +30,39 @@ import { Expose, Type } from "class-transformer";
*
* Before you can use a data connection to pull or push data, the company must grant you access to their business data by [linking the connection](https://docs.codat.io/auth-flow/overview).
*/
-export class Connection extends SpeakeasyBase {
- @SpeakeasyMetadata()
- @Expose({ name: "additionalProperties" })
- additionalProperties?: any;
-
- @SpeakeasyMetadata()
- @Expose({ name: "connectionInfo" })
- connectionInfo?: Record;
-
+export type Connection = {
+ /**
+ * Unique identifier for a company's data connection.
+ */
+ id: string;
+ /**
+ * A Codat ID representing the integration.
+ */
+ integrationId: string;
+ /**
+ * A unique four-character ID that identifies the platform of the company's data connection. This ensures continuity if the platform changes its name in the future.
+ */
+ integrationKey: string;
+ /**
+ * A source-specific ID used to distinguish between different sources originating from the same data connection. In general, a data connection is a single data source. However, for TrueLayer, `sourceId` is associated with a specific bank and has a many-to-one relationship with the `integrationId`.
+ */
+ sourceId: string;
+ /**
+ * The type of platform of the connection.
+ */
+ sourceType: SourceType;
+ /**
+ * Name of integration connected to company.
+ */
+ platformName: string;
+ /**
+ * The link URL your customers can use to authorize access to their business application.
+ */
+ linkUrl: string;
+ /**
+ * The current authorization status of the data connection.
+ */
+ status: DataConnectionStatus;
/**
* In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
*
@@ -54,36 +86,7 @@ export class Connection extends SpeakeasyBase {
* > Not all dates from Codat will contain information about time zones.
* > Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "created" })
- created: string;
-
- @SpeakeasyMetadata({ elemType: DataConnectionError })
- @Expose({ name: "dataConnectionErrors" })
- @Type(() => DataConnectionError)
- dataConnectionErrors?: DataConnectionError[];
-
- /**
- * Unique identifier for a company's data connection.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "id" })
- id: string;
-
- /**
- * A Codat ID representing the integration.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "integrationId" })
- integrationId: string;
-
- /**
- * A unique four-character ID that identifies the platform of the company's data connection. This ensures continuity if the platform changes its name in the future.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "integrationKey" })
- integrationKey: string;
-
+ lastSync?: string | undefined;
/**
* In Codat's data model, dates and times are represented using the ISO 8601 standard. Date and time fields are formatted as strings; for example:
*
@@ -107,42 +110,73 @@ export class Connection extends SpeakeasyBase {
* > Not all dates from Codat will contain information about time zones.
* > Where it is not available from the underlying platform, Codat will return these as times local to the business whose data has been synced.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "lastSync" })
- lastSync?: string;
-
- /**
- * The link URL your customers can use to authorize access to their business application.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "linkUrl" })
- linkUrl: string;
+ created: string;
+ dataConnectionErrors?: Array | undefined;
+ connectionInfo?: { [k: string]: string } | undefined;
+ additionalProperties?: any | undefined;
+};
- /**
- * Name of integration connected to company.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "platformName" })
- platformName: string;
+/** @internal */
+export const Connection$inboundSchema: z.ZodType = z.object({
+ id: z.string(),
+ integrationId: z.string(),
+ integrationKey: z.string(),
+ sourceId: z.string(),
+ sourceType: SourceType$inboundSchema,
+ platformName: z.string(),
+ linkUrl: z.string(),
+ status: DataConnectionStatus$inboundSchema,
+ lastSync: z.string().optional(),
+ created: z.string(),
+ dataConnectionErrors: z.array(DataConnectionError$inboundSchema).optional(),
+ connectionInfo: z.record(z.string()).optional(),
+ additionalProperties: z.any().optional(),
+});
- /**
- * A source-specific ID used to distinguish between different sources originating from the same data connection. In general, a data connection is a single data source. However, for TrueLayer, `sourceId` is associated with a specific bank and has a many-to-one relationship with the `integrationId`.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "sourceId" })
+/** @internal */
+export type Connection$Outbound = {
+ id: string;
+ integrationId: string;
+ integrationKey: string;
sourceId: string;
+ sourceType: string;
+ platformName: string;
+ linkUrl: string;
+ status: string;
+ lastSync?: string | undefined;
+ created: string;
+ dataConnectionErrors?: Array | undefined;
+ connectionInfo?: { [k: string]: string } | undefined;
+ additionalProperties?: any | undefined;
+};
- /**
- * The type of platform of the connection.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "sourceType" })
- sourceType: SourceType;
+/** @internal */
+export const Connection$outboundSchema: z.ZodType =
+ z.object({
+ id: z.string(),
+ integrationId: z.string(),
+ integrationKey: z.string(),
+ sourceId: z.string(),
+ sourceType: SourceType$outboundSchema,
+ platformName: z.string(),
+ linkUrl: z.string(),
+ status: DataConnectionStatus$outboundSchema,
+ lastSync: z.string().optional(),
+ created: z.string(),
+ dataConnectionErrors: z.array(DataConnectionError$outboundSchema).optional(),
+ connectionInfo: z.record(z.string()).optional(),
+ additionalProperties: z.any().optional(),
+ });
- /**
- * The current authorization status of the data connection.
- */
- @SpeakeasyMetadata()
- @Expose({ name: "status" })
- status: DataConnectionStatus;
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace Connection$ {
+ /** @deprecated use `Connection$inboundSchema` instead. */
+ export const inboundSchema = Connection$inboundSchema;
+ /** @deprecated use `Connection$outboundSchema` instead. */
+ export const outboundSchema = Connection$outboundSchema;
+ /** @deprecated use `Connection$Outbound` instead. */
+ export type Outbound = Connection$Outbound;
}
diff --git a/platform/src/sdk/models/shared/connectionmanagementaccesstoken.ts b/platform/src/sdk/models/shared/connectionmanagementaccesstoken.ts
index d69b1b039..a9f9e83fd 100644
--- a/platform/src/sdk/models/shared/connectionmanagementaccesstoken.ts
+++ b/platform/src/sdk/models/shared/connectionmanagementaccesstoken.ts
@@ -2,14 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Expose } from "class-transformer";
+import * as z from "zod";
-export class ConnectionManagementAccessToken extends SpeakeasyBase {
+export type ConnectionManagementAccessToken = {
/**
* Access token that allows SMBs to manage connections that have access to their data.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "accessToken" })
- accessToken?: string;
+ accessToken?: string | undefined;
+};
+
+/** @internal */
+export const ConnectionManagementAccessToken$inboundSchema: z.ZodType<
+ ConnectionManagementAccessToken,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ accessToken: z.string().optional(),
+});
+
+/** @internal */
+export type ConnectionManagementAccessToken$Outbound = {
+ accessToken?: string | undefined;
+};
+
+/** @internal */
+export const ConnectionManagementAccessToken$outboundSchema: z.ZodType<
+ ConnectionManagementAccessToken$Outbound,
+ z.ZodTypeDef,
+ ConnectionManagementAccessToken
+> = z.object({
+ accessToken: z.string().optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ConnectionManagementAccessToken$ {
+ /** @deprecated use `ConnectionManagementAccessToken$inboundSchema` instead. */
+ export const inboundSchema = ConnectionManagementAccessToken$inboundSchema;
+ /** @deprecated use `ConnectionManagementAccessToken$outboundSchema` instead. */
+ export const outboundSchema = ConnectionManagementAccessToken$outboundSchema;
+ /** @deprecated use `ConnectionManagementAccessToken$Outbound` instead. */
+ export type Outbound = ConnectionManagementAccessToken$Outbound;
}
diff --git a/platform/src/sdk/models/shared/connectionmanagementallowedorigins.ts b/platform/src/sdk/models/shared/connectionmanagementallowedorigins.ts
index 06e956508..bbed07607 100644
--- a/platform/src/sdk/models/shared/connectionmanagementallowedorigins.ts
+++ b/platform/src/sdk/models/shared/connectionmanagementallowedorigins.ts
@@ -2,14 +2,47 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Expose } from "class-transformer";
+import * as z from "zod";
-export class ConnectionManagementAllowedOrigins extends SpeakeasyBase {
+export type ConnectionManagementAllowedOrigins = {
/**
* An array of allowed origins (i.e. your domains) to permit cross-origin resource sharing ([CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)).n resource sharing ([CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)).
*/
- @SpeakeasyMetadata()
- @Expose({ name: "allowedOrigins" })
- allowedOrigins?: string[];
+ allowedOrigins?: Array | undefined;
+};
+
+/** @internal */
+export const ConnectionManagementAllowedOrigins$inboundSchema: z.ZodType<
+ ConnectionManagementAllowedOrigins,
+ z.ZodTypeDef,
+ unknown
+> = z.object({
+ allowedOrigins: z.array(z.string()).optional(),
+});
+
+/** @internal */
+export type ConnectionManagementAllowedOrigins$Outbound = {
+ allowedOrigins?: Array | undefined;
+};
+
+/** @internal */
+export const ConnectionManagementAllowedOrigins$outboundSchema: z.ZodType<
+ ConnectionManagementAllowedOrigins$Outbound,
+ z.ZodTypeDef,
+ ConnectionManagementAllowedOrigins
+> = z.object({
+ allowedOrigins: z.array(z.string()).optional(),
+});
+
+/**
+ * @internal
+ * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
+ */
+export namespace ConnectionManagementAllowedOrigins$ {
+ /** @deprecated use `ConnectionManagementAllowedOrigins$inboundSchema` instead. */
+ export const inboundSchema = ConnectionManagementAllowedOrigins$inboundSchema;
+ /** @deprecated use `ConnectionManagementAllowedOrigins$outboundSchema` instead. */
+ export const outboundSchema = ConnectionManagementAllowedOrigins$outboundSchema;
+ /** @deprecated use `ConnectionManagementAllowedOrigins$Outbound` instead. */
+ export type Outbound = ConnectionManagementAllowedOrigins$Outbound;
}
diff --git a/platform/src/sdk/models/shared/connections.ts b/platform/src/sdk/models/shared/connections.ts
index 7ac3cd11f..f10aeec1f 100644
--- a/platform/src/sdk/models/shared/connections.ts
+++ b/platform/src/sdk/models/shared/connections.ts
@@ -2,40 +2,85 @@
* Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
*/
-import { SpeakeasyBase, SpeakeasyMetadata } from "../../../internal/utils";
-import { Connection } from "./connection";
-import { Links } from "./links";
-import { Expose, Type } from "class-transformer";
-
-export class Connections extends SpeakeasyBase {
- @SpeakeasyMetadata()
- @Expose({ name: "_links" })
- @Type(() => Links)
- links: Links;
+import { remap as remap$ } from "../../../lib/primitives.js";
+import {
+ Connection,
+ Connection$inboundSchema,
+ Connection$Outbound,
+ Connection$outboundSchema,
+} from "./connection.js";
+import { Links, Links$inboundSchema, Links$Outbound, Links$outboundSchema } from "./links.js";
+import * as z from "zod";
+export type Connections = {
+ results?: Array | undefined;
/**
* Current page number.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "pageNumber" })
pageNumber: number;
-
/**
* Number of items to return in results array.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "pageSize" })
pageSize: number;
-
- @SpeakeasyMetadata({ elemType: Connection })
- @Expose({ name: "results" })
- @Type(() => Connection)
- results?: Connection[];
-
/**
* Total number of items.
*/
- @SpeakeasyMetadata()
- @Expose({ name: "totalResults" })
totalResults: number;
+ links: Links;
+};
+
+/** @internal */
+export const Connections$inboundSchema: z.ZodType = z
+ .object({
+ results: z.array(Connection$inboundSchema).optional(),
+ pageNumber: z.number().int(),
+ pageSize: z.number().int(),
+ totalResults: z.number().int(),
+ _links: Links$inboundSchema,
+ })
+ .transform((v) => {
+ return remap$(v, {
+ _links: "links",
+ });
+ });
+
+/** @internal */
+export type Connections$Outbound = {
+ results?: Array