@epilot/sdk 2.1.0-rc.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/definitions/app.json +38 -0
- package/definitions/automation.json +2 -37
- package/definitions/blueprint-manifest-runtime.json +1 -1
- package/definitions/blueprint-manifest.json +115 -1
- package/definitions/customer-portal-runtime.json +1 -1
- package/definitions/customer-portal.json +279 -42
- package/definitions/data-management.json +10 -0
- package/definitions/email-template.json +25 -3
- package/definitions/entity.json +205 -3
- package/definitions/erp-integration-runtime.json +1 -1
- package/definitions/erp-integration.json +472 -13
- package/definitions/journey.json +257 -12
- package/definitions/kanban.json +630 -78
- package/definitions/organization-runtime.json +1 -1
- package/definitions/organization.json +614 -51
- package/definitions/workflow.json +40 -0
- package/dist/README-VG67PX4R.js +7 -0
- package/dist/README-W4B35MRN.cjs +7 -0
- package/dist/_index-AMVZBT2K.cjs +99 -0
- package/dist/_index-S6LFD3ER.js +99 -0
- package/dist/access-token-6BJDZSFE.cjs +7 -0
- package/dist/access-token-GSQZLDXR.js +7 -0
- package/dist/address-HA4RMRNQ.cjs +7 -0
- package/dist/address-QVJUGMOG.js +7 -0
- package/dist/address-suggestions-74244BAJ.js +7 -0
- package/dist/address-suggestions-IUQMYF27.cjs +7 -0
- package/dist/ai-agents-IZWFEUSH.js +7 -0
- package/dist/ai-agents-PWHKNRCX.cjs +7 -0
- package/dist/apis/access-token.cjs +10 -13
- package/dist/apis/access-token.js +7 -10
- package/dist/apis/address-suggestions.cjs +10 -13
- package/dist/apis/address-suggestions.js +7 -10
- package/dist/apis/address.cjs +10 -13
- package/dist/apis/address.js +7 -10
- package/dist/apis/ai-agents.cjs +10 -13
- package/dist/apis/ai-agents.js +7 -10
- package/dist/apis/app.cjs +10 -13
- package/dist/apis/app.js +7 -10
- package/dist/apis/audit-logs.cjs +10 -13
- package/dist/apis/audit-logs.js +7 -10
- package/dist/apis/automation.cjs +10 -13
- package/dist/apis/automation.js +7 -10
- package/dist/apis/billing.cjs +10 -13
- package/dist/apis/billing.js +7 -10
- package/dist/apis/blueprint-manifest.cjs +10 -13
- package/dist/apis/blueprint-manifest.js +7 -10
- package/dist/apis/consent.cjs +10 -13
- package/dist/apis/consent.js +7 -10
- package/dist/apis/customer-portal.cjs +10 -13
- package/dist/apis/customer-portal.js +7 -10
- package/dist/apis/dashboard.cjs +10 -13
- package/dist/apis/dashboard.js +7 -10
- package/dist/apis/data-management.cjs +10 -13
- package/dist/apis/data-management.js +7 -10
- package/dist/apis/deduplication.cjs +10 -13
- package/dist/apis/deduplication.js +7 -10
- package/dist/apis/design.cjs +10 -13
- package/dist/apis/design.js +7 -10
- package/dist/apis/document.cjs +10 -13
- package/dist/apis/document.js +7 -10
- package/dist/apis/email-settings.cjs +10 -13
- package/dist/apis/email-settings.js +7 -10
- package/dist/apis/email-template.cjs +10 -13
- package/dist/apis/email-template.js +7 -10
- package/dist/apis/entity-mapping.cjs +10 -13
- package/dist/apis/entity-mapping.js +7 -10
- package/dist/apis/entity.cjs +10 -13
- package/dist/apis/entity.js +7 -10
- package/dist/apis/environments.cjs +10 -13
- package/dist/apis/environments.js +7 -10
- package/dist/apis/erp-integration.cjs +10 -13
- package/dist/apis/erp-integration.js +7 -10
- package/dist/apis/event-catalog.cjs +10 -13
- package/dist/apis/event-catalog.js +7 -10
- package/dist/apis/file.cjs +10 -13
- package/dist/apis/file.js +7 -10
- package/dist/apis/iban.cjs +10 -13
- package/dist/apis/iban.js +7 -10
- package/dist/apis/journey.cjs +10 -13
- package/dist/apis/journey.js +7 -10
- package/dist/apis/kanban.cjs +10 -13
- package/dist/apis/kanban.js +7 -10
- package/dist/apis/message.cjs +10 -13
- package/dist/apis/message.js +7 -10
- package/dist/apis/metering.cjs +10 -13
- package/dist/apis/metering.js +7 -10
- package/dist/apis/notes.cjs +10 -13
- package/dist/apis/notes.js +7 -10
- package/dist/apis/notification.cjs +10 -13
- package/dist/apis/notification.js +7 -10
- package/dist/apis/organization.cjs +10 -13
- package/dist/apis/organization.d.cts +2 -2
- package/dist/apis/organization.d.ts +2 -2
- package/dist/apis/organization.js +7 -10
- package/dist/apis/partner-directory.cjs +10 -13
- package/dist/apis/partner-directory.js +7 -10
- package/dist/apis/permissions.cjs +10 -13
- package/dist/apis/permissions.js +7 -10
- package/dist/apis/pricing-tier.cjs +10 -13
- package/dist/apis/pricing-tier.js +7 -10
- package/dist/apis/pricing.cjs +10 -13
- package/dist/apis/pricing.js +7 -10
- package/dist/apis/purpose.cjs +10 -13
- package/dist/apis/purpose.js +7 -10
- package/dist/apis/sandbox.cjs +10 -13
- package/dist/apis/sandbox.js +7 -10
- package/dist/apis/submission.cjs +10 -13
- package/dist/apis/submission.js +7 -10
- package/dist/apis/targeting.cjs +10 -13
- package/dist/apis/targeting.js +7 -10
- package/dist/apis/template-variables.cjs +10 -13
- package/dist/apis/template-variables.js +7 -10
- package/dist/apis/user.cjs +10 -13
- package/dist/apis/user.js +7 -10
- package/dist/apis/validation-rules.cjs +10 -13
- package/dist/apis/validation-rules.js +7 -10
- package/dist/apis/webhooks.cjs +10 -13
- package/dist/apis/webhooks.js +7 -10
- package/dist/apis/workflow-definition.cjs +10 -13
- package/dist/apis/workflow-definition.js +7 -10
- package/dist/apis/workflow.cjs +10 -13
- package/dist/apis/workflow.js +7 -10
- package/dist/app-IKHWU222.cjs +7 -0
- package/dist/app-VLM3SWKA.js +7 -0
- package/dist/audit-logs-5VXHOQ7S.js +7 -0
- package/dist/audit-logs-D2LFUA2R.cjs +7 -0
- package/dist/automation-3HGCK725.cjs +7 -0
- package/dist/automation-72VGEJCY.js +7 -0
- package/dist/billing-DUWDISHP.cjs +7 -0
- package/dist/billing-IPALEAG2.js +7 -0
- package/dist/blueprint-manifest-CXSCRQ5X.js +7 -0
- package/dist/blueprint-manifest-SHNZPK5O.cjs +7 -0
- package/dist/chunk-2HOJWFQ4.js +14 -0
- package/dist/chunk-372VUPHN.js +14 -0
- package/dist/chunk-3HJEWWPS.cjs +14 -0
- package/dist/chunk-3N67SSL3.js +14 -0
- package/dist/chunk-3XEP56SV.cjs +204 -0
- package/dist/chunk-3ZZ57K3S.cjs +14 -0
- package/dist/chunk-4SWC43JO.cjs +14 -0
- package/dist/chunk-4VFQTSJQ.js +14 -0
- package/dist/chunk-57QIBYDN.js +14 -0
- package/dist/chunk-5SNJAD6F.cjs +14 -0
- package/dist/chunk-73H6TVKN.js +14 -0
- package/dist/chunk-A6JOROUC.cjs +14 -0
- package/dist/chunk-AJKH25H2.cjs +14 -0
- package/dist/chunk-ARWMTXJV.cjs +14 -0
- package/dist/chunk-B3ZGAG7B.js +14 -0
- package/dist/chunk-BH5ZXK4J.cjs +14 -0
- package/dist/chunk-BWFXLUK5.cjs +14 -0
- package/dist/chunk-C6UTZEHH.js +14 -0
- package/dist/chunk-CPKBR34V.js +14 -0
- package/dist/chunk-CWSHYFVZ.js +14 -0
- package/dist/chunk-DJKSULPK.js +14 -0
- package/dist/chunk-DNJ54L2G.js +14 -0
- package/dist/chunk-DY2D2IW5.cjs +14 -0
- package/dist/chunk-E26ZO7QM.cjs +14 -0
- package/dist/chunk-EBCHCYUO.js +14 -0
- package/dist/chunk-EPAIOB5U.cjs +14 -0
- package/dist/chunk-EQZMT2HF.cjs +14 -0
- package/dist/chunk-F376L6PP.cjs +14 -0
- package/dist/chunk-F472YLJG.cjs +14 -0
- package/dist/chunk-FXOX3X7E.cjs +14 -0
- package/dist/chunk-G2REP2VZ.cjs +14 -0
- package/dist/chunk-GLO477NZ.js +14 -0
- package/dist/chunk-H4VSK4KF.js +14 -0
- package/dist/chunk-HPSGM6QP.js +14 -0
- package/dist/chunk-HPYHWTTA.cjs +14 -0
- package/dist/chunk-IH4CMOML.js +14 -0
- package/dist/chunk-IMT3IE5M.cjs +14 -0
- package/dist/chunk-IP2WWEOU.js +14 -0
- package/dist/chunk-IS2VB342.js +14 -0
- package/dist/chunk-ITX53XAZ.js +14 -0
- package/dist/chunk-JXBXDTFG.cjs +14 -0
- package/dist/chunk-K62XK7KU.js +14 -0
- package/dist/chunk-KA3TGFJP.js +14 -0
- package/dist/chunk-KBOVBUBM.js +14 -0
- package/dist/chunk-KPGC2D6E.js +14 -0
- package/dist/chunk-KSXTBGIV.js +14 -0
- package/dist/chunk-LCIJ4TJ4.cjs +14 -0
- package/dist/chunk-LQOLYXGQ.cjs +14 -0
- package/dist/chunk-LSIWCIQV.js +14 -0
- package/dist/chunk-MHNSZ4HE.js +14 -0
- package/dist/chunk-MKX4CKAB.cjs +14 -0
- package/dist/chunk-MRTAFRO7.js +14 -0
- package/dist/chunk-MRZ7LGKZ.js +14 -0
- package/dist/chunk-MSASBR2Y.js +14 -0
- package/dist/chunk-NAWLLC3T.cjs +14 -0
- package/dist/chunk-NJK5F5TF.cjs +21 -0
- package/dist/chunk-NLSZVGHK.cjs +14 -0
- package/dist/chunk-O4LRVGOY.js +14 -0
- package/dist/chunk-OG2DMGU6.cjs +14 -0
- package/dist/chunk-OGQKJTXF.js +14 -0
- package/dist/chunk-PETLAONH.js +14 -0
- package/dist/chunk-PVSS2WPM.cjs +14 -0
- package/dist/chunk-PXITFTJA.cjs +14 -0
- package/dist/chunk-QDVPPRWI.cjs +14 -0
- package/dist/chunk-QKERXNJJ.cjs +14 -0
- package/dist/chunk-QLML3IP5.cjs +14 -0
- package/dist/chunk-QVAJ5JP4.js +14 -0
- package/dist/chunk-RD7E4OSJ.cjs +14 -0
- package/dist/chunk-RWSA3LXE.cjs +14 -0
- package/dist/chunk-RXSS67VI.cjs +14 -0
- package/dist/chunk-S3ZNESMC.cjs +14 -0
- package/dist/chunk-S7NDMDRX.js +14 -0
- package/dist/chunk-SK3VYIZ6.cjs +14 -0
- package/dist/chunk-SMGHAG5C.cjs +14 -0
- package/dist/chunk-T46LODOF.js +14 -0
- package/dist/chunk-TIJWJVKZ.js +14 -0
- package/dist/chunk-TLWCYLNA.js +14 -0
- package/dist/chunk-TRJLYZHD.js +14 -0
- package/dist/chunk-UKKJMCNH.js +14 -0
- package/dist/chunk-ULBEEHG4.js +204 -0
- package/dist/chunk-VGTUK3QD.cjs +14 -0
- package/dist/chunk-VQ7R36AC.js +14 -0
- package/dist/chunk-VVQB5W7U.cjs +14 -0
- package/dist/chunk-VVVATFGK.cjs +14 -0
- package/dist/chunk-WMTYO5OX.cjs +14 -0
- package/dist/chunk-WOSSSFXB.js +14 -0
- package/dist/chunk-WOXXNKTE.js +14 -0
- package/dist/chunk-XKI2OAYV.cjs +14 -0
- package/dist/chunk-XR4QF6KQ.cjs +14 -0
- package/dist/chunk-XYHTQ523.cjs +14 -0
- package/dist/chunk-XZYZLSUO.cjs +14 -0
- package/dist/chunk-YPSWSI3M.js +21 -0
- package/dist/chunk-YYBIU5BQ.js +14 -0
- package/dist/chunk-YZA5WZUS.js +14 -0
- package/dist/chunk-Z4LUE424.cjs +14 -0
- package/dist/chunk-ZV6XYUXS.js +14 -0
- package/dist/consent-CS2ZBZX4.cjs +7 -0
- package/dist/consent-NNYHF2N4.js +7 -0
- package/dist/customer-portal-D3SLPAHZ.js +7 -0
- package/dist/customer-portal-UR3GN4VU.cjs +7 -0
- package/dist/dashboard-UHYR5RTY.cjs +7 -0
- package/dist/dashboard-UTPGXFW5.js +7 -0
- package/dist/data-management-QH2IJ5QV.js +7 -0
- package/dist/data-management-TEFRLGSU.cjs +7 -0
- package/dist/deduplication-ECVAZVVA.cjs +7 -0
- package/dist/deduplication-GYIST22B.js +7 -0
- package/dist/design-KUVXMFFK.cjs +7 -0
- package/dist/design-YKBXRW5C.js +7 -0
- package/dist/document-CY2A2OE7.js +7 -0
- package/dist/document-RYQ7MF6U.cjs +7 -0
- package/dist/email-settings-TQ5GGDYG.js +7 -0
- package/dist/email-settings-TQC34GST.cjs +7 -0
- package/dist/email-template-M2VVL4TI.cjs +7 -0
- package/dist/email-template-WYROV3UG.js +7 -0
- package/dist/entity-FA6PZX6S.js +7 -0
- package/dist/entity-IX5NSHPX.cjs +7 -0
- package/dist/entity-mapping-7J3IAGKQ.js +7 -0
- package/dist/entity-mapping-ZNMFCUKK.cjs +7 -0
- package/dist/environments-E3X6NYGX.js +7 -0
- package/dist/environments-P2JS4F5N.cjs +7 -0
- package/dist/erp-integration-EP2XFEH5.js +7 -0
- package/dist/erp-integration-NNV72VFI.cjs +7 -0
- package/dist/event-catalog-C45ISVMP.cjs +7 -0
- package/dist/event-catalog-D7VJ7WRS.js +7 -0
- package/dist/file-UOWBTDIU.cjs +7 -0
- package/dist/file-XSN3NAVZ.js +7 -0
- package/dist/iban-24GHLFDB.cjs +7 -0
- package/dist/iban-LDKYDVQV.js +7 -0
- package/dist/index.cjs +199 -58
- package/dist/index.d.cts +17 -2
- package/dist/index.d.ts +17 -2
- package/dist/index.js +197 -56
- package/dist/journey-7CKX67M7.js +7 -0
- package/dist/journey-EUZ6MVHG.cjs +7 -0
- package/dist/kanban-CHTH2ZSY.cjs +7 -0
- package/dist/kanban-HI6LL5WY.js +7 -0
- package/dist/message-3XZLJR6R.cjs +7 -0
- package/dist/message-ZNMCS5YH.js +7 -0
- package/dist/metering-DZNZPPY6.cjs +7 -0
- package/dist/metering-KOSCPPKB.js +7 -0
- package/dist/notes-3AO5GXIT.js +7 -0
- package/dist/notes-MPWOQC5J.cjs +7 -0
- package/dist/notification-PZOCUYD5.cjs +7 -0
- package/dist/notification-VWDZRSFZ.js +7 -0
- package/dist/organization-RARYYG2E.cjs +7 -0
- package/dist/organization-ZERPH2IH.js +7 -0
- package/dist/{organization.d-Bd2Hmk8v.d.cts → organization.d-DqwnNxMg.d.cts} +34 -7
- package/dist/{organization.d-Bd2Hmk8v.d.ts → organization.d-DqwnNxMg.d.ts} +34 -7
- package/dist/partner-directory-2XMPQWWX.js +7 -0
- package/dist/partner-directory-WHNTKQ5E.cjs +7 -0
- package/dist/permissions-4T3GFNB4.js +7 -0
- package/dist/permissions-FGBIJNN7.cjs +7 -0
- package/dist/pricing-4Z4TOETA.cjs +7 -0
- package/dist/pricing-C65DTZSX.js +7 -0
- package/dist/pricing-tier-NI35WOUP.cjs +7 -0
- package/dist/pricing-tier-VUOFK5Q7.js +7 -0
- package/dist/purpose-AKOEUHZ4.cjs +7 -0
- package/dist/purpose-RBRV3AQZ.js +7 -0
- package/dist/sandbox-2KN4X66E.cjs +7 -0
- package/dist/sandbox-L2SOOGGR.js +7 -0
- package/dist/submission-7BISSPO6.js +7 -0
- package/dist/submission-Q24BU4GS.cjs +7 -0
- package/dist/targeting-EYGYZD6M.cjs +7 -0
- package/dist/targeting-GEJTJN5Z.js +7 -0
- package/dist/template-variables-OAYS2E3G.cjs +1148 -0
- package/dist/template-variables-VKDJJZUT.js +1148 -0
- package/dist/user-EIEOI3OG.js +7 -0
- package/dist/user-NJJ7XVKB.cjs +7 -0
- package/dist/validation-rules-P6F5P73P.js +7 -0
- package/dist/validation-rules-VDU3CIZV.cjs +7 -0
- package/dist/webhooks-I7JWU34X.cjs +7 -0
- package/dist/webhooks-WPLEHVPX.js +7 -0
- package/dist/workflow-3LLURW3H.js +7 -0
- package/dist/workflow-RAGQDYXT.cjs +7 -0
- package/dist/workflow-definition-B6ELOZUR.cjs +7 -0
- package/dist/workflow-definition-D24CRCK2.js +7 -0
- package/docs/access-token.md +440 -0
- package/docs/address-suggestions.md +256 -0
- package/docs/address.md +284 -0
- package/docs/ai-agents.md +1891 -0
- package/docs/app.md +3388 -0
- package/docs/audit-logs.md +242 -0
- package/docs/automation.md +4044 -0
- package/docs/billing.md +783 -0
- package/docs/blueprint-manifest.md +3234 -0
- package/docs/consent.md +213 -0
- package/docs/customer-portal.md +11399 -0
- package/docs/dashboard.md +640 -0
- package/docs/data-management.md +883 -0
- package/docs/deduplication.md +135 -0
- package/docs/design.md +1273 -0
- package/docs/document.md +590 -0
- package/docs/email-settings.md +1544 -0
- package/docs/email-template.md +1197 -0
- package/docs/entity-mapping.md +2864 -0
- package/docs/entity.md +9595 -0
- package/docs/environments.md +259 -0
- package/docs/erp-integration.md +4572 -0
- package/docs/event-catalog.md +835 -0
- package/docs/file.md +1453 -0
- package/docs/iban.md +61 -0
- package/docs/journey.md +2268 -0
- package/docs/kanban.md +882 -0
- package/docs/message.md +2122 -0
- package/docs/metering.md +1431 -0
- package/docs/notes.md +670 -0
- package/docs/notification.md +1207 -0
- package/docs/organization.md +733 -0
- package/docs/partner-directory.md +1197 -0
- package/docs/permissions.md +1047 -0
- package/docs/pricing-tier.md +81 -0
- package/docs/pricing.md +5923 -0
- package/docs/purpose.md +283 -0
- package/docs/sandbox.md +389 -0
- package/docs/submission.md +195 -0
- package/docs/targeting.md +959 -0
- package/docs/template-variables.md +1141 -0
- package/docs/user.md +2555 -0
- package/docs/validation-rules.md +1597 -0
- package/docs/webhooks.md +996 -0
- package/docs/workflow-definition.md +3842 -0
- package/docs/workflow.md +4465 -0
- package/package.json +3 -2
- package/dist/chunk-XE25WERA.js +0 -125
- package/dist/chunk-XEQMAKGA.cjs +0 -125
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
|
|
2
|
+
|
|
3
|
+
// src/docs/metering.json
|
|
4
|
+
var metering_default = '# Metering API\n\n- **Base URL:** `https://metering.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/metering](https://docs.epilot.io/api/metering)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.metering.getCustomerMeters(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/metering\'\n\nconst meteringClient = getClient()\nauthorize(meteringClient, () => \'<token>\')\nconst { data } = await meteringClient.getCustomerMeters(...)\n```\n\n## Operations\n\n**ECP**\n- [`getCustomerMeters`](#getcustomermeters)\n- [`getMetersByContractId`](#getmetersbycontractid)\n- [`updateMeter`](#updatemeter)\n- [`getMeter`](#getmeter)\n- [`getMeterCounters`](#getmetercounters)\n- [`getCounterDetails`](#getcounterdetails)\n- [`createPortalMeterReadings`](#createportalmeterreadings)\n\n**ECP Admin**\n- [`createMeterReading`](#createmeterreading)\n- [`createMeterReadings`](#createmeterreadings)\n- [`batchWriteMeterReadings`](#batchwritemeterreadings)\n- [`createMeterReadingFromSubmission`](#createmeterreadingfromsubmission)\n- [`getAllowedReadingForMeter`](#getallowedreadingformeter)\n- [`createReadingWithMeter`](#createreadingwithmeter)\n- [`getReadingsByInterval`](#getreadingsbyinterval)\n- [`updateMeterReading`](#updatemeterreading)\n- [`deleteMeterReading`](#deletemeterreading)\n\n**Schemas**\n- [`ErrorResp`](#errorresp)\n- [`EntityId`](#entityid)\n- [`EntitySlug`](#entityslug)\n- [`BaseEntity`](#baseentity)\n- [`Entity`](#entity)\n- [`EntityItem`](#entityitem)\n- [`Id`](#id)\n- [`EntityRelation`](#entityrelation)\n- [`Meter`](#meter)\n- [`Direction`](#direction)\n- [`TariffType`](#tarifftype)\n- [`Reason`](#reason)\n- [`ReasonString`](#reasonstring)\n- [`ReadBy`](#readby)\n- [`ReadingStatus`](#readingstatus)\n- [`Reading`](#reading)\n- [`MeterReading`](#meterreading)\n- [`PortalMeterReading`](#portalmeterreading)\n- [`UpdateMeterReading`](#updatemeterreading)\n- [`MeterCounter`](#metercounter)\n- [`CounterReadingOnSubmission`](#counterreadingonsubmission)\n- [`SubmissionMeterReading`](#submissionmeterreading)\n- [`Unit`](#unit)\n- [`Source`](#source)\n- [`ActionLabel`](#actionlabel)\n- [`Rule`](#rule)\n- [`JourneyActions`](#journeyactions)\n- [`ReadingWithMeter`](#readingwithmeter)\n- [`ActivityId`](#activityid)\n\n### `getCustomerMeters`\n\nGet Customer Meters\n\n`GET /v1/metering/meter`\n\n```ts\nconst { data } = await client.getCustomerMeters()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "journey_actions": {\n "journey_id": "string",\n "action_label": {\n "en": "string",\n "de": "string"\n },\n "slug": "string",\n "rules": [\n {\n "entity": "string",\n "attribute": "string",\n "attribute_value": "string"\n }\n ]\n },\n "last_reading": "2022-10-10T00:00:00.000Z",\n "current_consumption": 100.5\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getMetersByContractId`\n\nRetrieves all meters related to a contract.\n\n`GET /v1/metering/contract/meters/{contract_id}`\n\n```ts\nconst { data } = await client.getMetersByContractId({\n contract_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `updateMeter`\n\nUpdate Meter\n\n`PATCH /v1/metering/meter/{id}`\n\n```ts\nconst { data } = await client.updateMeter(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n }\n }\n}\n```\n\n</details>\n\n---\n\n### `getMeter`\n\nGet Meter\n\n`GET /v1/metering/meter/{id}`\n\n```ts\nconst { data } = await client.getMeter({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "entity": {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n }\n },\n "journey_actions": {\n "journey_id": "string",\n "action_label": {\n "en": "string",\n "de": "string"\n },\n "slug": "string",\n "rules": [\n {\n "entity": "string",\n "attribute": "string",\n "attribute_value": "string"\n }\n ]\n },\n "relations": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z"\n }\n ]\n }\n}\n```\n\n</details>\n\n---\n\n### `getMeterCounters`\n\nGet Meter Counters\n\n`GET /v1/metering/counter`\n\n```ts\nconst { data } = await client.getMeterCounters({\n meter_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter_counter",\n "obis_number": "A-34",\n "direction": "feed-in",\n "transformer_ratio": 70,\n "unit": "string",\n "forecast_reading_value": 270,\n "forecast_as_of": "2022-12-10T00:00:00.000Z",\n "current_consumption": 240,\n "last_reading": "2022-10-10T00:00:00.000Z",\n "conversion_factor": 3,\n "tariff_type": "ht"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getCounterDetails`\n\nGet Counter Details\n\n`GET /v1/metering/counter/{counter_id}`\n\n```ts\nconst { data } = await client.getCounterDetails({\n counter_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter_counter",\n "obis_number": "A-34",\n "direction": "feed-in",\n "transformer_ratio": 70,\n "unit": "string",\n "forecast_reading_value": 270,\n "forecast_as_of": "2022-12-10T00:00:00.000Z",\n "current_consumption": 240,\n "last_reading": "2022-10-10T00:00:00.000Z",\n "conversion_factor": 3,\n "tariff_type": "ht"\n }\n}\n```\n\n</details>\n\n---\n\n### `createMeterReading`\n\nCreate Meter Reading\n\n`POST /v1/metering/reading`\n\n```ts\nconst { data } = await client.createMeterReading(\n null,\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n}\n```\n\n</details>\n\n---\n\n### `createMeterReadings`\n\nCreate Meter Readings\n\n`POST /v1/metering/readings`\n\n```ts\nconst { data } = await client.createMeterReadings(\n {\n async: true,\n activity_id: \'example\',\n skip_validation: true,\n },\n {\n readings: [\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createPortalMeterReadings`\n\nInserts multiple meter readings at once for a given meter. Limited to 2 readings per request.\n\n`POST /v1/metering/readings/{meter_id}`\n\n```ts\nconst { data } = await client.createPortalMeterReadings(\n {\n meter_id: \'example\',\n },\n {\n readings: [\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `batchWriteMeterReadings`\n\nBatch Write Readings\n\n`POST /v2/metering/readings`\n\n```ts\nconst { data } = await client.batchWriteMeterReadings(\n {\n async: true,\n skip_validation: true,\n activity_id: \'example\',\n },\n {\n identifiers: [\'string\'],\n readings: [\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\',\n operation: \'create\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createMeterReadingFromSubmission`\n\nCreate Meter Reading from Submission\n\n`POST /v1/metering/reading/submission`\n\n```ts\nconst { data } = await client.createMeterReadingFromSubmission(\n null,\n {\n org_id: \'123\',\n entity: {\n _org: \'123\',\n meterReadings: [\n {\n meterId: \'string\',\n readings: [\n {\n counterId: \'string\',\n direction: \'feed-in\',\n unit: \'string\',\n value: 240\n }\n ],\n readingValue: 240,\n readingDate: \'2022-10-10T10:10:00.000Z\',\n readBy: \'John Doe\',\n reason: \'\',\n maloId: \'A09-123\',\n obisNumber: \'A-34\',\n readingUnit: \'string\',\n meterType: \'one_tariff\',\n feedInValue: 240,\n feedOutValue: 240,\n htValue: 240,\n ntValue: 240\n }\n ]\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "message": "Successfully Processed"\n}\n```\n\n</details>\n\n---\n\n### `getAllowedReadingForMeter`\n\nGet allowed reading for the given meter\n\n`GET /v1/metering/allowed/reading/{meter_id}`\n\n```ts\nconst { data } = await client.getAllowedReadingForMeter({\n meter_id: \'example\',\n timestamp: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "counter_id": "string",\n "min_value": 0,\n "max_value": 0\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createReadingWithMeter`\n\nCreate Reading with Meter\n\n`POST /v1/metering/reading/with-meter`\n\n```ts\nconst { data } = await client.createReadingWithMeter(\n null,\n {\n ma_lo_id: \'A09-123\',\n meter_id: \'string\',\n obis_number: \'A-34\',\n unit: \'string\',\n direction: \'feed-in\',\n tariff_type: \'ht\',\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n timestamp: \'2022-10-10T10:10:00.000Z\',\n source: \'ECP\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n}\n```\n\n</details>\n\n---\n\n### `getReadingsByInterval`\n\nGet Readings by Interval\n\n`GET /v1/metering/reading/{meter_id}/{counter_id}`\n\n```ts\nconst { data } = await client.getReadingsByInterval({\n meter_id: \'example\',\n counter_id: \'example\',\n start_date: \'example\',\n end_date: \'example\',\n direction: \'example\',\n size: 1,\n from: 1,\n type: \'example\',\n sort: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ],\n "hits": 120,\n "firstRecordCreatedAt": "2022-10-01T20:00:00.000Z"\n}\n```\n\n</details>\n\n---\n\n### `updateMeterReading`\n\nUpdate Meter Reading\n\n`PUT /v1/metering/reading/{meter_id}/{counter_id}`\n\n```ts\nconst { data } = await client.updateMeterReading(\n {\n meter_id: \'example\',\n counter_id: \'example\',\n timestamp: \'example\',\n },\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'string\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n}\n```\n\n</details>\n\n---\n\n### `deleteMeterReading`\n\nDelete Meter Reading\n\n`DELETE /v1/metering/reading/{meter_id}/{counter_id}`\n\n```ts\nconst { data } = await client.deleteMeterReading({\n meter_id: \'example\',\n counter_id: \'example\',\n timestamp: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "meterId": "string",\n "counterId": "string",\n "timestamp": "2022-10-01T20:00:00.000Z"\n }\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `ErrorResp`\n\n```ts\ntype ErrorResp = {\n message?: string\n}\n```\n\n### `EntityId`\n\n```ts\ntype EntityId = string // uuid\n```\n\n### `EntitySlug`\n\nURL-friendly identifier for the entity schema\n\n```ts\ntype EntitySlug = string\n```\n\n### `BaseEntity`\n\n```ts\ntype BaseEntity = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n\n### `Entity`\n\n```ts\ntype Entity = Record<string, unknown>\n```\n\n### `EntityItem`\n\n```ts\ntype EntityItem = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n\n### `Id`\n\n```ts\ntype Id = string\n```\n\n### `EntityRelation`\n\n```ts\ntype EntityRelation = {\n entity_id?: string // uuid\n _slug?: "contact" | "contract"\n}\n```\n\n### `Meter`\n\n```ts\ntype Meter = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _schema: "meter"\n ma_lo_id?: string\n status?: "active" | "decommissioned"\n meter_type?: "three-phase-meter" | "bellow-gas-meter" | "rotary-piston-meter" | "smart-meter" | "performance-meter" | "maximum-meter" | "turbine-gas-meter" | "ultrasonic-gas-meter" | "alternating-current-meter" | "modern-metering-system" | "intelligent-measuring-system" | "electronic-meter"\n tariff_type?: string\n meter_number?: string\n sector?: "power" | "water" | "gas" | "district_heating" | "waste_water"\n location?: object\n used_for?: string\n manufacturer?: string\n calibration_date?: string\n contract?: {\n $relation?: Array<{\n entity_id?: { ... }\n _slug?: { ... }\n }>\n }\n customer?: {\n $relation?: Array<{\n entity_id?: { ... }\n _slug?: { ... }\n }>\n }\n}\n```\n\n### `Direction`\n\n```ts\ntype Direction = "feed-in" | "feed-out"\n```\n\n### `TariffType`\n\n```ts\ntype TariffType = "ht" | "nt"\n```\n\n### `Reason`\n\nThe reason for recording the reading\nIf no reason is specified or left empty, the Epilot UI will show \'Regular\' as the default display text\n\n\n```ts\ntype Reason = "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n```\n\n### `ReasonString`\n\nThis field is deprecated. Please use the Reason enum instead.\n\n\n```ts\ntype ReasonString = string\n```\n\n### `ReadBy`\n\nThe person who recorded the reading\n\n```ts\ntype ReadBy = string\n```\n\n### `ReadingStatus`\n\n```ts\ntype ReadingStatus = "valid" | "in-validation" | "implausible" | null | ""\n```\n\n### `Reading`\n\n```ts\ntype Reading = {\n value: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n meter_id?: string // uuid\n counter_id?: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n note?: string\n unit?: string\n}\n```\n\n### `MeterReading`\n\n```ts\ntype MeterReading = {\n value: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n meter_id: string // uuid\n counter_id?: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n note?: string\n unit?: string\n}\n```\n\n### `PortalMeterReading`\n\n```ts\ntype PortalMeterReading = {\n value: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n meter_id?: string // uuid\n counter_id: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n note?: string\n unit?: string\n}\n```\n\n### `UpdateMeterReading`\n\n```ts\ntype UpdateMeterReading = {\n value: number\n read_by?: string\n reason?: string\n meter_id: string // uuid\n counter_id?: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n}\n```\n\n### `MeterCounter`\n\n```ts\ntype MeterCounter = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _schema: "meter_counter"\n obis_number?: string\n direction?: "feed-in" | "feed-out"\n transformer_ratio?: number\n unit?: string\n forecast_reading_value?: string\n forecast_as_of?: string\n current_consumption?: number\n last_reading?: string\n conversion_factor?: number\n tariff_type?: "ht" | "nt"\n}\n```\n\n### `CounterReadingOnSubmission`\n\n```ts\ntype CounterReadingOnSubmission = {\n counterId: string\n direction: "feed-in" | "feed-out"\n unit?: string\n value: number\n}\n```\n\n### `SubmissionMeterReading`\n\n```ts\ntype SubmissionMeterReading = {\n meterId: string\n readings?: Array<{\n counterId: string\n direction: "feed-in" | "feed-out"\n unit?: string\n value: number\n }>\n readingValue?: number\n readingDate?: string\n readBy?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n maloId?: string\n obisNumber?: string\n readingUnit?: string\n meterType?: "one_tariff" | "two_tariff" | "bi_directional"\n feedInValue?: number\n feedOutValue?: number\n htValue?: number\n ntValue?: number\n}\n```\n\n### `Unit`\n\n```ts\ntype Unit = string\n```\n\n### `Source`\n\n```ts\ntype Source = "ECP" | "ERP" | "360" | "journey-submission"\n```\n\n### `ActionLabel`\n\n```ts\ntype ActionLabel = {\n en?: string\n de?: string\n}\n```\n\n### `Rule`\n\n```ts\ntype Rule = {\n entity?: string\n attribute?: string\n attribute_value?: string\n}\n```\n\n### `JourneyActions`\n\n```ts\ntype JourneyActions = {\n journey_id?: string\n action_label?: {\n en?: string\n de?: string\n }\n slug?: string\n rules?: Array<{\n entity?: string\n attribute?: string\n attribute_value?: string\n }>\n}\n```\n\n### `ReadingWithMeter`\n\n```ts\ntype ReadingWithMeter = {\n ma_lo_id?: string\n meter_id?: string\n obis_number?: string\n unit?: string\n direction?: "feed-in" | "feed-out"\n tariff_type?: "ht" | "nt"\n value?: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n timestamp?: string\n source?: "ECP" | "ERP" | "360" | "journey-submission"\n}\n```\n\n### `ActivityId`\n\nSee https://github.com/ulid/spec\n\n```ts\ntype ActivityId = string // ulid\n```\n';
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
exports.default = metering_default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import "./chunk-YPSWSI3M.js";
|
|
2
|
+
|
|
3
|
+
// src/docs/metering.json
|
|
4
|
+
var metering_default = '# Metering API\n\n- **Base URL:** `https://metering.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/metering](https://docs.epilot.io/api/metering)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.metering.getCustomerMeters(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/metering\'\n\nconst meteringClient = getClient()\nauthorize(meteringClient, () => \'<token>\')\nconst { data } = await meteringClient.getCustomerMeters(...)\n```\n\n## Operations\n\n**ECP**\n- [`getCustomerMeters`](#getcustomermeters)\n- [`getMetersByContractId`](#getmetersbycontractid)\n- [`updateMeter`](#updatemeter)\n- [`getMeter`](#getmeter)\n- [`getMeterCounters`](#getmetercounters)\n- [`getCounterDetails`](#getcounterdetails)\n- [`createPortalMeterReadings`](#createportalmeterreadings)\n\n**ECP Admin**\n- [`createMeterReading`](#createmeterreading)\n- [`createMeterReadings`](#createmeterreadings)\n- [`batchWriteMeterReadings`](#batchwritemeterreadings)\n- [`createMeterReadingFromSubmission`](#createmeterreadingfromsubmission)\n- [`getAllowedReadingForMeter`](#getallowedreadingformeter)\n- [`createReadingWithMeter`](#createreadingwithmeter)\n- [`getReadingsByInterval`](#getreadingsbyinterval)\n- [`updateMeterReading`](#updatemeterreading)\n- [`deleteMeterReading`](#deletemeterreading)\n\n**Schemas**\n- [`ErrorResp`](#errorresp)\n- [`EntityId`](#entityid)\n- [`EntitySlug`](#entityslug)\n- [`BaseEntity`](#baseentity)\n- [`Entity`](#entity)\n- [`EntityItem`](#entityitem)\n- [`Id`](#id)\n- [`EntityRelation`](#entityrelation)\n- [`Meter`](#meter)\n- [`Direction`](#direction)\n- [`TariffType`](#tarifftype)\n- [`Reason`](#reason)\n- [`ReasonString`](#reasonstring)\n- [`ReadBy`](#readby)\n- [`ReadingStatus`](#readingstatus)\n- [`Reading`](#reading)\n- [`MeterReading`](#meterreading)\n- [`PortalMeterReading`](#portalmeterreading)\n- [`UpdateMeterReading`](#updatemeterreading)\n- [`MeterCounter`](#metercounter)\n- [`CounterReadingOnSubmission`](#counterreadingonsubmission)\n- [`SubmissionMeterReading`](#submissionmeterreading)\n- [`Unit`](#unit)\n- [`Source`](#source)\n- [`ActionLabel`](#actionlabel)\n- [`Rule`](#rule)\n- [`JourneyActions`](#journeyactions)\n- [`ReadingWithMeter`](#readingwithmeter)\n- [`ActivityId`](#activityid)\n\n### `getCustomerMeters`\n\nGet Customer Meters\n\n`GET /v1/metering/meter`\n\n```ts\nconst { data } = await client.getCustomerMeters()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "journey_actions": {\n "journey_id": "string",\n "action_label": {\n "en": "string",\n "de": "string"\n },\n "slug": "string",\n "rules": [\n {\n "entity": "string",\n "attribute": "string",\n "attribute_value": "string"\n }\n ]\n },\n "last_reading": "2022-10-10T00:00:00.000Z",\n "current_consumption": 100.5\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getMetersByContractId`\n\nRetrieves all meters related to a contract.\n\n`GET /v1/metering/contract/meters/{contract_id}`\n\n```ts\nconst { data } = await client.getMetersByContractId({\n contract_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `updateMeter`\n\nUpdate Meter\n\n`PATCH /v1/metering/meter/{id}`\n\n```ts\nconst { data } = await client.updateMeter(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n }\n }\n}\n```\n\n</details>\n\n---\n\n### `getMeter`\n\nGet Meter\n\n`GET /v1/metering/meter/{id}`\n\n```ts\nconst { data } = await client.getMeter({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "entity": {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter",\n "ma_lo_id": "A09-123",\n "status": "active",\n "meter_type": "three-phase-meter",\n "tariff_type": "Peak load tariff",\n "meter_number": "J-1093-1AK",\n "sector": "power",\n "location": [\n {\n "country": "Germany",\n "city": "Koln",\n "postal_code": 81475,\n "street": "Melateng\xFCrtel",\n "street_number": 71,\n "additional_info": "5. Etage",\n "_tags": ["billing", "delivery"]\n }\n ],\n "used_for": "Domestic Usage",\n "manufacturer": "Energy One",\n "calibration_date": "2022-10-10T00:00:00.000Z",\n "contract": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n },\n "customer": {\n "$relation": [\n {\n "entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_slug": "contact"\n }\n ]\n }\n },\n "journey_actions": {\n "journey_id": "string",\n "action_label": {\n "en": "string",\n "de": "string"\n },\n "slug": "string",\n "rules": [\n {\n "entity": "string",\n "attribute": "string",\n "attribute_value": "string"\n }\n ]\n },\n "relations": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z"\n }\n ]\n }\n}\n```\n\n</details>\n\n---\n\n### `getMeterCounters`\n\nGet Meter Counters\n\n`GET /v1/metering/counter`\n\n```ts\nconst { data } = await client.getMeterCounters({\n meter_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter_counter",\n "obis_number": "A-34",\n "direction": "feed-in",\n "transformer_ratio": 70,\n "unit": "string",\n "forecast_reading_value": 270,\n "forecast_as_of": "2022-12-10T00:00:00.000Z",\n "current_consumption": 240,\n "last_reading": "2022-10-10T00:00:00.000Z",\n "conversion_factor": 3,\n "tariff_type": "ht"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getCounterDetails`\n\nGet Counter Details\n\n`GET /v1/metering/counter/{counter_id}`\n\n```ts\nconst { data } = await client.getCounterDetails({\n counter_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_title": "Example Entity",\n "_org": "123",\n "_tags": ["example", "mock"],\n "_created_at": "2021-02-09T12:41:43.662Z",\n "_updated_at": "2021-02-09T12:41:43.662Z",\n "_schema": "meter_counter",\n "obis_number": "A-34",\n "direction": "feed-in",\n "transformer_ratio": 70,\n "unit": "string",\n "forecast_reading_value": 270,\n "forecast_as_of": "2022-12-10T00:00:00.000Z",\n "current_consumption": 240,\n "last_reading": "2022-10-10T00:00:00.000Z",\n "conversion_factor": 3,\n "tariff_type": "ht"\n }\n}\n```\n\n</details>\n\n---\n\n### `createMeterReading`\n\nCreate Meter Reading\n\n`POST /v1/metering/reading`\n\n```ts\nconst { data } = await client.createMeterReading(\n null,\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n}\n```\n\n</details>\n\n---\n\n### `createMeterReadings`\n\nCreate Meter Readings\n\n`POST /v1/metering/readings`\n\n```ts\nconst { data } = await client.createMeterReadings(\n {\n async: true,\n activity_id: \'example\',\n skip_validation: true,\n },\n {\n readings: [\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createPortalMeterReadings`\n\nInserts multiple meter readings at once for a given meter. Limited to 2 readings per request.\n\n`POST /v1/metering/readings/{meter_id}`\n\n```ts\nconst { data } = await client.createPortalMeterReadings(\n {\n meter_id: \'example\',\n },\n {\n readings: [\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `batchWriteMeterReadings`\n\nBatch Write Readings\n\n`POST /v2/metering/readings`\n\n```ts\nconst { data } = await client.batchWriteMeterReadings(\n {\n async: true,\n skip_validation: true,\n activity_id: \'example\',\n },\n {\n identifiers: [\'string\'],\n readings: [\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n },\n note: \'string\',\n unit: \'string\',\n operation: \'create\'\n }\n ]\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createMeterReadingFromSubmission`\n\nCreate Meter Reading from Submission\n\n`POST /v1/metering/reading/submission`\n\n```ts\nconst { data } = await client.createMeterReadingFromSubmission(\n null,\n {\n org_id: \'123\',\n entity: {\n _org: \'123\',\n meterReadings: [\n {\n meterId: \'string\',\n readings: [\n {\n counterId: \'string\',\n direction: \'feed-in\',\n unit: \'string\',\n value: 240\n }\n ],\n readingValue: 240,\n readingDate: \'2022-10-10T10:10:00.000Z\',\n readBy: \'John Doe\',\n reason: \'\',\n maloId: \'A09-123\',\n obisNumber: \'A-34\',\n readingUnit: \'string\',\n meterType: \'one_tariff\',\n feedInValue: 240,\n feedOutValue: 240,\n htValue: 240,\n ntValue: 240\n }\n ]\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "message": "Successfully Processed"\n}\n```\n\n</details>\n\n---\n\n### `getAllowedReadingForMeter`\n\nGet allowed reading for the given meter\n\n`GET /v1/metering/allowed/reading/{meter_id}`\n\n```ts\nconst { data } = await client.getAllowedReadingForMeter({\n meter_id: \'example\',\n timestamp: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": [\n {\n "counter_id": "string",\n "min_value": 0,\n "max_value": 0\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createReadingWithMeter`\n\nCreate Reading with Meter\n\n`POST /v1/metering/reading/with-meter`\n\n```ts\nconst { data } = await client.createReadingWithMeter(\n null,\n {\n ma_lo_id: \'A09-123\',\n meter_id: \'string\',\n obis_number: \'A-34\',\n unit: \'string\',\n direction: \'feed-in\',\n tariff_type: \'ht\',\n value: 240,\n read_by: \'John Doe\',\n reason: \'\',\n timestamp: \'2022-10-10T10:10:00.000Z\',\n source: \'ECP\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n}\n```\n\n</details>\n\n---\n\n### `getReadingsByInterval`\n\nGet Readings by Interval\n\n`GET /v1/metering/reading/{meter_id}/{counter_id}`\n\n```ts\nconst { data } = await client.getReadingsByInterval({\n meter_id: \'example\',\n counter_id: \'example\',\n start_date: \'example\',\n end_date: \'example\',\n direction: \'example\',\n size: 1,\n from: 1,\n type: \'example\',\n sort: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n ],\n "hits": 120,\n "firstRecordCreatedAt": "2022-10-01T20:00:00.000Z"\n}\n```\n\n</details>\n\n---\n\n### `updateMeterReading`\n\nUpdate Meter Reading\n\n`PUT /v1/metering/reading/{meter_id}/{counter_id}`\n\n```ts\nconst { data } = await client.updateMeterReading(\n {\n meter_id: \'example\',\n counter_id: \'example\',\n timestamp: \'example\',\n },\n {\n value: 240,\n read_by: \'John Doe\',\n reason: \'string\',\n meter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n counter_id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n direction: \'feed-in\',\n timestamp: \'2022-10-10T00:00:00.000Z\',\n source: \'ECP\',\n status: \'valid\',\n external_id: \'string\',\n remark: \'Customer reported unusual consumption\',\n metadata: {\n registration_id: \'1234567890\',\n business_unit: \'ABC\'\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "value": 240,\n "read_by": "John Doe",\n "reason": "",\n "meter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "counter_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "direction": "feed-in",\n "timestamp": "2022-10-10T00:00:00.000Z",\n "source": "ECP",\n "status": "valid",\n "external_id": "string",\n "remark": "Customer reported unusual consumption",\n "metadata": {\n "registration_id": "1234567890",\n "business_unit": "ABC"\n },\n "note": "string",\n "unit": "string"\n }\n}\n```\n\n</details>\n\n---\n\n### `deleteMeterReading`\n\nDelete Meter Reading\n\n`DELETE /v1/metering/reading/{meter_id}/{counter_id}`\n\n```ts\nconst { data } = await client.deleteMeterReading({\n meter_id: \'example\',\n counter_id: \'example\',\n timestamp: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "data": {\n "meterId": "string",\n "counterId": "string",\n "timestamp": "2022-10-01T20:00:00.000Z"\n }\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `ErrorResp`\n\n```ts\ntype ErrorResp = {\n message?: string\n}\n```\n\n### `EntityId`\n\n```ts\ntype EntityId = string // uuid\n```\n\n### `EntitySlug`\n\nURL-friendly identifier for the entity schema\n\n```ts\ntype EntitySlug = string\n```\n\n### `BaseEntity`\n\n```ts\ntype BaseEntity = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n\n### `Entity`\n\n```ts\ntype Entity = Record<string, unknown>\n```\n\n### `EntityItem`\n\n```ts\ntype EntityItem = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n\n### `Id`\n\n```ts\ntype Id = string\n```\n\n### `EntityRelation`\n\n```ts\ntype EntityRelation = {\n entity_id?: string // uuid\n _slug?: "contact" | "contract"\n}\n```\n\n### `Meter`\n\n```ts\ntype Meter = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _schema: "meter"\n ma_lo_id?: string\n status?: "active" | "decommissioned"\n meter_type?: "three-phase-meter" | "bellow-gas-meter" | "rotary-piston-meter" | "smart-meter" | "performance-meter" | "maximum-meter" | "turbine-gas-meter" | "ultrasonic-gas-meter" | "alternating-current-meter" | "modern-metering-system" | "intelligent-measuring-system" | "electronic-meter"\n tariff_type?: string\n meter_number?: string\n sector?: "power" | "water" | "gas" | "district_heating" | "waste_water"\n location?: object\n used_for?: string\n manufacturer?: string\n calibration_date?: string\n contract?: {\n $relation?: Array<{\n entity_id?: { ... }\n _slug?: { ... }\n }>\n }\n customer?: {\n $relation?: Array<{\n entity_id?: { ... }\n _slug?: { ... }\n }>\n }\n}\n```\n\n### `Direction`\n\n```ts\ntype Direction = "feed-in" | "feed-out"\n```\n\n### `TariffType`\n\n```ts\ntype TariffType = "ht" | "nt"\n```\n\n### `Reason`\n\nThe reason for recording the reading\nIf no reason is specified or left empty, the Epilot UI will show \'Regular\' as the default display text\n\n\n```ts\ntype Reason = "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n```\n\n### `ReasonString`\n\nThis field is deprecated. Please use the Reason enum instead.\n\n\n```ts\ntype ReasonString = string\n```\n\n### `ReadBy`\n\nThe person who recorded the reading\n\n```ts\ntype ReadBy = string\n```\n\n### `ReadingStatus`\n\n```ts\ntype ReadingStatus = "valid" | "in-validation" | "implausible" | null | ""\n```\n\n### `Reading`\n\n```ts\ntype Reading = {\n value: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n meter_id?: string // uuid\n counter_id?: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n note?: string\n unit?: string\n}\n```\n\n### `MeterReading`\n\n```ts\ntype MeterReading = {\n value: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n meter_id: string // uuid\n counter_id?: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n note?: string\n unit?: string\n}\n```\n\n### `PortalMeterReading`\n\n```ts\ntype PortalMeterReading = {\n value: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n meter_id?: string // uuid\n counter_id: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n note?: string\n unit?: string\n}\n```\n\n### `UpdateMeterReading`\n\n```ts\ntype UpdateMeterReading = {\n value: number\n read_by?: string\n reason?: string\n meter_id: string // uuid\n counter_id?: string // uuid\n direction?: "feed-in" | "feed-out"\n timestamp?: string // date-time\n source: "ECP" | "ERP" | "360" | "journey-submission"\n status?: "valid" | "in-validation" | "implausible" | null | ""\n external_id?: string\n remark?: string\n metadata?: Record<string, string>\n}\n```\n\n### `MeterCounter`\n\n```ts\ntype MeterCounter = {\n _id: string // uuid\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _schema: "meter_counter"\n obis_number?: string\n direction?: "feed-in" | "feed-out"\n transformer_ratio?: number\n unit?: string\n forecast_reading_value?: string\n forecast_as_of?: string\n current_consumption?: number\n last_reading?: string\n conversion_factor?: number\n tariff_type?: "ht" | "nt"\n}\n```\n\n### `CounterReadingOnSubmission`\n\n```ts\ntype CounterReadingOnSubmission = {\n counterId: string\n direction: "feed-in" | "feed-out"\n unit?: string\n value: number\n}\n```\n\n### `SubmissionMeterReading`\n\n```ts\ntype SubmissionMeterReading = {\n meterId: string\n readings?: Array<{\n counterId: string\n direction: "feed-in" | "feed-out"\n unit?: string\n value: number\n }>\n readingValue?: number\n readingDate?: string\n readBy?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n maloId?: string\n obisNumber?: string\n readingUnit?: string\n meterType?: "one_tariff" | "two_tariff" | "bi_directional"\n feedInValue?: number\n feedOutValue?: number\n htValue?: number\n ntValue?: number\n}\n```\n\n### `Unit`\n\n```ts\ntype Unit = string\n```\n\n### `Source`\n\n```ts\ntype Source = "ECP" | "ERP" | "360" | "journey-submission"\n```\n\n### `ActionLabel`\n\n```ts\ntype ActionLabel = {\n en?: string\n de?: string\n}\n```\n\n### `Rule`\n\n```ts\ntype Rule = {\n entity?: string\n attribute?: string\n attribute_value?: string\n}\n```\n\n### `JourneyActions`\n\n```ts\ntype JourneyActions = {\n journey_id?: string\n action_label?: {\n en?: string\n de?: string\n }\n slug?: string\n rules?: Array<{\n entity?: string\n attribute?: string\n attribute_value?: string\n }>\n}\n```\n\n### `ReadingWithMeter`\n\n```ts\ntype ReadingWithMeter = {\n ma_lo_id?: string\n meter_id?: string\n obis_number?: string\n unit?: string\n direction?: "feed-in" | "feed-out"\n tariff_type?: "ht" | "nt"\n value?: number\n read_by?: string\n reason?: "" | "regular" | "irregular" | "last" | "first" | "meter_change" | "contract_change" | "meter_adjustment"\n timestamp?: string\n source?: "ECP" | "ERP" | "360" | "journey-submission"\n}\n```\n\n### `ActivityId`\n\nSee https://github.com/ulid/spec\n\n```ts\ntype ActivityId = string // ulid\n```\n';
|
|
5
|
+
export {
|
|
6
|
+
metering_default as default
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import "./chunk-YPSWSI3M.js";
|
|
2
|
+
|
|
3
|
+
// src/docs/notes.json
|
|
4
|
+
var notes_default = '# Notes API\n\n- **Base URL:** `https://notes.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/notes](https://docs.epilot.io/api/notes)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.notes.createNote(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/notes\'\n\nconst notesClient = getClient()\nauthorize(notesClient, () => \'<token>\')\nconst { data } = await notesClient.createNote(...)\n```\n\n## Operations\n\n**Notes**\n- [`createNote`](#createnote)\n- [`getNote`](#getnote)\n- [`patchNote`](#patchnote)\n- [`updateNote`](#updatenote)\n- [`deleteNote`](#deletenote)\n- [`searchNotesByContext`](#searchnotesbycontext)\n- [`getNoteContexts`](#getnotecontexts)\n\n**Pinning**\n- [`pinNote`](#pinnote)\n\n**Reactions**\n- [`addNoteReaction`](#addnotereaction)\n- [`removeNoteReaction`](#removenotereaction)\n- [`toggleNoteReactions`](#togglenotereactions)\n\n**Schemas**\n- [`NotePostRequestBody`](#notepostrequestbody)\n- [`ContextType`](#contexttype)\n- [`NoteEntity`](#noteentity)\n- [`Entity`](#entity)\n- [`CreatedByType`](#createdbytype)\n- [`NoteGetRequestResponse`](#notegetrequestresponse)\n- [`NotePatchRequestBody`](#notepatchrequestbody)\n- [`NonHydratedNoteEntity`](#nonhydratednoteentity)\n- [`NoteEntityParent`](#noteentityparent)\n- [`NotePutRequestBody`](#noteputrequestbody)\n- [`NoteSearchByContextRequestBody`](#notesearchbycontextrequestbody)\n- [`NotesSearchRequestResponse`](#notessearchrequestresponse)\n- [`NoteContexts`](#notecontexts)\n- [`WorkflowExecution`](#workflowexecution)\n- [`ReactionRequest`](#reactionrequest)\n- [`ToggleReactionsRequest`](#togglereactionsrequest)\n\n### `createNote`\n\nCreates a new Note entry\n\n`POST /v1/note`\n\n```ts\nconst { data } = await client.createNote(\n null,\n {\n _tags: [\'string\'],\n type: \'string\',\n entity_id: \'string\',\n parent_id: \'string\',\n contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n additional_contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n content: \'string\',\n attachments: [\'string\'],\n read_by: [\'string\']\n },\n)\n```\n\n---\n\n### `getNote`\n\nRetrieves a single Note entry based on it\'s Entity ID\n\n`GET /v1/note/{id}`\n\n```ts\nconst { data } = await client.getNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n hydrate: true,\n})\n```\n\n---\n\n### `patchNote`\n\nUpdates an existing Note entry\n\n`PATCH /v1/note/{id}`\n\n```ts\nconst { data } = await client.patchNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `updateNote`\n\nUpdates an existing Note entry\n\n`PUT /v1/note/{id}`\n\n```ts\nconst { data } = await client.updateNote(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n _id: \'string\',\n _org: \'string\',\n _schema: \'string\',\n _created_at: \'1970-01-01T00:00:00.000Z\',\n _updated_at: \'1970-01-01T00:00:00.000Z\',\n _created_by: \'string\',\n _tags: [\'string\'],\n _acl: {},\n _owners: [\n {\n org_id: \'string\',\n user_id: \'string\'\n }\n ],\n type: \'string\',\n context_entities: {\n $relation: [\n {\n entity_id: \'string\'\n }\n ]\n },\n parent: {\n $relation: [\n {\n entity_id: \'string\'\n }\n ]\n },\n attachments: {\n $relation: [\n {\n entity_id: \'string\'\n }\n ]\n },\n content: \'string\',\n contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n pinned_at: \'1970-01-01T00:00:00.000Z\',\n created_by: {\n type: \'user\',\n user_id: \'string\',\n display_name: \'string\',\n org_id: \'string\',\n email: \'string\',\n phone: \'string\'\n },\n read_by: [\'string\'],\n reactions: {}\n },\n)\n```\n\n---\n\n### `deleteNote`\n\nDeletes a single Note entry based on it\'s Entity ID\n\n`DELETE /v1/note/{id}`\n\n```ts\nconst { data } = await client.deleteNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `searchNotesByContext`\n\nSearch for a paginated list of Notes based on one or more contexts\n\n`POST /v1/notes:search`\n\n```ts\nconst { data } = await client.searchNotesByContext(\n null,\n {\n contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n from: 0,\n size: 10\n },\n)\n```\n\n---\n\n### `pinNote`\n\nPins a single Note entry based on it\'s Entity ID\n\n`POST /v1/note/{id}/pin`\n\n```ts\nconst { data } = await client.pinNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getNoteContexts`\n\nGets all the Entity and non-Entity records the Note is contextually attached to\n\n`GET /v1/note/{id}/context`\n\n```ts\nconst { data } = await client.getNoteContexts({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "type": "workflow_execution",\n "context": {\n "_id": "string",\n "_org": "string",\n "_schema": "string",\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_created_by": "string",\n "_tags": ["string"],\n "_acl": {},\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "type": "string"\n }\n }\n]\n```\n\n</details>\n\n---\n\n### `addNoteReaction`\n\nAdds an emoji reaction to a note\n\n`POST /v1/note/{id}/reaction`\n\n```ts\nconst { data } = await client.addNoteReaction(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n emoji: \'thumbs-up\'\n },\n)\n```\n\n---\n\n### `removeNoteReaction`\n\nRemoves an emoji reaction from a note\n\n`DELETE /v1/note/{id}/reaction/{emoji_shortcode}`\n\n```ts\nconst { data } = await client.removeNoteReaction({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n emoji_shortcode: \'example\',\n})\n```\n\n---\n\n### `toggleNoteReactions`\n\nToggles multiple emoji reactions on a note. If a user has already reacted with an emoji, it removes the reaction. If a user hasn\'t reacted with an emoji, it adds the reaction.\n\n`POST /v1/note/{id}/reactions/toggle`\n\n```ts\nconst { data } = await client.toggleNoteReactions(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n emojis: [\'thumbs-up\', \'heart\']\n },\n)\n```\n\n---\n\n## Schemas\n\n### `NotePostRequestBody`\n\n```ts\ntype NotePostRequestBody = {\n _tags?: string[]\n type?: string\n entity_id?: string\n parent_id?: string\n contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n additional_contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n content?: string\n attachments?: string[]\n read_by?: string[]\n}\n```\n\n### `ContextType`\n\n```ts\ntype ContextType = "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n```\n\n### `NoteEntity`\n\nA note Entity object cotaining Entity metadata and content. Relational attributes are hydrated in place.\n\n```ts\ntype NoteEntity = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `Entity`\n\nBase Entity schema\n\n```ts\ntype Entity = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `CreatedByType`\n\n```ts\ntype CreatedByType = "user" | "group"\n```\n\n### `NoteGetRequestResponse`\n\n```ts\ntype NoteGetRequestResponse = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `NotePatchRequestBody`\n\n```ts\ntype NotePatchRequestBody = {\n _tags?: string[]\n type?: string\n attachments?: {\n $relation?: Array<{\n entity_id: { ... }\n }>\n }\n comments?: Array<{\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n type?: string\n }>\n content?: string\n contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n pinned_at?: string // date-time\n created_by?: {\n type: "user" | "group"\n user_id?: string\n display_name?: string\n org_id?: string\n email?: string\n phone?: string\n }\n read_by?: string[]\n reactions?: Record<string, string[]>\n}\n```\n\n### `NonHydratedNoteEntity`\n\nA note Entity object cotaining Entity metadata and content. Relational attributes are not hydrated in place.\n\n```ts\ntype NonHydratedNoteEntity = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `NoteEntityParent`\n\nThe Note\'s parent Note\n\n```ts\ntype NoteEntityParent = {\n $relation?: Array<{\n entity_id: string\n }>\n}\n```\n\n### `NotePutRequestBody`\n\n```ts\ntype NotePutRequestBody = {\n _id?: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n context_entities?: {\n $relation: Array<{\n entity_id: { ... }\n }>\n }\n parent?: {\n $relation?: Array<{\n entity_id: { ... }\n }>\n }\n attachments?: {\n $relation?: Array<{\n entity_id: { ... }\n }>\n }\n content?: string\n contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n pinned_at?: string // date-time\n created_by?: {\n type: "user" | "group"\n user_id?: string\n display_name?: string\n org_id?: string\n email?: string\n phone?: string\n }\n read_by?: string[]\n reactions?: Record<string, string[]>\n}\n```\n\n### `NoteSearchByContextRequestBody`\n\n```ts\ntype NoteSearchByContextRequestBody = {\n contexts: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n from?: number\n size?: number\n}\n```\n\n### `NotesSearchRequestResponse`\n\n```ts\ntype NotesSearchRequestResponse = {\n hits?: number\n results: Array<{\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n type?: string\n }>\n}\n```\n\n### `NoteContexts`\n\nList of resolved Entity and non-Entity contexts attached to a given Note.\n\n```ts\ntype NoteContexts = {\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n context: {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n type?: string\n } | {\n id: string\n definitionId: string\n orgId: string\n name: string\n }\n}\n```\n\n### `WorkflowExecution`\n\nBase metadata for a Workflow Execution. This is a lightweight representation of a Workflow Execution, and does not contain all it\'s data\n\n```ts\ntype WorkflowExecution = {\n id: string\n definitionId: string\n orgId: string\n name: string\n}\n```\n\n### `ReactionRequest`\n\n```ts\ntype ReactionRequest = {\n emoji: string\n}\n```\n\n### `ToggleReactionsRequest`\n\n```ts\ntype ToggleReactionsRequest = {\n emojis: string[]\n}\n```\n';
|
|
5
|
+
export {
|
|
6
|
+
notes_default as default
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
|
|
2
|
+
|
|
3
|
+
// src/docs/notes.json
|
|
4
|
+
var notes_default = '# Notes API\n\n- **Base URL:** `https://notes.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/notes](https://docs.epilot.io/api/notes)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.notes.createNote(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/notes\'\n\nconst notesClient = getClient()\nauthorize(notesClient, () => \'<token>\')\nconst { data } = await notesClient.createNote(...)\n```\n\n## Operations\n\n**Notes**\n- [`createNote`](#createnote)\n- [`getNote`](#getnote)\n- [`patchNote`](#patchnote)\n- [`updateNote`](#updatenote)\n- [`deleteNote`](#deletenote)\n- [`searchNotesByContext`](#searchnotesbycontext)\n- [`getNoteContexts`](#getnotecontexts)\n\n**Pinning**\n- [`pinNote`](#pinnote)\n\n**Reactions**\n- [`addNoteReaction`](#addnotereaction)\n- [`removeNoteReaction`](#removenotereaction)\n- [`toggleNoteReactions`](#togglenotereactions)\n\n**Schemas**\n- [`NotePostRequestBody`](#notepostrequestbody)\n- [`ContextType`](#contexttype)\n- [`NoteEntity`](#noteentity)\n- [`Entity`](#entity)\n- [`CreatedByType`](#createdbytype)\n- [`NoteGetRequestResponse`](#notegetrequestresponse)\n- [`NotePatchRequestBody`](#notepatchrequestbody)\n- [`NonHydratedNoteEntity`](#nonhydratednoteentity)\n- [`NoteEntityParent`](#noteentityparent)\n- [`NotePutRequestBody`](#noteputrequestbody)\n- [`NoteSearchByContextRequestBody`](#notesearchbycontextrequestbody)\n- [`NotesSearchRequestResponse`](#notessearchrequestresponse)\n- [`NoteContexts`](#notecontexts)\n- [`WorkflowExecution`](#workflowexecution)\n- [`ReactionRequest`](#reactionrequest)\n- [`ToggleReactionsRequest`](#togglereactionsrequest)\n\n### `createNote`\n\nCreates a new Note entry\n\n`POST /v1/note`\n\n```ts\nconst { data } = await client.createNote(\n null,\n {\n _tags: [\'string\'],\n type: \'string\',\n entity_id: \'string\',\n parent_id: \'string\',\n contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n additional_contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n content: \'string\',\n attachments: [\'string\'],\n read_by: [\'string\']\n },\n)\n```\n\n---\n\n### `getNote`\n\nRetrieves a single Note entry based on it\'s Entity ID\n\n`GET /v1/note/{id}`\n\n```ts\nconst { data } = await client.getNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n hydrate: true,\n})\n```\n\n---\n\n### `patchNote`\n\nUpdates an existing Note entry\n\n`PATCH /v1/note/{id}`\n\n```ts\nconst { data } = await client.patchNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `updateNote`\n\nUpdates an existing Note entry\n\n`PUT /v1/note/{id}`\n\n```ts\nconst { data } = await client.updateNote(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n _id: \'string\',\n _org: \'string\',\n _schema: \'string\',\n _created_at: \'1970-01-01T00:00:00.000Z\',\n _updated_at: \'1970-01-01T00:00:00.000Z\',\n _created_by: \'string\',\n _tags: [\'string\'],\n _acl: {},\n _owners: [\n {\n org_id: \'string\',\n user_id: \'string\'\n }\n ],\n type: \'string\',\n context_entities: {\n $relation: [\n {\n entity_id: \'string\'\n }\n ]\n },\n parent: {\n $relation: [\n {\n entity_id: \'string\'\n }\n ]\n },\n attachments: {\n $relation: [\n {\n entity_id: \'string\'\n }\n ]\n },\n content: \'string\',\n contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n pinned_at: \'1970-01-01T00:00:00.000Z\',\n created_by: {\n type: \'user\',\n user_id: \'string\',\n display_name: \'string\',\n org_id: \'string\',\n email: \'string\',\n phone: \'string\'\n },\n read_by: [\'string\'],\n reactions: {}\n },\n)\n```\n\n---\n\n### `deleteNote`\n\nDeletes a single Note entry based on it\'s Entity ID\n\n`DELETE /v1/note/{id}`\n\n```ts\nconst { data } = await client.deleteNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `searchNotesByContext`\n\nSearch for a paginated list of Notes based on one or more contexts\n\n`POST /v1/notes:search`\n\n```ts\nconst { data } = await client.searchNotesByContext(\n null,\n {\n contexts: [\n {\n type: \'workflow_execution\',\n id: \'string\'\n }\n ],\n from: 0,\n size: 10\n },\n)\n```\n\n---\n\n### `pinNote`\n\nPins a single Note entry based on it\'s Entity ID\n\n`POST /v1/note/{id}/pin`\n\n```ts\nconst { data } = await client.pinNote({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `getNoteContexts`\n\nGets all the Entity and non-Entity records the Note is contextually attached to\n\n`GET /v1/note/{id}/context`\n\n```ts\nconst { data } = await client.getNoteContexts({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "type": "workflow_execution",\n "context": {\n "_id": "string",\n "_org": "string",\n "_schema": "string",\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_created_by": "string",\n "_tags": ["string"],\n "_acl": {},\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "type": "string"\n }\n }\n]\n```\n\n</details>\n\n---\n\n### `addNoteReaction`\n\nAdds an emoji reaction to a note\n\n`POST /v1/note/{id}/reaction`\n\n```ts\nconst { data } = await client.addNoteReaction(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n emoji: \'thumbs-up\'\n },\n)\n```\n\n---\n\n### `removeNoteReaction`\n\nRemoves an emoji reaction from a note\n\n`DELETE /v1/note/{id}/reaction/{emoji_shortcode}`\n\n```ts\nconst { data } = await client.removeNoteReaction({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n emoji_shortcode: \'example\',\n})\n```\n\n---\n\n### `toggleNoteReactions`\n\nToggles multiple emoji reactions on a note. If a user has already reacted with an emoji, it removes the reaction. If a user hasn\'t reacted with an emoji, it adds the reaction.\n\n`POST /v1/note/{id}/reactions/toggle`\n\n```ts\nconst { data } = await client.toggleNoteReactions(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n emojis: [\'thumbs-up\', \'heart\']\n },\n)\n```\n\n---\n\n## Schemas\n\n### `NotePostRequestBody`\n\n```ts\ntype NotePostRequestBody = {\n _tags?: string[]\n type?: string\n entity_id?: string\n parent_id?: string\n contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n additional_contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n content?: string\n attachments?: string[]\n read_by?: string[]\n}\n```\n\n### `ContextType`\n\n```ts\ntype ContextType = "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n```\n\n### `NoteEntity`\n\nA note Entity object cotaining Entity metadata and content. Relational attributes are hydrated in place.\n\n```ts\ntype NoteEntity = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `Entity`\n\nBase Entity schema\n\n```ts\ntype Entity = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `CreatedByType`\n\n```ts\ntype CreatedByType = "user" | "group"\n```\n\n### `NoteGetRequestResponse`\n\n```ts\ntype NoteGetRequestResponse = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `NotePatchRequestBody`\n\n```ts\ntype NotePatchRequestBody = {\n _tags?: string[]\n type?: string\n attachments?: {\n $relation?: Array<{\n entity_id: { ... }\n }>\n }\n comments?: Array<{\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n type?: string\n }>\n content?: string\n contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n pinned_at?: string // date-time\n created_by?: {\n type: "user" | "group"\n user_id?: string\n display_name?: string\n org_id?: string\n email?: string\n phone?: string\n }\n read_by?: string[]\n reactions?: Record<string, string[]>\n}\n```\n\n### `NonHydratedNoteEntity`\n\nA note Entity object cotaining Entity metadata and content. Relational attributes are not hydrated in place.\n\n```ts\ntype NonHydratedNoteEntity = {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n}\n```\n\n### `NoteEntityParent`\n\nThe Note\'s parent Note\n\n```ts\ntype NoteEntityParent = {\n $relation?: Array<{\n entity_id: string\n }>\n}\n```\n\n### `NotePutRequestBody`\n\n```ts\ntype NotePutRequestBody = {\n _id?: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n type?: string\n context_entities?: {\n $relation: Array<{\n entity_id: { ... }\n }>\n }\n parent?: {\n $relation?: Array<{\n entity_id: { ... }\n }>\n }\n attachments?: {\n $relation?: Array<{\n entity_id: { ... }\n }>\n }\n content?: string\n contexts?: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n pinned_at?: string // date-time\n created_by?: {\n type: "user" | "group"\n user_id?: string\n display_name?: string\n org_id?: string\n email?: string\n phone?: string\n }\n read_by?: string[]\n reactions?: Record<string, string[]>\n}\n```\n\n### `NoteSearchByContextRequestBody`\n\n```ts\ntype NoteSearchByContextRequestBody = {\n contexts: Array<{\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n id: string\n }>\n from?: number\n size?: number\n}\n```\n\n### `NotesSearchRequestResponse`\n\n```ts\ntype NotesSearchRequestResponse = {\n hits?: number\n results: Array<{\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n type?: string\n }>\n}\n```\n\n### `NoteContexts`\n\nList of resolved Entity and non-Entity contexts attached to a given Note.\n\n```ts\ntype NoteContexts = {\n type: "workflow_execution" | "workflow_task" | "workflow_configuration" | "journey_configuration" | "entity"\n context: {\n _id: string\n _org?: string\n _schema?: string\n _created_at?: string // date-time\n _updated_at?: string // date-time\n _created_by?: string | number\n _tags?: string[]\n _acl?: Record<string, string[]>\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n type?: string\n } | {\n id: string\n definitionId: string\n orgId: string\n name: string\n }\n}\n```\n\n### `WorkflowExecution`\n\nBase metadata for a Workflow Execution. This is a lightweight representation of a Workflow Execution, and does not contain all it\'s data\n\n```ts\ntype WorkflowExecution = {\n id: string\n definitionId: string\n orgId: string\n name: string\n}\n```\n\n### `ReactionRequest`\n\n```ts\ntype ReactionRequest = {\n emoji: string\n}\n```\n\n### `ToggleReactionsRequest`\n\n```ts\ntype ToggleReactionsRequest = {\n emojis: string[]\n}\n```\n';
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
exports.default = notes_default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
|
|
2
|
+
|
|
3
|
+
// src/docs/notification.json
|
|
4
|
+
var notification_default = '# Notification API\n\n- **Base URL:** `https://notification.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/notification](https://docs.epilot.io/api/notification)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.notification.getNotificationsV2(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/notification\'\n\nconst notificationClient = getClient()\nauthorize(notificationClient, () => \'<token>\')\nconst { data } = await notificationClient.getNotificationsV2(...)\n```\n\n## Operations\n\n**Notification**\n- [`getNotificationsV2`](#getnotificationsv2)\n- [`createNotification`](#createnotification)\n- [`getNotifications`](#getnotifications)\n- [`getNotification`](#getnotification)\n- [`markAllAsRead`](#markallasread)\n- [`markAsRead`](#markasread)\n- [`getTotalUnread`](#gettotalunread)\n\n**Template**\n- [`listNotificationTemplates`](#listnotificationtemplates)\n- [`createNotificationTemplate`](#createnotificationtemplate)\n- [`getNotificationTemplate`](#getnotificationtemplate)\n- [`updateNotificationTemplate`](#updatenotificationtemplate)\n- [`patchNotificationTemplate`](#patchnotificationtemplate)\n- [`deleteNotificationTemplate`](#deletenotificationtemplate)\n- [`sendPreview`](#sendpreview)\n\n**Schemas**\n- [`Error`](#error)\n- [`EntityOperation`](#entityoperation)\n- [`NotificationItem`](#notificationitem)\n- [`Notification`](#notification)\n- [`NotificationBase`](#notificationbase)\n- [`EntityId`](#entityid)\n- [`Entity`](#entity)\n- [`Id`](#id)\n- [`NotificationId`](#notificationid)\n- [`NotificationCallerContext`](#notificationcallercontext)\n- [`EntitySlug`](#entityslug)\n- [`EntityOwner`](#entityowner)\n- [`EntityAcl`](#entityacl)\n- [`NotificationTemplate`](#notificationtemplate)\n- [`CreateNotificationTemplateInput`](#createnotificationtemplateinput)\n- [`UpdateNotificationTemplateInput`](#updatenotificationtemplateinput)\n- [`NotificationTemplateListResponse`](#notificationtemplatelistresponse)\n- [`SendPreviewInput`](#sendpreviewinput)\n- [`SendPreviewResponse`](#sendpreviewresponse)\n\n### `getNotificationsV2`\n\nGet notifications items. These items may eventually contain entities within their payload, which can be hydrated by the client if desired by calling the Entity API directly.\n\n`GET /v2/notification/notifications`\n\n```ts\nconst { data } = await client.getNotificationsV2({\n cursor: \'example\',\n after_id: 1,\n limit: 1,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "cursor": "eyJjcmVhd",\n "total": 1,\n "total_unread": 1,\n "results": [\n {\n "id": 123456789,\n "notification_id": 123456789,\n "timestamp": "1970-01-01T00:00:00.000Z",\n "read_state": false,\n "type": "workflow",\n "redirect_url": "https://epilot.cloud",\n "organization_id": "206801",\n "title": {\n "en": "My custom notification",\n "de": "Meine benutzerdefinierte Aktivit\xE4t"\n },\n "message": {\n "en": "{{caller}} did something with {{contact.entity.id}} {{branch.name}}.",\n "de": "{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}."\n },\n "payload": {\n "entity": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "schema": "contact"\n }\n },\n "caller": {\n "EpilotAuth": {\n "token": {\n "sub": "476e9b48-42f4-4234-a2b0-4668b34626ce",\n "cognito:groups": ["Administrator"],\n "cognito:preferred_role": "arn:aws:iam::912468240823:role/base-administrator-role",\n "iss": "https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D",\n "custom:ivy_org_id": "739224",\n "cognito:username": "n.ahmad@epilot.cloud",\n "custom:ivy_user_id": "10006129",\n "cognito:roles": ["arn:aws:iam::912468240823:role/base-administrator-role"],\n "aud": "6e0jbdnger7nmoktaaflarue1l",\n "event_id": "cd5f5583-d90c-4db5-8e99-5f5dd29a4d75",\n "token_use": "id",\n "auth_time": 1614333023,\n "exp": 1614336623,\n "iat": 1614333023,\n "email": "n.ahmad@epilot.cloud"\n }\n }\n },\n "operations": [\n {\n "entity": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "operation": "updateEntity",\n "params": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "slug": "contact"\n },\n "payload": {\n "_schema": "contact",\n "_org": "123",\n "status": "Inactive"\n }\n }\n ],\n "force_notify_users": {\n "12345": {\n "email": false,\n "in_app": false\n }\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createNotification`\n\nCreate a message that can be displayed in the notification panel.\n\n`POST /v1/notification/notifications`\n\n```ts\nconst { data } = await client.createNotification(\n null,\n {\n notification_id: 0,\n timestamp: \'1970-01-01T00:00:00.000Z\',\n type: \'workflow\',\n redirect_url: \'https://epilot.cloud\',\n organization_id: \'206801\',\n title: {\n en: \'My custom notification\',\n de: \'Meine benutzerdefinierte Aktivit\xE4t\'\n },\n message: {\n en: \'{{caller}} did something with {{contact.entity.id}} {{branch.name}}.\',\n de: \'{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}.\'\n },\n payload: {\n entity: {\n id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n schema: \'contact\'\n }\n },\n caller: {\n EpilotAuth: {\n token: {\n sub: \'476e9b48-42f4-4234-a2b0-4668b34626ce\',\n \'cognito:groups\': [\'Administrator\'],\n \'cognito:preferred_role\': \'arn:aws:iam::912468240823:role/base-administrator-role\',\n iss: \'https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D\',\n \'custom:ivy_org_id\': \'739224\',\n \'cognito:username\': \'n.ahmad@epilot.cloud\',\n \'custom:ivy_user_id\': \'10006129\',\n \'cognito:roles\': [\'arn:aws:iam::912468240823:role/base-administrator-role\'],\n aud: \'6e0jbdnger7nmoktaaflarue1l\',\n event_id: \'cd5f5583-d90c-4db5-8e99-5f5dd29a4d75\',\n token_use: \'id\',\n auth_time: 1614333023,\n exp: 1614336623,\n iat: 1614333023,\n email: \'n.ahmad@epilot.cloud\'\n }\n }\n },\n operations: [\n {\n entity: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n operation: \'updateEntity\',\n params: {\n id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n slug: \'contact\'\n },\n payload: {\n _schema: \'contact\',\n _org: \'123\',\n status: \'Inactive\'\n }\n }\n ],\n force_notify_users: {\n \'12345\': {\n email: false,\n in_app: false\n }\n },\n read_state: false,\n visibility_user_ids: [\'1\', \'2\', \'3\', \'4\', \'5\']\n },\n)\n```\n\n---\n\n### `getNotifications`\n\nGet notifications\n\n`GET /v1/notification/notifications`\n\n```ts\nconst { data } = await client.getNotifications({\n after_id: 1,\n limit: 1,\n no_hydrate: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "total": 1,\n "total_unread": 1,\n "results": [\n {\n "id": 123456789,\n "notification_id": 123456789,\n "timestamp": "1970-01-01T00:00:00.000Z",\n "read_state": false,\n "type": "workflow",\n "redirect_url": "https://epilot.cloud",\n "organization_id": "206801",\n "title": {\n "en": "My custom notification",\n "de": "Meine benutzerdefinierte Aktivit\xE4t"\n },\n "message": {\n "en": "{{caller}} did something with {{contact.entity.id}} {{branch.name}}.",\n "de": "{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}."\n },\n "payload": {\n "entity": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "schema": "contact"\n }\n },\n "caller": {\n "EpilotAuth": {\n "token": {\n "sub": "476e9b48-42f4-4234-a2b0-4668b34626ce",\n "cognito:groups": ["Administrator"],\n "cognito:preferred_role": "arn:aws:iam::912468240823:role/base-administrator-role",\n "iss": "https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D",\n "custom:ivy_org_id": "739224",\n "cognito:username": "n.ahmad@epilot.cloud",\n "custom:ivy_user_id": "10006129",\n "cognito:roles": ["arn:aws:iam::912468240823:role/base-administrator-role"],\n "aud": "6e0jbdnger7nmoktaaflarue1l",\n "event_id": "cd5f5583-d90c-4db5-8e99-5f5dd29a4d75",\n "token_use": "id",\n "auth_time": 1614333023,\n "exp": 1614336623,\n "iat": 1614333023,\n "email": "n.ahmad@epilot.cloud"\n }\n }\n },\n "operations": [\n {\n "entity": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "operation": "updateEntity",\n "params": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "slug": "contact"\n },\n "payload": {\n "_schema": "contact",\n "_org": "123",\n "status": "Inactive"\n }\n }\n ],\n "force_notify_users": {\n "12345": {\n "email": false,\n "in_app": false\n }\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getNotification`\n\nGet the details of a single notification.\n\n`GET /v1/notification/notifications/{id}`\n\n```ts\nconst { data } = await client.getNotification({\n id: 1,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": 123456789,\n "notification_id": 123456789,\n "timestamp": "1970-01-01T00:00:00.000Z",\n "read_state": false,\n "type": "workflow",\n "redirect_url": "https://epilot.cloud",\n "organization_id": "206801",\n "title": {\n "en": "My custom notification",\n "de": "Meine benutzerdefinierte Aktivit\xE4t"\n },\n "message": {\n "en": "{{caller}} did something with {{contact.entity.id}} {{branch.name}}.",\n "de": "{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}."\n },\n "payload": {\n "entity": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "schema": "contact"\n }\n },\n "caller": {\n "EpilotAuth": {\n "token": {\n "sub": "476e9b48-42f4-4234-a2b0-4668b34626ce",\n "cognito:groups": ["Administrator"],\n "cognito:preferred_role": "arn:aws:iam::912468240823:role/base-administrator-role",\n "iss": "https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D",\n "custom:ivy_org_id": "739224",\n "cognito:username": "n.ahmad@epilot.cloud",\n "custom:ivy_user_id": "10006129",\n "cognito:roles": ["arn:aws:iam::912468240823:role/base-administrator-role"],\n "aud": "6e0jbdnger7nmoktaaflarue1l",\n "event_id": "cd5f5583-d90c-4db5-8e99-5f5dd29a4d75",\n "token_use": "id",\n "auth_time": 1614333023,\n "exp": 1614336623,\n "iat": 1614333023,\n "email": "n.ahmad@epilot.cloud"\n }\n }\n },\n "operations": [\n {\n "entity": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "operation": "updateEntity",\n "params": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "slug": "contact"\n },\n "payload": {\n "_schema": "contact",\n "_org": "123",\n "status": "Inactive"\n }\n }\n ],\n "force_notify_users": {\n "12345": {\n "email": false,\n "in_app": false\n }\n }\n}\n```\n\n</details>\n\n---\n\n### `markAllAsRead`\n\nMark all as read\n\n`PUT /v1/notification/notifications/mark`\n\n```ts\nconst { data } = await client.markAllAsRead()\n```\n\n---\n\n### `markAsRead`\n\nMark as read\n\n`PUT /v1/notification/notifications/{id}/mark`\n\n```ts\nconst { data } = await client.markAsRead({\n id: 1,\n})\n```\n\n---\n\n### `getTotalUnread`\n\nGet total unread\n\n`GET /v1/notification/unreads`\n\n```ts\nconst { data } = await client.getTotalUnread()\n```\n\n---\n\n### `listNotificationTemplates`\n\nList notification templates with optional filtering and pagination\n\n`GET /v1/notification/templates`\n\n```ts\nconst { data } = await client.listNotificationTemplates({\n q: \'example\',\n from: 1,\n size: 1,\n sort: \'example\',\n fields: \'example\',\n hydrate: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n }\n ],\n "hits": 0\n}\n```\n\n</details>\n\n---\n\n### `createNotificationTemplate`\n\nCreate a new notification template\n\n`POST /v1/notification/templates`\n\n```ts\nconst { data } = await client.createNotificationTemplate(\n null,\n {\n name: \'string\',\n type: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `getNotificationTemplate`\n\nGet a single notification template by ID\n\n`GET /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.getNotificationTemplate({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `updateNotificationTemplate`\n\nUpdate a notification template (full replacement)\n\n`PUT /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.updateNotificationTemplate(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n name: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `patchNotificationTemplate`\n\nPartially update a notification template\n\n`PATCH /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.patchNotificationTemplate(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n name: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `deleteNotificationTemplate`\n\nDelete a notification template permanently\n\n`DELETE /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.deleteNotificationTemplate({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `sendPreview`\n\nSend a preview notification (both email and in-app) to the requesting user.\nUsed to test notification templates before saving.\n\n`POST /v1/notification/templates/send-preview`\n\n```ts\nconst { data } = await client.sendPreview(\n null,\n {\n template: {\n name: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n context_ids: {}\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "success": true,\n "data": {}\n }\n]\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `Error`\n\n```ts\ntype Error = {\n message: string\n code?: string\n}\n```\n\n### `EntityOperation`\n\n```ts\ntype EntityOperation = {\n entity: string // uuid\n operation?: string\n params?: {\n id?: string // uuid\n slug?: string\n }\n payload?: object\n}\n```\n\n### `NotificationItem`\n\n```ts\ntype NotificationItem = {\n id?: number\n notification_id?: number\n timestamp?: string // date-time\n read_state?: boolean\n type: string\n redirect_url?: string\n organization_id?: string\n title: {\n en?: string\n de?: string\n }\n message: {\n en?: string\n de?: string\n }\n payload?: Record<string, unknown>\n caller?: {\n EpilotAuth?: {\n token?: { ... }\n }\n }\n operations?: Array<{\n entity: string // uuid\n operation?: string\n params?: {\n id?: { ... }\n slug?: { ... }\n }\n payload?: object\n }>\n force_notify_users?: Record<string, unknown>\n}\n```\n\n### `Notification`\n\n```ts\ntype Notification = {\n notification_id?: number\n timestamp?: string // date-time\n type: string\n redirect_url?: string\n organization_id?: string\n title: {\n en?: string\n de?: string\n }\n message: {\n en?: string\n de?: string\n }\n payload?: Record<string, unknown>\n caller?: {\n EpilotAuth?: {\n token?: { ... }\n }\n }\n operations?: Array<{\n entity: string // uuid\n operation?: string\n params?: {\n id?: { ... }\n slug?: { ... }\n }\n payload?: object\n }>\n force_notify_users?: Record<string, unknown>\n read_state?: boolean\n visibility_user_ids?: string[]\n}\n```\n\n### `NotificationBase`\n\n```ts\ntype NotificationBase = {\n notification_id?: number\n timestamp?: string // date-time\n type: string\n redirect_url?: string\n organization_id?: string\n title: {\n en?: string\n de?: string\n }\n message: {\n en?: string\n de?: string\n }\n payload?: Record<string, unknown>\n caller?: {\n EpilotAuth?: {\n token?: { ... }\n }\n }\n operations?: Array<{\n entity: string // uuid\n operation?: string\n params?: {\n id?: { ... }\n slug?: { ... }\n }\n payload?: object\n }>\n force_notify_users?: Record<string, unknown>\n}\n```\n\n### `EntityId`\n\n```ts\ntype EntityId = string // uuid\n```\n\n### `Entity`\n\n```ts\ntype Entity = Record<string, unknown>\n```\n\n### `Id`\n\n```ts\ntype Id = number\n```\n\n### `NotificationId`\n\n```ts\ntype NotificationId = number\n```\n\n### `NotificationCallerContext`\n\n```ts\ntype NotificationCallerContext = {\n EpilotAuth?: {\n token?: {\n sub?: { ... }\n email?: { ... }\n cognito:username?: { ... }\n custom:ivy_user_id?: { ... }\n }\n }\n}\n```\n\n### `EntitySlug`\n\nURL-friendly identifier for the entity schema\n\n```ts\ntype EntitySlug = string\n```\n\n### `EntityOwner`\n\n```ts\ntype EntityOwner = {\n org_id: string\n user_id: string\n}\n```\n\n### `EntityAcl`\n\nAccess control list\n\n```ts\ntype EntityAcl = {\n view?: string[]\n edit?: string[]\n delete?: string[]\n}\n```\n\n### `NotificationTemplate`\n\n```ts\ntype NotificationTemplate = {\n _id: string // uuid\n _schema: string\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _manifest?: string // uuid[]\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n _acl?: {\n view?: string[]\n edit?: string[]\n delete?: string[]\n }\n name?: string\n type?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n system_template?: boolean\n created_by?: string\n updated_by?: string\n}\n```\n\n### `CreateNotificationTemplateInput`\n\n```ts\ntype CreateNotificationTemplateInput = {\n name: string\n type: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n _title?: string\n _tags?: string[]\n _manifest?: string // uuid[]\n}\n```\n\n### `UpdateNotificationTemplateInput`\n\n```ts\ntype UpdateNotificationTemplateInput = {\n name?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n _title?: string\n _tags?: string[]\n _manifest?: string // uuid[]\n}\n```\n\n### `NotificationTemplateListResponse`\n\n```ts\ntype NotificationTemplateListResponse = {\n results?: Array<{\n _id: string // uuid\n _schema: string\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _manifest?: string // uuid[]\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n _acl?: {\n view?: { ... }\n edit?: { ... }\n delete?: { ... }\n }\n name?: string\n type?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n system_template?: boolean\n created_by?: string\n updated_by?: string\n }>\n hits?: number\n}\n```\n\n### `SendPreviewInput`\n\n```ts\ntype SendPreviewInput = {\n template: {\n name?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n _title?: string\n _tags?: string[]\n _manifest?: string // uuid[]\n }\n context_ids?: Record<string, string>\n}\n```\n\n### `SendPreviewResponse`\n\nArray of results for each notification channel (email, in-app)\n\n```ts\ntype SendPreviewResponse = Array<{\n success: boolean\n data?: unknown\n}>\n```\n';
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
exports.default = notification_default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import "./chunk-YPSWSI3M.js";
|
|
2
|
+
|
|
3
|
+
// src/docs/notification.json
|
|
4
|
+
var notification_default = '# Notification API\n\n- **Base URL:** `https://notification.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/notification](https://docs.epilot.io/api/notification)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.notification.getNotificationsV2(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/notification\'\n\nconst notificationClient = getClient()\nauthorize(notificationClient, () => \'<token>\')\nconst { data } = await notificationClient.getNotificationsV2(...)\n```\n\n## Operations\n\n**Notification**\n- [`getNotificationsV2`](#getnotificationsv2)\n- [`createNotification`](#createnotification)\n- [`getNotifications`](#getnotifications)\n- [`getNotification`](#getnotification)\n- [`markAllAsRead`](#markallasread)\n- [`markAsRead`](#markasread)\n- [`getTotalUnread`](#gettotalunread)\n\n**Template**\n- [`listNotificationTemplates`](#listnotificationtemplates)\n- [`createNotificationTemplate`](#createnotificationtemplate)\n- [`getNotificationTemplate`](#getnotificationtemplate)\n- [`updateNotificationTemplate`](#updatenotificationtemplate)\n- [`patchNotificationTemplate`](#patchnotificationtemplate)\n- [`deleteNotificationTemplate`](#deletenotificationtemplate)\n- [`sendPreview`](#sendpreview)\n\n**Schemas**\n- [`Error`](#error)\n- [`EntityOperation`](#entityoperation)\n- [`NotificationItem`](#notificationitem)\n- [`Notification`](#notification)\n- [`NotificationBase`](#notificationbase)\n- [`EntityId`](#entityid)\n- [`Entity`](#entity)\n- [`Id`](#id)\n- [`NotificationId`](#notificationid)\n- [`NotificationCallerContext`](#notificationcallercontext)\n- [`EntitySlug`](#entityslug)\n- [`EntityOwner`](#entityowner)\n- [`EntityAcl`](#entityacl)\n- [`NotificationTemplate`](#notificationtemplate)\n- [`CreateNotificationTemplateInput`](#createnotificationtemplateinput)\n- [`UpdateNotificationTemplateInput`](#updatenotificationtemplateinput)\n- [`NotificationTemplateListResponse`](#notificationtemplatelistresponse)\n- [`SendPreviewInput`](#sendpreviewinput)\n- [`SendPreviewResponse`](#sendpreviewresponse)\n\n### `getNotificationsV2`\n\nGet notifications items. These items may eventually contain entities within their payload, which can be hydrated by the client if desired by calling the Entity API directly.\n\n`GET /v2/notification/notifications`\n\n```ts\nconst { data } = await client.getNotificationsV2({\n cursor: \'example\',\n after_id: 1,\n limit: 1,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "cursor": "eyJjcmVhd",\n "total": 1,\n "total_unread": 1,\n "results": [\n {\n "id": 123456789,\n "notification_id": 123456789,\n "timestamp": "1970-01-01T00:00:00.000Z",\n "read_state": false,\n "type": "workflow",\n "redirect_url": "https://epilot.cloud",\n "organization_id": "206801",\n "title": {\n "en": "My custom notification",\n "de": "Meine benutzerdefinierte Aktivit\xE4t"\n },\n "message": {\n "en": "{{caller}} did something with {{contact.entity.id}} {{branch.name}}.",\n "de": "{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}."\n },\n "payload": {\n "entity": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "schema": "contact"\n }\n },\n "caller": {\n "EpilotAuth": {\n "token": {\n "sub": "476e9b48-42f4-4234-a2b0-4668b34626ce",\n "cognito:groups": ["Administrator"],\n "cognito:preferred_role": "arn:aws:iam::912468240823:role/base-administrator-role",\n "iss": "https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D",\n "custom:ivy_org_id": "739224",\n "cognito:username": "n.ahmad@epilot.cloud",\n "custom:ivy_user_id": "10006129",\n "cognito:roles": ["arn:aws:iam::912468240823:role/base-administrator-role"],\n "aud": "6e0jbdnger7nmoktaaflarue1l",\n "event_id": "cd5f5583-d90c-4db5-8e99-5f5dd29a4d75",\n "token_use": "id",\n "auth_time": 1614333023,\n "exp": 1614336623,\n "iat": 1614333023,\n "email": "n.ahmad@epilot.cloud"\n }\n }\n },\n "operations": [\n {\n "entity": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "operation": "updateEntity",\n "params": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "slug": "contact"\n },\n "payload": {\n "_schema": "contact",\n "_org": "123",\n "status": "Inactive"\n }\n }\n ],\n "force_notify_users": {\n "12345": {\n "email": false,\n "in_app": false\n }\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createNotification`\n\nCreate a message that can be displayed in the notification panel.\n\n`POST /v1/notification/notifications`\n\n```ts\nconst { data } = await client.createNotification(\n null,\n {\n notification_id: 0,\n timestamp: \'1970-01-01T00:00:00.000Z\',\n type: \'workflow\',\n redirect_url: \'https://epilot.cloud\',\n organization_id: \'206801\',\n title: {\n en: \'My custom notification\',\n de: \'Meine benutzerdefinierte Aktivit\xE4t\'\n },\n message: {\n en: \'{{caller}} did something with {{contact.entity.id}} {{branch.name}}.\',\n de: \'{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}.\'\n },\n payload: {\n entity: {\n id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n schema: \'contact\'\n }\n },\n caller: {\n EpilotAuth: {\n token: {\n sub: \'476e9b48-42f4-4234-a2b0-4668b34626ce\',\n \'cognito:groups\': [\'Administrator\'],\n \'cognito:preferred_role\': \'arn:aws:iam::912468240823:role/base-administrator-role\',\n iss: \'https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D\',\n \'custom:ivy_org_id\': \'739224\',\n \'cognito:username\': \'n.ahmad@epilot.cloud\',\n \'custom:ivy_user_id\': \'10006129\',\n \'cognito:roles\': [\'arn:aws:iam::912468240823:role/base-administrator-role\'],\n aud: \'6e0jbdnger7nmoktaaflarue1l\',\n event_id: \'cd5f5583-d90c-4db5-8e99-5f5dd29a4d75\',\n token_use: \'id\',\n auth_time: 1614333023,\n exp: 1614336623,\n iat: 1614333023,\n email: \'n.ahmad@epilot.cloud\'\n }\n }\n },\n operations: [\n {\n entity: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n operation: \'updateEntity\',\n params: {\n id: \'3fa85f64-5717-4562-b3fc-2c963f66afa6\',\n slug: \'contact\'\n },\n payload: {\n _schema: \'contact\',\n _org: \'123\',\n status: \'Inactive\'\n }\n }\n ],\n force_notify_users: {\n \'12345\': {\n email: false,\n in_app: false\n }\n },\n read_state: false,\n visibility_user_ids: [\'1\', \'2\', \'3\', \'4\', \'5\']\n },\n)\n```\n\n---\n\n### `getNotifications`\n\nGet notifications\n\n`GET /v1/notification/notifications`\n\n```ts\nconst { data } = await client.getNotifications({\n after_id: 1,\n limit: 1,\n no_hydrate: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "total": 1,\n "total_unread": 1,\n "results": [\n {\n "id": 123456789,\n "notification_id": 123456789,\n "timestamp": "1970-01-01T00:00:00.000Z",\n "read_state": false,\n "type": "workflow",\n "redirect_url": "https://epilot.cloud",\n "organization_id": "206801",\n "title": {\n "en": "My custom notification",\n "de": "Meine benutzerdefinierte Aktivit\xE4t"\n },\n "message": {\n "en": "{{caller}} did something with {{contact.entity.id}} {{branch.name}}.",\n "de": "{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}."\n },\n "payload": {\n "entity": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "schema": "contact"\n }\n },\n "caller": {\n "EpilotAuth": {\n "token": {\n "sub": "476e9b48-42f4-4234-a2b0-4668b34626ce",\n "cognito:groups": ["Administrator"],\n "cognito:preferred_role": "arn:aws:iam::912468240823:role/base-administrator-role",\n "iss": "https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D",\n "custom:ivy_org_id": "739224",\n "cognito:username": "n.ahmad@epilot.cloud",\n "custom:ivy_user_id": "10006129",\n "cognito:roles": ["arn:aws:iam::912468240823:role/base-administrator-role"],\n "aud": "6e0jbdnger7nmoktaaflarue1l",\n "event_id": "cd5f5583-d90c-4db5-8e99-5f5dd29a4d75",\n "token_use": "id",\n "auth_time": 1614333023,\n "exp": 1614336623,\n "iat": 1614333023,\n "email": "n.ahmad@epilot.cloud"\n }\n }\n },\n "operations": [\n {\n "entity": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "operation": "updateEntity",\n "params": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "slug": "contact"\n },\n "payload": {\n "_schema": "contact",\n "_org": "123",\n "status": "Inactive"\n }\n }\n ],\n "force_notify_users": {\n "12345": {\n "email": false,\n "in_app": false\n }\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `getNotification`\n\nGet the details of a single notification.\n\n`GET /v1/notification/notifications/{id}`\n\n```ts\nconst { data } = await client.getNotification({\n id: 1,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": 123456789,\n "notification_id": 123456789,\n "timestamp": "1970-01-01T00:00:00.000Z",\n "read_state": false,\n "type": "workflow",\n "redirect_url": "https://epilot.cloud",\n "organization_id": "206801",\n "title": {\n "en": "My custom notification",\n "de": "Meine benutzerdefinierte Aktivit\xE4t"\n },\n "message": {\n "en": "{{caller}} did something with {{contact.entity.id}} {{branch.name}}.",\n "de": "{{caller}} habe etwas damit gemacht {{contact.entity.id}} {{branch.name}}."\n },\n "payload": {\n "entity": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "schema": "contact"\n }\n },\n "caller": {\n "EpilotAuth": {\n "token": {\n "sub": "476e9b48-42f4-4234-a2b0-4668b34626ce",\n "cognito:groups": ["Administrator"],\n "cognito:preferred_role": "arn:aws:iam::912468240823:role/base-administrator-role",\n "iss": "https://cognito-idp.eu-central-1.amazonaws.com/eu-central-1_6lZSgmU6D",\n "custom:ivy_org_id": "739224",\n "cognito:username": "n.ahmad@epilot.cloud",\n "custom:ivy_user_id": "10006129",\n "cognito:roles": ["arn:aws:iam::912468240823:role/base-administrator-role"],\n "aud": "6e0jbdnger7nmoktaaflarue1l",\n "event_id": "cd5f5583-d90c-4db5-8e99-5f5dd29a4d75",\n "token_use": "id",\n "auth_time": 1614333023,\n "exp": 1614336623,\n "iat": 1614333023,\n "email": "n.ahmad@epilot.cloud"\n }\n }\n },\n "operations": [\n {\n "entity": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "operation": "updateEntity",\n "params": {\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "slug": "contact"\n },\n "payload": {\n "_schema": "contact",\n "_org": "123",\n "status": "Inactive"\n }\n }\n ],\n "force_notify_users": {\n "12345": {\n "email": false,\n "in_app": false\n }\n }\n}\n```\n\n</details>\n\n---\n\n### `markAllAsRead`\n\nMark all as read\n\n`PUT /v1/notification/notifications/mark`\n\n```ts\nconst { data } = await client.markAllAsRead()\n```\n\n---\n\n### `markAsRead`\n\nMark as read\n\n`PUT /v1/notification/notifications/{id}/mark`\n\n```ts\nconst { data } = await client.markAsRead({\n id: 1,\n})\n```\n\n---\n\n### `getTotalUnread`\n\nGet total unread\n\n`GET /v1/notification/unreads`\n\n```ts\nconst { data } = await client.getTotalUnread()\n```\n\n---\n\n### `listNotificationTemplates`\n\nList notification templates with optional filtering and pagination\n\n`GET /v1/notification/templates`\n\n```ts\nconst { data } = await client.listNotificationTemplates({\n q: \'example\',\n from: 1,\n size: 1,\n sort: \'example\',\n fields: \'example\',\n hydrate: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n }\n ],\n "hits": 0\n}\n```\n\n</details>\n\n---\n\n### `createNotificationTemplate`\n\nCreate a new notification template\n\n`POST /v1/notification/templates`\n\n```ts\nconst { data } = await client.createNotificationTemplate(\n null,\n {\n name: \'string\',\n type: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `getNotificationTemplate`\n\nGet a single notification template by ID\n\n`GET /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.getNotificationTemplate({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `updateNotificationTemplate`\n\nUpdate a notification template (full replacement)\n\n`PUT /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.updateNotificationTemplate(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n name: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `patchNotificationTemplate`\n\nPartially update a notification template\n\n`PATCH /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.patchNotificationTemplate(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n name: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `deleteNotificationTemplate`\n\nDelete a notification template permanently\n\n`DELETE /v1/notification/templates/{id}`\n\n```ts\nconst { data } = await client.deleteNotificationTemplate({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "_schema": "string",\n "_title": "string",\n "_org": "string",\n "_tags": ["string"],\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "_owners": [\n {\n "org_id": "string",\n "user_id": "string"\n }\n ],\n "_acl": {\n "view": ["string"],\n "edit": ["string"],\n "delete": ["string"]\n },\n "name": "string",\n "type": "string",\n "notification_title": "string",\n "message": "string",\n "action_label": "string",\n "action_url": "string",\n "style": "string",\n "system_template": true,\n "created_by": "string",\n "updated_by": "string"\n}\n```\n\n</details>\n\n---\n\n### `sendPreview`\n\nSend a preview notification (both email and in-app) to the requesting user.\nUsed to test notification templates before saving.\n\n`POST /v1/notification/templates/send-preview`\n\n```ts\nconst { data } = await client.sendPreview(\n null,\n {\n template: {\n name: \'string\',\n notification_title: \'string\',\n message: \'string\',\n action_label: \'string\',\n action_url: \'string\',\n style: \'string\',\n _title: \'string\',\n _tags: [\'string\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\']\n },\n context_ids: {}\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "success": true,\n "data": {}\n }\n]\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `Error`\n\n```ts\ntype Error = {\n message: string\n code?: string\n}\n```\n\n### `EntityOperation`\n\n```ts\ntype EntityOperation = {\n entity: string // uuid\n operation?: string\n params?: {\n id?: string // uuid\n slug?: string\n }\n payload?: object\n}\n```\n\n### `NotificationItem`\n\n```ts\ntype NotificationItem = {\n id?: number\n notification_id?: number\n timestamp?: string // date-time\n read_state?: boolean\n type: string\n redirect_url?: string\n organization_id?: string\n title: {\n en?: string\n de?: string\n }\n message: {\n en?: string\n de?: string\n }\n payload?: Record<string, unknown>\n caller?: {\n EpilotAuth?: {\n token?: { ... }\n }\n }\n operations?: Array<{\n entity: string // uuid\n operation?: string\n params?: {\n id?: { ... }\n slug?: { ... }\n }\n payload?: object\n }>\n force_notify_users?: Record<string, unknown>\n}\n```\n\n### `Notification`\n\n```ts\ntype Notification = {\n notification_id?: number\n timestamp?: string // date-time\n type: string\n redirect_url?: string\n organization_id?: string\n title: {\n en?: string\n de?: string\n }\n message: {\n en?: string\n de?: string\n }\n payload?: Record<string, unknown>\n caller?: {\n EpilotAuth?: {\n token?: { ... }\n }\n }\n operations?: Array<{\n entity: string // uuid\n operation?: string\n params?: {\n id?: { ... }\n slug?: { ... }\n }\n payload?: object\n }>\n force_notify_users?: Record<string, unknown>\n read_state?: boolean\n visibility_user_ids?: string[]\n}\n```\n\n### `NotificationBase`\n\n```ts\ntype NotificationBase = {\n notification_id?: number\n timestamp?: string // date-time\n type: string\n redirect_url?: string\n organization_id?: string\n title: {\n en?: string\n de?: string\n }\n message: {\n en?: string\n de?: string\n }\n payload?: Record<string, unknown>\n caller?: {\n EpilotAuth?: {\n token?: { ... }\n }\n }\n operations?: Array<{\n entity: string // uuid\n operation?: string\n params?: {\n id?: { ... }\n slug?: { ... }\n }\n payload?: object\n }>\n force_notify_users?: Record<string, unknown>\n}\n```\n\n### `EntityId`\n\n```ts\ntype EntityId = string // uuid\n```\n\n### `Entity`\n\n```ts\ntype Entity = Record<string, unknown>\n```\n\n### `Id`\n\n```ts\ntype Id = number\n```\n\n### `NotificationId`\n\n```ts\ntype NotificationId = number\n```\n\n### `NotificationCallerContext`\n\n```ts\ntype NotificationCallerContext = {\n EpilotAuth?: {\n token?: {\n sub?: { ... }\n email?: { ... }\n cognito:username?: { ... }\n custom:ivy_user_id?: { ... }\n }\n }\n}\n```\n\n### `EntitySlug`\n\nURL-friendly identifier for the entity schema\n\n```ts\ntype EntitySlug = string\n```\n\n### `EntityOwner`\n\n```ts\ntype EntityOwner = {\n org_id: string\n user_id: string\n}\n```\n\n### `EntityAcl`\n\nAccess control list\n\n```ts\ntype EntityAcl = {\n view?: string[]\n edit?: string[]\n delete?: string[]\n}\n```\n\n### `NotificationTemplate`\n\n```ts\ntype NotificationTemplate = {\n _id: string // uuid\n _schema: string\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _manifest?: string // uuid[]\n _owners?: Array<{\n org_id: string\n user_id: string\n }>\n _acl?: {\n view?: string[]\n edit?: string[]\n delete?: string[]\n }\n name?: string\n type?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n system_template?: boolean\n created_by?: string\n updated_by?: string\n}\n```\n\n### `CreateNotificationTemplateInput`\n\n```ts\ntype CreateNotificationTemplateInput = {\n name: string\n type: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n _title?: string\n _tags?: string[]\n _manifest?: string // uuid[]\n}\n```\n\n### `UpdateNotificationTemplateInput`\n\n```ts\ntype UpdateNotificationTemplateInput = {\n name?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n _title?: string\n _tags?: string[]\n _manifest?: string // uuid[]\n}\n```\n\n### `NotificationTemplateListResponse`\n\n```ts\ntype NotificationTemplateListResponse = {\n results?: Array<{\n _id: string // uuid\n _schema: string\n _title: string\n _org: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n _manifest?: string // uuid[]\n _owners?: Array<{\n org_id: { ... }\n user_id: { ... }\n }>\n _acl?: {\n view?: { ... }\n edit?: { ... }\n delete?: { ... }\n }\n name?: string\n type?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n system_template?: boolean\n created_by?: string\n updated_by?: string\n }>\n hits?: number\n}\n```\n\n### `SendPreviewInput`\n\n```ts\ntype SendPreviewInput = {\n template: {\n name?: string\n notification_title?: string\n message?: string\n action_label?: string\n action_url?: string\n style?: string\n _title?: string\n _tags?: string[]\n _manifest?: string // uuid[]\n }\n context_ids?: Record<string, string>\n}\n```\n\n### `SendPreviewResponse`\n\nArray of results for each notification channel (email, in-app)\n\n```ts\ntype SendPreviewResponse = Array<{\n success: boolean\n data?: unknown\n}>\n```\n';
|
|
5
|
+
export {
|
|
6
|
+
notification_default as default
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
|
|
2
|
+
|
|
3
|
+
// src/docs/organization.json
|
|
4
|
+
var organization_default = '# Organization API\n\n- **Base URL:** `https://organization-v2.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/organization](https://docs.epilot.io/api/organization)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.organization.getCurrentOrganization(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/organization\'\n\nconst organizationClient = getClient()\nauthorize(organizationClient, () => \'<token>\')\nconst { data } = await organizationClient.getCurrentOrganization(...)\n```\n\n## Operations\n\n**Organization**\n- [`getCurrentOrganization`](#getcurrentorganization)\n- [`getOrganization`](#getorganization)\n- [`updateOrganization`](#updateorganization)\n\n**Organization Settings**\n- [`getSettings`](#getsettings)\n- [`putSettingsValue`](#putsettingsvalue)\n- [`deleteSettingsValue`](#deletesettingsvalue)\n\n**Feature Settings**\n- [`getOrganizationFeatureSettings`](#getorganizationfeaturesettings)\n\n**Schemas**\n- [`OrganizationId`](#organizationid)\n- [`Organization`](#organization)\n- [`InternalOrganization`](#internalorganization)\n- [`SettingKey`](#settingkey)\n- [`Settings`](#settings)\n- [`SettingsValue`](#settingsvalue)\n- [`CreateOrganizationRequest`](#createorganizationrequest)\n- [`DataPointsResponse`](#datapointsresponse)\n- [`DataPoint`](#datapoint)\n- [`OrganizationToCleanup`](#organizationtocleanup)\n- [`OrganizationCleanupStatus`](#organizationcleanupstatus)\n- [`HubspotCompany`](#hubspotcompany)\n- [`HubspotCompaniesResponse`](#hubspotcompaniesresponse)\n- [`HubspotOrganizationData`](#hubspotorganizationdata)\n- [`FeatureSettings`](#featuresettings)\n- [`FeatureFlagMetadata`](#featureflagmetadata)\n- [`I18nString`](#i18nstring)\n- [`VisibilityRule`](#visibilityrule)\n\n### `getCurrentOrganization`\n\nRetrieves the organization associated with the authenticated user\'s current session.\n\n`GET /v2/organization/current`\n\n```ts\nconst { data } = await client.getCurrentOrganization()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "739224",\n "name": "Epilot",\n "email": "someone@epilot.cloud",\n "phone": "+49123123123",\n "website": "https://epilot.cloud",\n "address": {\n "country": "string",\n "city": "string",\n "postal_code": "string",\n "street": "string",\n "street_number": "string"\n },\n "organization_use": "Production",\n "parent_production_org_id": "string",\n "created_date": "1970-01-01T00:00:00.000Z",\n "logo_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "logo_thumbnail_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "signature": "<p>Thanks</p>",\n "is_unlicensed_org": false,\n "style": {},\n "type": "Vendor",\n "symbol": "EPI",\n "pricing_tier": "professional",\n "free_user_limit": 50,\n "tags": ["test org"]\n}\n```\n\n</details>\n\n---\n\n### `getOrganization`\n\nRetrieves detailed information about a specific organization by its unique identifier.\n\n`GET /v2/organization/{org_id}`\n\n```ts\nconst { data } = await client.getOrganization({\n org_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "739224",\n "name": "Epilot",\n "email": "someone@epilot.cloud",\n "phone": "+49123123123",\n "website": "https://epilot.cloud",\n "address": {\n "country": "string",\n "city": "string",\n "postal_code": "string",\n "street": "string",\n "street_number": "string"\n },\n "organization_use": "Production",\n "parent_production_org_id": "string",\n "created_date": "1970-01-01T00:00:00.000Z",\n "logo_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "logo_thumbnail_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "signature": "<p>Thanks</p>",\n "is_unlicensed_org": false,\n "style": {},\n "type": "Vendor",\n "symbol": "EPI",\n "pricing_tier": "professional",\n "free_user_limit": 50,\n "tags": ["test org"]\n}\n```\n\n</details>\n\n---\n\n### `updateOrganization`\n\nUpdates an organization\'s profile information.\n\n`PATCH /v2/organization/{org_id}`\n\n```ts\nconst { data } = await client.updateOrganization(\n {\n org_id: \'example\',\n },\n {\n id: \'739224\',\n name: \'Epilot\',\n email: \'someone@epilot.cloud\',\n phone: \'+49123123123\',\n website: \'https://epilot.cloud\',\n address: {\n country: \'string\',\n city: \'string\',\n postal_code: \'string\',\n street: \'string\',\n street_number: \'string\'\n },\n organization_use: \'Production\',\n parent_production_org_id: \'string\',\n created_date: \'1970-01-01T00:00:00.000Z\',\n logo_url: \'https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png\',\n logo_thumbnail_url: \'https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png\',\n signature: \'<p>Thanks</p>\',\n is_unlicensed_org: false,\n style: {},\n type: \'Vendor\',\n symbol: \'EPI\',\n pricing_tier: \'professional\',\n free_user_limit: 50,\n tags: [\'test org\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "739224",\n "name": "Epilot",\n "email": "someone@epilot.cloud",\n "phone": "+49123123123",\n "website": "https://epilot.cloud",\n "address": {\n "country": "string",\n "city": "string",\n "postal_code": "string",\n "street": "string",\n "street_number": "string"\n },\n "organization_use": "Production",\n "parent_production_org_id": "string",\n "created_date": "1970-01-01T00:00:00.000Z",\n "logo_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "logo_thumbnail_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "signature": "<p>Thanks</p>",\n "is_unlicensed_org": false,\n "style": {},\n "type": "Vendor",\n "symbol": "EPI",\n "pricing_tier": "professional",\n "free_user_limit": 50,\n "tags": ["test org"]\n}\n```\n\n</details>\n\n---\n\n### `getSettings`\n\nRetrieves all configuration settings for an organization.\n\n`GET /v2/organization/{org_id}/settings`\n\n```ts\nconst { data } = await client.getSettings({\n org_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "double_opt_in": {\n "enabled": true\n },\n "email_tracking": {\n "enabled": true,\n "track_opens": true\n },\n "default_language": "de"\n}\n```\n\n</details>\n\n---\n\n### `putSettingsValue`\n\nCreates or updates a specific organization setting identified by its key.\n\n`PUT /v2/organization/{org_id}/settings/{key}`\n\n```ts\nconst { data } = await client.putSettingsValue(\n {\n org_id: \'example\',\n key: \'example\',\n },\n {\n enabled: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "enabled": true\n}\n```\n\n</details>\n\n---\n\n### `deleteSettingsValue`\n\nRemoves a specific organization setting identified by its key.\n\n`DELETE /v2/organization/{org_id}/settings/{key}`\n\n```ts\nconst { data } = await client.deleteSettingsValue({\n org_id: \'example\',\n key: \'example\',\n})\n```\n\n---\n\n### `getOrganizationFeatureSettings`\n\nGet organization feature settings\n\n`GET /v2/organization/feature-settings`\n\n```ts\nconst { data } = await client.getOrganizationFeatureSettings()\n```\n\n---\n\n## Schemas\n\n### `OrganizationId`\n\nUnique identifier for an organization (tenant) in the epilot platform\n\n```ts\ntype OrganizationId = string\n```\n\n### `Organization`\n\nRepresents an epilot organization (tenant).\n\nAn organization contains all the configuration, branding, and contact information\nfor a tenant account on the epilot platform.\n\n\n```ts\ntype Organization = {\n id?: string\n name?: string\n email?: string\n phone?: string\n website?: string\n address?: {\n country?: string\n city?: string\n postal_code?: string\n street?: string\n street_number?: string\n }\n organization_use?: "Production" | "Sandbox"\n parent_production_org_id?: string\n created_date?: string // date-time\n logo_url?: string\n logo_thumbnail_url?: string\n signature?: string\n is_unlicensed_org?: boolean\n style?: Record<string, unknown>\n type?: "Vendor" | "Partner"\n symbol?: string\n pricing_tier?: string\n free_user_limit?: number\n tags?: string[]\n}\n```\n\n### `InternalOrganization`\n\nExtended organization object with internal-only fields.\n\nIncludes all fields from the base Organization schema plus additional\ninternal metadata used for platform administration and support.\n\n\n```ts\ntype InternalOrganization = {\n id?: string\n name?: string\n email?: string\n phone?: string\n website?: string\n address?: {\n country?: string\n city?: string\n postal_code?: string\n street?: string\n street_number?: string\n }\n organization_use?: "Production" | "Sandbox"\n parent_production_org_id?: string\n created_date?: string // date-time\n logo_url?: string\n logo_thumbnail_url?: string\n signature?: string\n is_unlicensed_org?: boolean\n style?: Record<string, unknown>\n type?: "Vendor" | "Partner"\n symbol?: string\n pricing_tier?: string\n free_user_limit?: number\n tags?: string[]\n}\n```\n\n### `SettingKey`\n\nA unique key identifying an organization setting.\nCommon setting keys include: double_opt_in, email_tracking, default_language, workflow_notifications\n\n\n```ts\ntype SettingKey = string\n```\n\n### `Settings`\n\nA key-value map of all organization settings.\nKeys are setting identifiers and values can be any valid JSON type.\n\n\n```ts\ntype Settings = Record<string, unknown>\n```\n\n### `SettingsValue`\n\nThe value of an organization setting.\nCan be any valid JSON type: string, number, boolean, array, or object.\n\n\n```ts\ntype SettingsValue = string | number | boolean | Record<string, unknown>[] | Record<string, unknown>\n```\n\n### `CreateOrganizationRequest`\n\nRequest payload for creating a new organization\n\n```ts\ntype CreateOrganizationRequest = {\n organization_detail?: {\n name: string\n email_address?: string\n type: string\n organization_use?: "Production" | "Sandbox"\n pricing_tier_id: string\n }\n owner_user?: {\n full_name?: string\n email_address: string\n }\n}\n```\n\n### `DataPointsResponse`\n\nList of data point metrics for all organizations\n\n```ts\ntype DataPointsResponse = Array<{\n id?: number\n max_customer?: number\n actual_customer?: number\n}>\n```\n\n### `DataPoint`\n\nData point metrics for a single organization, used for usage tracking and billing\n\n```ts\ntype DataPoint = {\n id?: number\n max_customer?: number\n actual_customer?: number\n}\n```\n\n### `OrganizationToCleanup`\n\nRepresents an organization that has been marked for deletion and requires cleanup.\nContains metadata about the deletion request.\n\n\n```ts\ntype OrganizationToCleanup = {\n org_id: string\n deleted_at: string // date-time\n deleted_by: string\n}\n```\n\n### `OrganizationCleanupStatus`\n\nRecords the cleanup status reported by a specific service for an organization.\nEach service that stores organization data reports its cleanup operations here.\n\n\n```ts\ntype OrganizationCleanupStatus = {\n org_id: string\n service_name: string\n operations?: Array<{\n action?: string\n resource?: string\n extra_info?: string | number | boolean | Record<string, unknown>[] | Record<string, unknown>\n }>\n}\n```\n\n### `HubspotCompany`\n\nRepresents a company record from HubSpot CRM synchronized to the epilot data warehouse.\nUsed for CRM integration and organization mapping.\n\n\n```ts\ntype HubspotCompany = {\n company_id?: string\n company_name?: string\n domain?: string\n}\n```\n\n### `HubspotCompaniesResponse`\n\nResponse containing a list of HubSpot companies matching the search criteria\n\n```ts\ntype HubspotCompaniesResponse = {\n results?: Array<{\n company_id?: string\n company_name?: string\n domain?: string\n }>\n total?: number\n}\n```\n\n### `HubspotOrganizationData`\n\nHubSpot company data associated with an epilot organization.\nContains business metrics and CRM properties synced from HubSpot.\n\n\n```ts\ntype HubspotOrganizationData = {\n company_id?: string\n company_name?: string\n domain?: string\n current_mrr?: string\n potential_mrr?: string\n company_size?: string\n pricing_tier?: string\n lifecyclestage?: string\n industry?: string\n numberofemployees?: string\n customer_number?: string\n no_of_users?: string\n activation_rate?: string\n active_features?: string\n usecases_implemented?: string\n buyer_journey?: string\n country?: string\n city?: string\n properties?: Record<string, unknown>\n}\n```\n\n### `FeatureSettings`\n\nFeature settings metadata served to frontend applications.\n\n```ts\ntype FeatureSettings = {\n version: string\n feature_flags: Array<{\n feature_name: string\n title?: {\n key: { ... }\n default_value?: { ... }\n }\n description?: {\n key: { ... }\n default_value?: { ... }\n }\n badge?: "alpha" | "beta" | "new" | "advanced" | "experiment" | "deprecated"\n confetti?: boolean\n one_way?: boolean\n reverse_checked?: boolean\n is_visible_for_partner?: boolean\n visibility_rules: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }>\n}\n```\n\n### `FeatureFlagMetadata`\n\nMetadata for a single feature flag toggle\n\n```ts\ntype FeatureFlagMetadata = {\n feature_name: string\n title?: {\n key: string\n default_value?: string\n }\n description?: {\n key: string\n default_value?: string\n }\n badge?: "alpha" | "beta" | "new" | "advanced" | "experiment" | "deprecated"\n confetti?: boolean\n one_way?: boolean\n reverse_checked?: boolean\n is_visible_for_partner?: boolean\n visibility_rules: Array<{\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }\n rules?: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }>\n}\n```\n\n### `I18nString`\n\nInternationalized string with a translation key and optional default value\n\n```ts\ntype I18nString = {\n key: string\n default_value?: string\n}\n```\n\n### `VisibilityRule`\n\nA rule that determines feature visibility. Rules are combined with AND logic\nat the top level. Supports boolean combinators (and, or, not) for complex logic.\n\n\n```ts\ntype VisibilityRule = {\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }\n rules?: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }\n rules?: Array<{\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }\n rules?: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }>\n}\n```\n';
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
exports.default = organization_default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import "./chunk-YPSWSI3M.js";
|
|
2
|
+
|
|
3
|
+
// src/docs/organization.json
|
|
4
|
+
var organization_default = '# Organization API\n\n- **Base URL:** `https://organization-v2.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/organization](https://docs.epilot.io/api/organization)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.organization.getCurrentOrganization(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/organization\'\n\nconst organizationClient = getClient()\nauthorize(organizationClient, () => \'<token>\')\nconst { data } = await organizationClient.getCurrentOrganization(...)\n```\n\n## Operations\n\n**Organization**\n- [`getCurrentOrganization`](#getcurrentorganization)\n- [`getOrganization`](#getorganization)\n- [`updateOrganization`](#updateorganization)\n\n**Organization Settings**\n- [`getSettings`](#getsettings)\n- [`putSettingsValue`](#putsettingsvalue)\n- [`deleteSettingsValue`](#deletesettingsvalue)\n\n**Feature Settings**\n- [`getOrganizationFeatureSettings`](#getorganizationfeaturesettings)\n\n**Schemas**\n- [`OrganizationId`](#organizationid)\n- [`Organization`](#organization)\n- [`InternalOrganization`](#internalorganization)\n- [`SettingKey`](#settingkey)\n- [`Settings`](#settings)\n- [`SettingsValue`](#settingsvalue)\n- [`CreateOrganizationRequest`](#createorganizationrequest)\n- [`DataPointsResponse`](#datapointsresponse)\n- [`DataPoint`](#datapoint)\n- [`OrganizationToCleanup`](#organizationtocleanup)\n- [`OrganizationCleanupStatus`](#organizationcleanupstatus)\n- [`HubspotCompany`](#hubspotcompany)\n- [`HubspotCompaniesResponse`](#hubspotcompaniesresponse)\n- [`HubspotOrganizationData`](#hubspotorganizationdata)\n- [`FeatureSettings`](#featuresettings)\n- [`FeatureFlagMetadata`](#featureflagmetadata)\n- [`I18nString`](#i18nstring)\n- [`VisibilityRule`](#visibilityrule)\n\n### `getCurrentOrganization`\n\nRetrieves the organization associated with the authenticated user\'s current session.\n\n`GET /v2/organization/current`\n\n```ts\nconst { data } = await client.getCurrentOrganization()\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "739224",\n "name": "Epilot",\n "email": "someone@epilot.cloud",\n "phone": "+49123123123",\n "website": "https://epilot.cloud",\n "address": {\n "country": "string",\n "city": "string",\n "postal_code": "string",\n "street": "string",\n "street_number": "string"\n },\n "organization_use": "Production",\n "parent_production_org_id": "string",\n "created_date": "1970-01-01T00:00:00.000Z",\n "logo_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "logo_thumbnail_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "signature": "<p>Thanks</p>",\n "is_unlicensed_org": false,\n "style": {},\n "type": "Vendor",\n "symbol": "EPI",\n "pricing_tier": "professional",\n "free_user_limit": 50,\n "tags": ["test org"]\n}\n```\n\n</details>\n\n---\n\n### `getOrganization`\n\nRetrieves detailed information about a specific organization by its unique identifier.\n\n`GET /v2/organization/{org_id}`\n\n```ts\nconst { data } = await client.getOrganization({\n org_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "739224",\n "name": "Epilot",\n "email": "someone@epilot.cloud",\n "phone": "+49123123123",\n "website": "https://epilot.cloud",\n "address": {\n "country": "string",\n "city": "string",\n "postal_code": "string",\n "street": "string",\n "street_number": "string"\n },\n "organization_use": "Production",\n "parent_production_org_id": "string",\n "created_date": "1970-01-01T00:00:00.000Z",\n "logo_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "logo_thumbnail_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "signature": "<p>Thanks</p>",\n "is_unlicensed_org": false,\n "style": {},\n "type": "Vendor",\n "symbol": "EPI",\n "pricing_tier": "professional",\n "free_user_limit": 50,\n "tags": ["test org"]\n}\n```\n\n</details>\n\n---\n\n### `updateOrganization`\n\nUpdates an organization\'s profile information.\n\n`PATCH /v2/organization/{org_id}`\n\n```ts\nconst { data } = await client.updateOrganization(\n {\n org_id: \'example\',\n },\n {\n id: \'739224\',\n name: \'Epilot\',\n email: \'someone@epilot.cloud\',\n phone: \'+49123123123\',\n website: \'https://epilot.cloud\',\n address: {\n country: \'string\',\n city: \'string\',\n postal_code: \'string\',\n street: \'string\',\n street_number: \'string\'\n },\n organization_use: \'Production\',\n parent_production_org_id: \'string\',\n created_date: \'1970-01-01T00:00:00.000Z\',\n logo_url: \'https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png\',\n logo_thumbnail_url: \'https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png\',\n signature: \'<p>Thanks</p>\',\n is_unlicensed_org: false,\n style: {},\n type: \'Vendor\',\n symbol: \'EPI\',\n pricing_tier: \'professional\',\n free_user_limit: 50,\n tags: [\'test org\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "id": "739224",\n "name": "Epilot",\n "email": "someone@epilot.cloud",\n "phone": "+49123123123",\n "website": "https://epilot.cloud",\n "address": {\n "country": "string",\n "city": "string",\n "postal_code": "string",\n "street": "string",\n "street_number": "string"\n },\n "organization_use": "Production",\n "parent_production_org_id": "string",\n "created_date": "1970-01-01T00:00:00.000Z",\n "logo_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "logo_thumbnail_url": "https://epilot-playground-organization-data.s3.eu-central-1.amazonaws.com/epilot-logo.png",\n "signature": "<p>Thanks</p>",\n "is_unlicensed_org": false,\n "style": {},\n "type": "Vendor",\n "symbol": "EPI",\n "pricing_tier": "professional",\n "free_user_limit": 50,\n "tags": ["test org"]\n}\n```\n\n</details>\n\n---\n\n### `getSettings`\n\nRetrieves all configuration settings for an organization.\n\n`GET /v2/organization/{org_id}/settings`\n\n```ts\nconst { data } = await client.getSettings({\n org_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "double_opt_in": {\n "enabled": true\n },\n "email_tracking": {\n "enabled": true,\n "track_opens": true\n },\n "default_language": "de"\n}\n```\n\n</details>\n\n---\n\n### `putSettingsValue`\n\nCreates or updates a specific organization setting identified by its key.\n\n`PUT /v2/organization/{org_id}/settings/{key}`\n\n```ts\nconst { data } = await client.putSettingsValue(\n {\n org_id: \'example\',\n key: \'example\',\n },\n {\n enabled: true\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "enabled": true\n}\n```\n\n</details>\n\n---\n\n### `deleteSettingsValue`\n\nRemoves a specific organization setting identified by its key.\n\n`DELETE /v2/organization/{org_id}/settings/{key}`\n\n```ts\nconst { data } = await client.deleteSettingsValue({\n org_id: \'example\',\n key: \'example\',\n})\n```\n\n---\n\n### `getOrganizationFeatureSettings`\n\nGet organization feature settings\n\n`GET /v2/organization/feature-settings`\n\n```ts\nconst { data } = await client.getOrganizationFeatureSettings()\n```\n\n---\n\n## Schemas\n\n### `OrganizationId`\n\nUnique identifier for an organization (tenant) in the epilot platform\n\n```ts\ntype OrganizationId = string\n```\n\n### `Organization`\n\nRepresents an epilot organization (tenant).\n\nAn organization contains all the configuration, branding, and contact information\nfor a tenant account on the epilot platform.\n\n\n```ts\ntype Organization = {\n id?: string\n name?: string\n email?: string\n phone?: string\n website?: string\n address?: {\n country?: string\n city?: string\n postal_code?: string\n street?: string\n street_number?: string\n }\n organization_use?: "Production" | "Sandbox"\n parent_production_org_id?: string\n created_date?: string // date-time\n logo_url?: string\n logo_thumbnail_url?: string\n signature?: string\n is_unlicensed_org?: boolean\n style?: Record<string, unknown>\n type?: "Vendor" | "Partner"\n symbol?: string\n pricing_tier?: string\n free_user_limit?: number\n tags?: string[]\n}\n```\n\n### `InternalOrganization`\n\nExtended organization object with internal-only fields.\n\nIncludes all fields from the base Organization schema plus additional\ninternal metadata used for platform administration and support.\n\n\n```ts\ntype InternalOrganization = {\n id?: string\n name?: string\n email?: string\n phone?: string\n website?: string\n address?: {\n country?: string\n city?: string\n postal_code?: string\n street?: string\n street_number?: string\n }\n organization_use?: "Production" | "Sandbox"\n parent_production_org_id?: string\n created_date?: string // date-time\n logo_url?: string\n logo_thumbnail_url?: string\n signature?: string\n is_unlicensed_org?: boolean\n style?: Record<string, unknown>\n type?: "Vendor" | "Partner"\n symbol?: string\n pricing_tier?: string\n free_user_limit?: number\n tags?: string[]\n}\n```\n\n### `SettingKey`\n\nA unique key identifying an organization setting.\nCommon setting keys include: double_opt_in, email_tracking, default_language, workflow_notifications\n\n\n```ts\ntype SettingKey = string\n```\n\n### `Settings`\n\nA key-value map of all organization settings.\nKeys are setting identifiers and values can be any valid JSON type.\n\n\n```ts\ntype Settings = Record<string, unknown>\n```\n\n### `SettingsValue`\n\nThe value of an organization setting.\nCan be any valid JSON type: string, number, boolean, array, or object.\n\n\n```ts\ntype SettingsValue = string | number | boolean | Record<string, unknown>[] | Record<string, unknown>\n```\n\n### `CreateOrganizationRequest`\n\nRequest payload for creating a new organization\n\n```ts\ntype CreateOrganizationRequest = {\n organization_detail?: {\n name: string\n email_address?: string\n type: string\n organization_use?: "Production" | "Sandbox"\n pricing_tier_id: string\n }\n owner_user?: {\n full_name?: string\n email_address: string\n }\n}\n```\n\n### `DataPointsResponse`\n\nList of data point metrics for all organizations\n\n```ts\ntype DataPointsResponse = Array<{\n id?: number\n max_customer?: number\n actual_customer?: number\n}>\n```\n\n### `DataPoint`\n\nData point metrics for a single organization, used for usage tracking and billing\n\n```ts\ntype DataPoint = {\n id?: number\n max_customer?: number\n actual_customer?: number\n}\n```\n\n### `OrganizationToCleanup`\n\nRepresents an organization that has been marked for deletion and requires cleanup.\nContains metadata about the deletion request.\n\n\n```ts\ntype OrganizationToCleanup = {\n org_id: string\n deleted_at: string // date-time\n deleted_by: string\n}\n```\n\n### `OrganizationCleanupStatus`\n\nRecords the cleanup status reported by a specific service for an organization.\nEach service that stores organization data reports its cleanup operations here.\n\n\n```ts\ntype OrganizationCleanupStatus = {\n org_id: string\n service_name: string\n operations?: Array<{\n action?: string\n resource?: string\n extra_info?: string | number | boolean | Record<string, unknown>[] | Record<string, unknown>\n }>\n}\n```\n\n### `HubspotCompany`\n\nRepresents a company record from HubSpot CRM synchronized to the epilot data warehouse.\nUsed for CRM integration and organization mapping.\n\n\n```ts\ntype HubspotCompany = {\n company_id?: string\n company_name?: string\n domain?: string\n}\n```\n\n### `HubspotCompaniesResponse`\n\nResponse containing a list of HubSpot companies matching the search criteria\n\n```ts\ntype HubspotCompaniesResponse = {\n results?: Array<{\n company_id?: string\n company_name?: string\n domain?: string\n }>\n total?: number\n}\n```\n\n### `HubspotOrganizationData`\n\nHubSpot company data associated with an epilot organization.\nContains business metrics and CRM properties synced from HubSpot.\n\n\n```ts\ntype HubspotOrganizationData = {\n company_id?: string\n company_name?: string\n domain?: string\n current_mrr?: string\n potential_mrr?: string\n company_size?: string\n pricing_tier?: string\n lifecyclestage?: string\n industry?: string\n numberofemployees?: string\n customer_number?: string\n no_of_users?: string\n activation_rate?: string\n active_features?: string\n usecases_implemented?: string\n buyer_journey?: string\n country?: string\n city?: string\n properties?: Record<string, unknown>\n}\n```\n\n### `FeatureSettings`\n\nFeature settings metadata served to frontend applications.\n\n```ts\ntype FeatureSettings = {\n version: string\n feature_flags: Array<{\n feature_name: string\n title?: {\n key: { ... }\n default_value?: { ... }\n }\n description?: {\n key: { ... }\n default_value?: { ... }\n }\n badge?: "alpha" | "beta" | "new" | "advanced" | "experiment" | "deprecated"\n confetti?: boolean\n one_way?: boolean\n reverse_checked?: boolean\n is_visible_for_partner?: boolean\n visibility_rules: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }>\n}\n```\n\n### `FeatureFlagMetadata`\n\nMetadata for a single feature flag toggle\n\n```ts\ntype FeatureFlagMetadata = {\n feature_name: string\n title?: {\n key: string\n default_value?: string\n }\n description?: {\n key: string\n default_value?: string\n }\n badge?: "alpha" | "beta" | "new" | "advanced" | "experiment" | "deprecated"\n confetti?: boolean\n one_way?: boolean\n reverse_checked?: boolean\n is_visible_for_partner?: boolean\n visibility_rules: Array<{\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }\n rules?: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }>\n}\n```\n\n### `I18nString`\n\nInternationalized string with a translation key and optional default value\n\n```ts\ntype I18nString = {\n key: string\n default_value?: string\n}\n```\n\n### `VisibilityRule`\n\nA rule that determines feature visibility. Rules are combined with AND logic\nat the top level. Supports boolean combinators (and, or, not) for complex logic.\n\n\n```ts\ntype VisibilityRule = {\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }\n rules?: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }\n rules?: Array<{\n type: "always" | "never" | "advanced_mode" | "pricing_tier" | "feature_flag" | "permission" | "setting_enabled" | "flag_enabled" | "not" | "and" | "or"\n setting_key?: string\n flag_name?: string\n action?: string\n resource?: string\n rule?: {\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }\n rules?: Array<{\n type: { ... }\n setting_key?: { ... }\n flag_name?: { ... }\n action?: { ... }\n resource?: { ... }\n rule?: { ... }\n rules?: { ... }\n }>\n }>\n}\n```\n';
|
|
5
|
+
export {
|
|
6
|
+
organization_default as default
|
|
7
|
+
};
|