@epilot/sdk 2.7.12 → 2.7.14
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/file.json +68 -4
- package/definitions/pricing.json +32 -0
- package/definitions/targeting.json +14 -7
- package/dist/apis/access-token.cjs +6 -6
- package/dist/apis/access-token.js +1 -1
- package/dist/apis/address-suggestions.cjs +6 -6
- package/dist/apis/address-suggestions.js +1 -1
- package/dist/apis/address.cjs +6 -6
- package/dist/apis/address.js +1 -1
- package/dist/apis/ai-agents.cjs +6 -6
- package/dist/apis/ai-agents.js +1 -1
- package/dist/apis/app.cjs +6 -6
- package/dist/apis/app.js +1 -1
- package/dist/apis/audit-logs.cjs +6 -6
- package/dist/apis/audit-logs.js +1 -1
- package/dist/apis/automation.cjs +6 -6
- package/dist/apis/automation.js +1 -1
- package/dist/apis/billing.cjs +6 -6
- package/dist/apis/billing.js +1 -1
- package/dist/apis/blueprint-manifest.cjs +6 -6
- package/dist/apis/blueprint-manifest.js +1 -1
- package/dist/apis/calendar.cjs +6 -6
- package/dist/apis/calendar.js +1 -1
- package/dist/apis/configuration-hub.cjs +6 -6
- package/dist/apis/configuration-hub.js +1 -1
- package/dist/apis/consent.cjs +6 -6
- package/dist/apis/consent.js +1 -1
- package/dist/apis/customer-portal.cjs +6 -6
- package/dist/apis/customer-portal.js +1 -1
- package/dist/apis/dashboard.cjs +6 -6
- package/dist/apis/dashboard.js +1 -1
- package/dist/apis/data-governance.cjs +6 -6
- package/dist/apis/data-governance.js +1 -1
- package/dist/apis/deduplication.cjs +6 -6
- package/dist/apis/deduplication.js +1 -1
- package/dist/apis/design.cjs +6 -6
- package/dist/apis/design.js +1 -1
- package/dist/apis/document.cjs +6 -6
- package/dist/apis/document.js +1 -1
- package/dist/apis/email-settings.cjs +6 -6
- package/dist/apis/email-settings.js +1 -1
- package/dist/apis/email-template.cjs +6 -6
- package/dist/apis/email-template.js +1 -1
- package/dist/apis/entity-mapping.cjs +6 -6
- package/dist/apis/entity-mapping.js +1 -1
- package/dist/apis/entity.cjs +6 -6
- package/dist/apis/entity.js +1 -1
- package/dist/apis/environments.cjs +6 -6
- package/dist/apis/environments.js +1 -1
- package/dist/apis/event-catalog.cjs +6 -6
- package/dist/apis/event-catalog.js +1 -1
- package/dist/apis/file.cjs +6 -6
- package/dist/apis/file.d.cts +2 -2
- package/dist/apis/file.d.ts +2 -2
- package/dist/apis/file.js +1 -1
- package/dist/apis/iban.cjs +6 -6
- package/dist/apis/iban.js +1 -1
- package/dist/apis/integration-toolkit.cjs +6 -6
- package/dist/apis/integration-toolkit.js +1 -1
- package/dist/apis/journey.cjs +6 -6
- package/dist/apis/journey.js +1 -1
- package/dist/apis/kanban.cjs +6 -6
- package/dist/apis/kanban.js +1 -1
- package/dist/apis/message.cjs +6 -6
- package/dist/apis/message.js +1 -1
- package/dist/apis/metering.cjs +6 -6
- package/dist/apis/metering.js +1 -1
- package/dist/apis/notes.cjs +6 -6
- package/dist/apis/notes.js +1 -1
- package/dist/apis/notification.cjs +6 -6
- package/dist/apis/notification.js +1 -1
- package/dist/apis/organization.cjs +6 -6
- package/dist/apis/organization.js +1 -1
- package/dist/apis/partner-directory.cjs +6 -6
- package/dist/apis/partner-directory.js +1 -1
- package/dist/apis/permissions.cjs +6 -6
- package/dist/apis/permissions.js +1 -1
- package/dist/apis/pricing-tier.cjs +6 -6
- package/dist/apis/pricing-tier.js +1 -1
- package/dist/apis/pricing.cjs +6 -6
- package/dist/apis/pricing.d.cts +2 -2
- package/dist/apis/pricing.d.ts +2 -2
- package/dist/apis/pricing.js +1 -1
- package/dist/apis/purpose.cjs +6 -6
- package/dist/apis/purpose.js +1 -1
- package/dist/apis/query.cjs +6 -6
- package/dist/apis/query.js +1 -1
- package/dist/apis/sandbox.cjs +6 -6
- package/dist/apis/sandbox.js +1 -1
- package/dist/apis/sharing.cjs +6 -6
- package/dist/apis/sharing.js +1 -1
- package/dist/apis/submission.cjs +6 -6
- package/dist/apis/submission.js +1 -1
- package/dist/apis/target.cjs +6 -6
- package/dist/apis/target.js +1 -1
- package/dist/apis/targeting.cjs +6 -6
- package/dist/apis/targeting.d.cts +2 -2
- package/dist/apis/targeting.d.ts +2 -2
- package/dist/apis/targeting.js +1 -1
- package/dist/apis/template-variables.cjs +6 -6
- package/dist/apis/template-variables.js +1 -1
- package/dist/apis/user.cjs +6 -6
- package/dist/apis/user.js +1 -1
- package/dist/apis/validation-rules.cjs +6 -6
- package/dist/apis/validation-rules.js +1 -1
- package/dist/apis/webhooks.cjs +6 -6
- package/dist/apis/webhooks.js +1 -1
- package/dist/apis/workflow-definition.cjs +6 -6
- package/dist/apis/workflow-definition.js +1 -1
- package/dist/apis/workflow.cjs +6 -6
- package/dist/apis/workflow.js +1 -1
- package/dist/{chunk-SAMDHOZ5.cjs → chunk-P2NOKWKO.cjs} +3 -3
- package/dist/{chunk-5QPKSRW5.js → chunk-VPRWTF4G.js} +3 -3
- package/dist/file-2MSILSPP.cjs +7 -0
- package/dist/file-JVFTT5RZ.js +7 -0
- package/dist/{file.d-Rq_mbdOo.d.cts → file.d-BjlMgTwj.d.cts} +93 -20
- package/dist/{file.d-Rq_mbdOo.d.ts → file.d-BjlMgTwj.d.ts} +93 -20
- package/dist/index.cjs +8 -8
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +1 -1
- package/dist/pricing-5Y7TZHMR.js +7 -0
- package/dist/pricing-BJUABPHU.cjs +7 -0
- package/dist/{pricing.d-exMaGWm1.d.cts → pricing.d-gPt5L7wp.d.cts} +12 -1
- package/dist/{pricing.d-exMaGWm1.d.ts → pricing.d-gPt5L7wp.d.ts} +12 -1
- package/dist/targeting-DAFJBPIZ.cjs +7 -0
- package/dist/targeting-TGPCRRI6.js +7 -0
- package/dist/{targeting.d-BkPe5NmP.d.cts → targeting.d-DxHQbn7-.d.cts} +11 -8
- package/dist/{targeting.d-BkPe5NmP.d.ts → targeting.d-DxHQbn7-.d.ts} +11 -8
- package/docs/file.md +64 -32
- package/docs/pricing.md +20 -0
- package/docs/targeting.md +11 -8
- package/package.json +1 -1
- package/dist/file-BGJVE7QG.cjs +0 -7
- package/dist/file-DRLPMLFW.js +0 -7
- package/dist/pricing-F7HQ6BWC.cjs +0 -7
- package/dist/pricing-YCD4EUGI.js +0 -7
- package/dist/targeting-5N5DGNHB.js +0 -7
- package/dist/targeting-6U2RIRAE.cjs +0 -7
package/dist/file-DRLPMLFW.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import "./chunk-YPSWSI3M.js";
|
|
2
|
-
|
|
3
|
-
// src/docs/file.json
|
|
4
|
-
var file_default = '# File API\n\n- **Base URL:** `https://file.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/file](https://docs.epilot.io/api/file)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.file.uploadFileV2(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/file\'\n\nconst fileClient = getClient()\nauthorize(fileClient, () => \'<token>\')\nconst { data } = await fileClient.uploadFileV2(...)\n```\n\n## Operations\n\n**File**\n- [`uploadFileV2`](#uploadfilev2)\n- [`saveFileV2`](#savefilev2)\n- [`getFile`](#getfile)\n- [`deleteFile`](#deletefile)\n- [`downloadFile`](#downloadfile)\n- [`downloadS3File`](#downloads3file)\n- [`downloadFiles`](#downloadfiles)\n- [`createZipJob`](#createzipjob)\n- [`getZipJob`](#getzipjob)\n- [`generateFileSummary`](#generatefilesummary)\n- [`verifyCustomDownloadUrl`](#verifycustomdownloadurl)\n- [`uploadFilePublic`](#uploadfilepublic)\n\n**Preview**\n- [`previewFile`](#previewfile)\n- [`previewS3File`](#previews3file)\n- [`previewS3FileGet`](#previews3fileget)\n- [`previewPublicFile`](#previewpublicfile)\n\n**Session**\n- [`getSession`](#getsession)\n- [`deleteSession`](#deletesession)\n\n**Public Links**\n- [`generatePublicLink`](#generatepubliclink)\n- [`listPublicLinksForFile`](#listpubliclinksforfile)\n- [`accessPublicLink`](#accesspubliclink)\n- [`revokePublicLink`](#revokepubliclink)\n\n**File Collections**\n- [`getUserSchemaFileCollections`](#getuserschemafilecollections)\n- [`createUserSchemaFileCollection`](#createuserschemafilecollection)\n- [`updateUserSchemaFileCollection`](#updateuserschemafilecollection)\n- [`deleteUserSchemaFileCollection`](#deleteuserschemafilecollection)\n- [`getFilesInCollection`](#getfilesincollection)\n- [`getGlobalFileCollections`](#getglobalfilecollections)\n\n**Schemas**\n- [`EntityId`](#entityid)\n- [`EntitySlug`](#entityslug)\n- [`ActivityId`](#activityid)\n- [`FileEntityId`](#fileentityid)\n- [`FileAttributes`](#fileattributes)\n- [`FileType`](#filetype)\n- [`FileSummaryStatus`](#filesummarystatus)\n- [`FileSummaryGenerationStatus`](#filesummarygenerationstatus)\n- [`CustomDownloadUrl`](#customdownloadurl)\n- [`FileEntity`](#fileentity)\n- [`CommonSaveFilePayload`](#commonsavefilepayload)\n- [`SaveS3FilePayload`](#saves3filepayload)\n- [`SaveFileFromSourceURLPayload`](#savefilefromsourceurlpayload)\n- [`SaveCustomFilePayload`](#savecustomfilepayload)\n- [`SaveFilePayload`](#savefilepayload)\n- [`SaveFilePayloadV2`](#savefilepayloadv2)\n- [`BatchSaveFileVersionPayload`](#batchsavefileversionpayload)\n- [`UploadFilePayload`](#uploadfilepayload)\n- [`FileUpload`](#fileupload)\n- [`DownloadFilesPayload`](#downloadfilespayload)\n- [`CreateZipJobPayload`](#createzipjobpayload)\n- [`ZipJob`](#zipjob)\n- [`VerifyCustomDownloadUrlPayload`](#verifycustomdownloadurlpayload)\n- [`S3Reference`](#s3reference)\n- [`S3Ref`](#s3ref)\n- [`FileItem`](#fileitem)\n- [`FileRelationItem`](#filerelationitem)\n- [`PublicLink`](#publiclink)\n- [`BaseEntityOwner`](#baseentityowner)\n- [`BaseEntityAcl`](#baseentityacl)\n- [`ErrorObject`](#errorobject)\n- [`FileCollectionId`](#filecollectionid)\n- [`FileCollectionItem`](#filecollectionitem)\n- [`FileCollectionAttributes`](#filecollectionattributes)\n- [`FileCollectionCreateRequest`](#filecollectioncreaterequest)\n\n### `uploadFileV2`\n\nCreate pre-signed S3 URL to upload a file to keep temporarily (one week).\n\n`POST /v2/files/upload`\n\n```ts\nconst { data } = await client.uploadFileV2(\n {\n file_entity_id: \'example\',\n },\n {\n filename: \'document.pdf\',\n mime_type: \'application/pdf\',\n index_tag: \'2f6a377c8e78\',\n metadata: {\n color: \'blue\'\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "s3ref": {\n "bucket": "epilot-prod-user-content",\n "key": "123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"\n },\n "upload_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123",\n "public_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"\n}\n```\n\n</details>\n\n---\n\n### `saveFileV2`\n\nSaves a permanent file entity. Updates an existing file entity when `_id` is passed.\n\n`POST /v2/files`\n\n```ts\nconst { data } = await client.saveFileV2(\n {\n activity_id: \'example\',\n fill_activity: true,\n strict: true,\n async: true,\n delete_temp_file: true,\n version_only: true,\n },\n {\n _id: \'ef7d985c-2385-44f4-9c71-ae06a52264f8\',\n file_entity_id: \'string\',\n relations: [\n {\n entity_id: \'ef7d985c-2385-44f4-9c71-ae06a52264f8\',\n _schema: \'contact\',\n _tags: [\'string\']\n }\n ],\n _tags: [\'tag1\', \'tag2\'],\n _purpose: [\'8d396871-95a0-4c9d-bb4d-9eda9c35776c\', \'da7cdf9a-01be-40c9-a29c-9a8f9f0de6f8\'],\n _manifest: [\'123e4567-e89b-12d3-a456-426614174000\'],\n filename: \'document.pdf\',\n type: \'document\',\n mime_type: \'application/pdf\',\n size_bytes: 1234,\n readable_size: \'1.2 MB\',\n access_control: \'private\',\n public_url: \'https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf\',\n custom_download_url: \'https://some-api-url.com/download?file_id=123\',\n preview_summary: \'string\',\n short_summary: \'string\',\n summary_status: \'processing\',\n s3ref: {}\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_title": "document.pdf",\n "_schema": "file",\n "_org": "123",\n "_id": "ef7d985c-2385-44f4-9c71-ae06a52264f8",\n "_tags": ["tag1", "tag2"],\n "_purpose": ["8d396871-95a0-4c9d-bb4d-9eda9c35776c", "da7cdf9a-01be-40c9-a29c-9a8f9f0de6f8"],\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "filename": "document.pdf",\n "type": "document",\n "mime_type": "application/pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "access_control": "private",\n "public_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf",\n "custom_download_url": "https://some-api-url.com/download?file_id=123",\n "preview_summary": "string",\n "short_summary": "string",\n "summary_status": "processing",\n "source_url": "https://productengineer-content.s3.eu-west-1.amazonaws.com/product-engineer-checklist.pdf",\n "s3ref": {},\n "versions": [\n {\n "s3ref": {},\n "filename": "document.pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "mime_type": "image/jpeg"\n }\n ],\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_acl": {\n "view": ["org:456"],\n "edit": ["org:456"],\n "delete": ["org:456"]\n },\n "_owners": [\n {\n "org_id": "123",\n "user_id": "123"\n }\n ],\n "__additional": {}\n}\n```\n\n</details>\n\n---\n\n### `getFile`\n\nGet a file entity by id\n\n`GET /v2/files/{id}`\n\n```ts\nconst { data } = await client.getFile({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n source_url: true,\n strict: true,\n async: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_title": "document.pdf",\n "_schema": "file",\n "_org": "123",\n "_id": "ef7d985c-2385-44f4-9c71-ae06a52264f8",\n "_tags": ["tag1", "tag2"],\n "_purpose": ["8d396871-95a0-4c9d-bb4d-9eda9c35776c", "da7cdf9a-01be-40c9-a29c-9a8f9f0de6f8"],\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "filename": "document.pdf",\n "type": "document",\n "mime_type": "application/pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "access_control": "private",\n "public_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf",\n "custom_download_url": "https://some-api-url.com/download?file_id=123",\n "preview_summary": "string",\n "short_summary": "string",\n "summary_status": "processing",\n "source_url": "https://productengineer-content.s3.eu-west-1.amazonaws.com/product-engineer-checklist.pdf",\n "s3ref": {},\n "versions": [\n {\n "s3ref": {},\n "filename": "document.pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "mime_type": "image/jpeg"\n }\n ],\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_acl": {\n "view": ["org:456"],\n "edit": ["org:456"],\n "delete": ["org:456"]\n },\n "_owners": [\n {\n "org_id": "123",\n "user_id": "123"\n }\n ],\n "__additional": {}\n}\n```\n\n</details>\n\n---\n\n### `deleteFile`\n\nDelete a file entity by id\n\n`DELETE /v2/files/{id}`\n\n```ts\nconst { data } = await client.deleteFile({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n purge: true,\n activity_id: \'example\',\n strict: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "_title": "document.pdf",\n "_schema": "file",\n "_org": "123",\n "_id": "ef7d985c-2385-44f4-9c71-ae06a52264f8",\n "_tags": ["tag1", "tag2"],\n "_purpose": ["8d396871-95a0-4c9d-bb4d-9eda9c35776c", "da7cdf9a-01be-40c9-a29c-9a8f9f0de6f8"],\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "filename": "document.pdf",\n "type": "document",\n "mime_type": "application/pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "access_control": "private",\n "public_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf",\n "custom_download_url": "https://some-api-url.com/download?file_id=123",\n "preview_summary": "string",\n "short_summary": "string",\n "summary_status": "processing",\n "source_url": "https://productengineer-content.s3.eu-west-1.amazonaws.com/product-engineer-checklist.pdf",\n "s3ref": {},\n "versions": [\n {\n "s3ref": {},\n "filename": "document.pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "mime_type": "image/jpeg"\n }\n ],\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_acl": {\n "view": ["org:456"],\n "edit": ["org:456"],\n "delete": ["org:456"]\n },\n "_owners": [\n {\n "org_id": "123",\n "user_id": "123"\n }\n ],\n "__additional": {}\n}\n```\n\n</details>\n\n---\n\n### `downloadFile`\n\nGenerate a pre-signed download URL for a file.\n\n`GET /v1/files/{id}/download`\n\n```ts\nconst { data } = await client.downloadFile({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n version: 1,\n attachment: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "download_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"\n}\n```\n\n</details>\n\n---\n\n### `downloadS3File`\n\nGenerate a pre-signed download URL for a file using its S3 reference.\n\n`POST /v1/files:downloadS3`\n\n```ts\nconst { data } = await client.downloadS3File({\n s3_key: \'example\',\n s3_bucket: \'example\',\n attachment: true,\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "download_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123"\n}\n```\n\n</details>\n\n---\n\n### `downloadFiles`\n\nBulk generate pre-signed download URLs for multiple files in a single request.\n\n`POST /v1/files:downloadFiles`\n\n```ts\nconst { data } = await client.downloadFiles(\n null,\n [\n {\n id: \'ef7d985c-2385-44f4-9c71-ae06a52264f8\',\n version: 0\n }\n ],\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "download_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123",\n "file_entity_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"\n }\n]\n```\n\n</details>\n\n---\n\n### `createZipJob`\n\nCreate a background job to ZIP multiple files and send a download link via email.\n\n`POST /v1/files:zipJob`\n\n```ts\nconst { data } = await client.createZipJob(\n null,\n {},\n)\n```\n\n---\n\n### `getZipJob`\n\nGet the status of a ZIP job\n\n`GET /v1/files:zipJob/{job_id}`\n\n```ts\nconst { data } = await client.getZipJob({\n job_id: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "job_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "status": "completed",\n "progress": {\n "total_files": 100,\n "downloaded_files": 75,\n "failed_files": 2\n },\n "result": {\n "file_entity_id": "ef7d985c-2385-44f4-9c71-ae06a52264f8",\n "download_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/files.zip?X-Amz-...",\n "expires_at": "2024-01-02T12:00:00Z",\n "zip_size_bytes": 104857600\n },\n "error": "Failed to download file: access denied",\n "created_at": "2024-01-01T12:00:00Z",\n "created_by": "10234",\n "org_id": "123",\n "updated_at": "2024-01-01T12:05:00Z"\n}\n```\n\n</details>\n\n---\n\n### `generateFileSummary`\n\nRequest AI generation of preview and short summaries for a file entity.\n\n`POST /v1/files/{id}/summary:generate`\n\n```ts\nconst { data } = await client.generateFileSummary({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `previewFile`\n\nGenerate a thumbnail preview for a file entity.\n\n`GET /v1/files/{id}/preview`\n\n```ts\nconst { data } = await client.previewFile({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n version: 1,\n w: 1,\n h: 1,\n})\n```\n\n---\n\n### `previewS3File`\n\nGenerate a thumbnail preview from an S3 reference.\n\n`POST /v1/files:previewS3`\n\n```ts\nconst { data } = await client.previewS3File(\n {\n w: 1,\n h: 1,\n },\n {},\n)\n```\n\n---\n\n### `previewS3FileGet`\n\nGet a thumbnail preview from an S3 reference using query parameters.\n\n`GET /v1/files:previewS3`\n\n```ts\nconst { data } = await client.previewS3FileGet({\n key: \'example\',\n bucket: \'example\',\n w: 1,\n h: 1,\n})\n```\n\n---\n\n### `previewPublicFile`\n\nGenerate a thumbnail preview for a public file entity.\n\n`GET /v1/files/public/{id}/preview`\n\n```ts\nconst { data } = await client.previewPublicFile({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n version: 1,\n w: 1,\n h: 1,\n org_id: \'example\',\n})\n```\n\n---\n\n### `getSession`\n\nStart a browser session by converting a Bearer token into a server-side cookie.\n\n`GET /v1/files/session`\n\n```ts\nconst { data } = await client.getSession()\n```\n\n---\n\n### `deleteSession`\n\nEnd a browser session by deleting the token cookie.\n\n`DELETE /v1/files/session`\n\n```ts\nconst { data } = await client.deleteSession()\n```\n\n---\n\n### `generatePublicLink`\n\nGenerate a public link to share a private file externally.\n\n`POST /v1/files/{id}/public/links`\n\n```ts\nconst { data } = await client.generatePublicLink({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n"string"\n```\n\n</details>\n\n---\n\n### `listPublicLinksForFile`\n\nFetches all public links previously generated for a file\n\n`GET /v1/files/{id}/public/links`\n\n```ts\nconst { data } = await client.listPublicLinksForFile({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "results": [\n {\n "id": "3ef5c6d9-818d-45e6-8efb-b1de59079a1c",\n "link": "https://file.sls.epilot.io/v1/files/public/links/3ef5c6d9-818d-45e6-8efb-b1de59079a1c",\n "last_accessed_at": "string"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `accessPublicLink`\n\nAccess a file via its public link.\n\n`GET /v1/files/public/links/{id}/{filename}`\n\n```ts\nconst { data } = await client.accessPublicLink({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n filename: \'example\',\n hash: \'example\',\n})\n```\n\n---\n\n### `revokePublicLink`\n\nRevokes a given public link by ID\n\n`DELETE /v1/files/public/links/{id}`\n\n```ts\nconst { data } = await client.revokePublicLink({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n})\n```\n\n---\n\n### `verifyCustomDownloadUrl`\n\nVerify that a custom download URL is valid and has not expired.\n\n`POST /v1/files/download:verify`\n\n```ts\nconst { data } = await client.verifyCustomDownloadUrl(\n null,\n {\n custom_download_url: \'https://some-api-url.com?file_id=123&expires_at=1699273500029&signature=abcdefg\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "valid": true\n}\n```\n\n</details>\n\n---\n\n### `uploadFilePublic`\n\nCreate a pre-signed S3 URL for uploading a file without authentication.\n\n`POST /v1/files/public/upload`\n\n```ts\nconst { data } = await client.uploadFilePublic(\n null,\n {\n filename: \'document.pdf\',\n mime_type: \'application/pdf\',\n index_tag: \'2f6a377c8e78\',\n metadata: {\n color: \'blue\'\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "s3ref": {\n "bucket": "epilot-prod-user-content",\n "key": "123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf"\n },\n "upload_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/temp/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf?AWSParams=123",\n "error": "File entity not found"\n}\n```\n\n</details>\n\n---\n\n### `getUserSchemaFileCollections`\n\nGet all file collections for the current user within a specific schema.\n\n`GET /v1/{slug}/collections`\n\n```ts\nconst { data } = await client.getUserSchemaFileCollections({\n slug: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "slug": "_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234:documents",\n "name": "Documents",\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "parents": ["_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234"],\n "starred": false,\n "order": 0,\n "enabled_locations": ["string"],\n "enabled_purposes": ["9eefcb98-93cf-4c5b-a040-f1d26d57c177", "5c544c09-a691-43ed-a7fa-0a8b44b5b161"],\n "created_at": "2024-01-01T12:00:00Z",\n "updated_at": "2024-01-02T12:00:00Z"\n }\n]\n```\n\n</details>\n\n---\n\n### `createUserSchemaFileCollection`\n\nCreate a new file collection for the current user within a specific schema.\n\n`POST /v1/{slug}/collections`\n\n```ts\nconst { data } = await client.createUserSchemaFileCollection(\n {\n slug: \'example\',\n },\n {\n name: \'string\',\n parents: [\'string\'],\n starred: false,\n enabled_locations: [\'string\'],\n enabled_purposes: [\'string\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "slug": "_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234:documents",\n "name": "Documents",\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "parents": ["_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234"],\n "starred": false,\n "order": 0,\n "enabled_locations": ["string"],\n "enabled_purposes": ["9eefcb98-93cf-4c5b-a040-f1d26d57c177", "5c544c09-a691-43ed-a7fa-0a8b44b5b161"],\n "created_at": "2024-01-01T12:00:00Z",\n "updated_at": "2024-01-02T12:00:00Z"\n}\n```\n\n</details>\n\n---\n\n### `updateUserSchemaFileCollection`\n\nUpdate an existing file collection.\n\n`PUT /v1/{slug}/collections/{collectionSlug}`\n\n```ts\nconst { data } = await client.updateUserSchemaFileCollection(\n {\n slug: \'example\',\n collectionSlug: \'example\',\n },\n {\n name: \'string\',\n parents: [\'string\'],\n starred: false,\n enabled_locations: [\'string\'],\n enabled_purposes: [\'string\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "slug": "_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234:documents",\n "name": "Documents",\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "parents": ["_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234"],\n "starred": false,\n "order": 0,\n "enabled_locations": ["string"],\n "enabled_purposes": ["9eefcb98-93cf-4c5b-a040-f1d26d57c177", "5c544c09-a691-43ed-a7fa-0a8b44b5b161"],\n "created_at": "2024-01-01T12:00:00Z",\n "updated_at": "2024-01-02T12:00:00Z"\n}\n```\n\n</details>\n\n---\n\n### `deleteUserSchemaFileCollection`\n\nDelete a file collection.\n\n`DELETE /v1/{slug}/collections/{collectionSlug}`\n\n```ts\nconst { data } = await client.deleteUserSchemaFileCollection({\n slug: \'example\',\n collectionSlug: \'example\',\n})\n```\n\n---\n\n### `getFilesInCollection`\n\nGet all files within a specific collection for an entity.\n\n`GET /v1/entity/{id}/collections/{collectionSlug}/files`\n\n```ts\nconst { data } = await client.getFilesInCollection({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n collectionSlug: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "_title": "document.pdf",\n "_schema": "file",\n "_org": "123",\n "_id": "ef7d985c-2385-44f4-9c71-ae06a52264f8",\n "_tags": ["tag1", "tag2"],\n "_purpose": ["8d396871-95a0-4c9d-bb4d-9eda9c35776c", "da7cdf9a-01be-40c9-a29c-9a8f9f0de6f8"],\n "_manifest": ["123e4567-e89b-12d3-a456-426614174000"],\n "filename": "document.pdf",\n "type": "document",\n "mime_type": "application/pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "access_control": "private",\n "public_url": "https://epilot-prod-user-content.s3.eu-central-1.amazonaws.com/123/4d689aeb-1497-4410-a9fe-b36ca9ac4389/document.pdf",\n "custom_download_url": "https://some-api-url.com/download?file_id=123",\n "preview_summary": "string",\n "short_summary": "string",\n "summary_status": "processing",\n "source_url": "https://productengineer-content.s3.eu-west-1.amazonaws.com/product-engineer-checklist.pdf",\n "s3ref": {},\n "versions": [\n {\n "s3ref": {},\n "filename": "document.pdf",\n "size_bytes": 1234,\n "readable_size": "1.2 MB",\n "mime_type": "image/jpeg"\n }\n ],\n "_updated_at": "1970-01-01T00:00:00.000Z",\n "_created_at": "1970-01-01T00:00:00.000Z",\n "_acl": {\n "view": ["org:456"],\n "edit": ["org:456"],\n "delete": ["org:456"]\n },\n "_owners": [\n {\n "org_id": "123",\n "user_id": "123"\n }\n ],\n "__additional": {}\n }\n]\n```\n\n</details>\n\n---\n\n### `getGlobalFileCollections`\n\nGet all global file collections for a specific schema.\n\n`GET /v1/collections/{schemaSlug}`\n\n```ts\nconst { data } = await client.getGlobalFileCollections({\n schemaSlug: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "slug": "_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234:documents",\n "name": "Documents",\n "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",\n "parents": ["_system_files_collection_3fa85f64-5717-4562-b3fc-2c963f66afa6_10234"],\n "starred": false,\n "order": 0,\n "enabled_locations": ["string"],\n "enabled_purposes": ["9eefcb98-93cf-4c5b-a040-f1d26d57c177", "5c544c09-a691-43ed-a7fa-0a8b44b5b161"],\n "created_at": "2024-01-01T12:00:00Z",\n "updated_at": "2024-01-02T12:00:00Z"\n }\n]\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `EntityId`\n\n```ts\ntype EntityId = string\n```\n\n### `EntitySlug`\n\nURL-friendly identifier for the entity schema\n\n```ts\ntype EntitySlug = string\n```\n\n### `ActivityId`\n\nSee https://github.com/ulid/spec\n\n```ts\ntype ActivityId = string // ulid\n```\n\n### `FileEntityId`\n\n```ts\ntype FileEntityId = string | string // uuid\n```\n\n### `FileAttributes`\n\n```ts\ntype FileAttributes = {\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n}\n```\n\n### `FileType`\n\n```ts\ntype FileType = "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n```\n\n### `FileSummaryStatus`\n\nCurrent AI summary generation state for the file.\n\n```ts\ntype FileSummaryStatus = "processing" | "completed" | "failed" | "unsupported"\n```\n\n### `FileSummaryGenerationStatus`\n\n```ts\ntype FileSummaryGenerationStatus = {\n status: "processing" | "completed" | "failed" | "unsupported"\n}\n```\n\n### `CustomDownloadUrl`\n\nCustom external download url used for the file\n\n```ts\ntype CustomDownloadUrl = string // uri\n```\n\n### `FileEntity`\n\n```ts\ntype FileEntity = {\n _title: string\n _schema: "file"\n _org: string\n _id: string | string // uuid\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename: string\n type: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n source_url?: string\n s3ref?: object\n versions: Array<{\n s3ref?: unknown\n filename?: string\n size_bytes?: number\n readable_size?: string\n mime_type?: string\n }>\n _updated_at?: string // date-time\n _created_at?: string // date-time\n _acl?: {\n view?: string[]\n edit?: string[]\n delete?: string[]\n }\n _owners?: Array<{\n org_id: string\n user_id?: string\n }>\n __additional?: Record<string, unknown>\n}\n```\n\n### `CommonSaveFilePayload`\n\n```ts\ntype CommonSaveFilePayload = {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n}\n```\n\n### `SaveS3FilePayload`\n\n```ts\ntype SaveS3FilePayload = {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n s3ref?: unknown\n}\n```\n\n### `SaveFileFromSourceURLPayload`\n\n```ts\ntype SaveFileFromSourceURLPayload = {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n source_url?: string // uri\n}\n```\n\n### `SaveCustomFilePayload`\n\n```ts\ntype SaveCustomFilePayload = {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n}\n```\n\n### `SaveFilePayload`\n\n```ts\ntype SaveFilePayload = {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n s3ref?: unknown\n} | {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n source_url?: string // uri\n} | {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n}\n```\n\n### `SaveFilePayloadV2`\n\n```ts\ntype SaveFilePayloadV2 = {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n s3ref?: unknown\n} | {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n source_url?: string // uri\n} | {\n _id?: object\n file_entity_id?: string\n relations?: Array<{\n entity_id: string\n _schema?: string\n _tags?: string[]\n }>\n _tags?: string[]\n _purpose?: string[]\n _manifest?: string // uuid[]\n filename?: string\n type?: "document" | "document_template" | "text" | "image" | "video" | "audio" | "spreadsheet" | "presentation" | "font" | "archive" | "application" | "unknown"\n mime_type?: string\n size_bytes?: number\n readable_size?: string\n access_control?: "private" | "public-read"\n public_url?: string // url\n custom_download_url?: string // uri\n preview_summary?: string\n short_summary?: string\n summary_status?: "processing" | "completed" | "failed" | "unsupported"\n}\n```\n\n### `BatchSaveFileVersionPayload`\n\nPayload for batch version save. Only s3ref payloads are supported.\n\n```ts\ntype BatchSaveFileVersionPayload = {\n _id?: object\n file_entity_id?: string\n filename?: string\n mime_type?: string\n access_control?: "private" | "public-read"\n s3ref: unknown\n}\n```\n\n### `UploadFilePayload`\n\n```ts\ntype UploadFilePayload = {\n filename: string\n mime_type?: string\n index_tag?: string\n metadata?: Record<string, string>\n}\n```\n\n### `FileUpload`\n\n```ts\ntype FileUpload = {\n s3ref?: object\n upload_url?: string // url\n public_url?: string // url\n}\n```\n\n### `DownloadFilesPayload`\n\n```ts\ntype DownloadFilesPayload = Array<{\n id: string | string // uuid\n version?: number\n}>\n```\n\n### `CreateZipJobPayload`\n\nRequest payload to create a ZIP job for bulk file download.\nProvide either an explicit list of `file_entity_ids` (up to 1000) or an\n`entity_query` that resolves to file entities (up to 10000).\n\n\n```ts\ntype CreateZipJobPayload = unknown | unknown\n```\n\n### `ZipJob`\n\nZIP job status and result\n\n```ts\ntype ZipJob = {\n job_id?: string // uuid\n status?: "queued" | "downloading" | "zipping" | "uploading" | "sending_notification" | "completed" | "failed"\n progress?: {\n total_files?: number\n downloaded_files?: number\n failed_files?: number\n }\n result?: {\n file_entity_id?: string // uuid\n download_url?: string // uri\n expires_at?: string // date-time\n zip_size_bytes?: number\n }\n error?: string\n created_at?: string // date-time\n created_by?: string\n org_id?: string\n updated_at?: string // date-time\n}\n```\n\n### `VerifyCustomDownloadUrlPayload`\n\n```ts\ntype VerifyCustomDownloadUrlPayload = {\n custom_download_url: string\n}\n```\n\n### `S3Reference`\n\n```ts\ntype S3Reference = {\n bucket: string\n key: string\n}\n```\n\n### `S3Ref`\n\n```ts\ntype S3Ref = {\n bucket: string\n key: string\n}\n```\n\n### `FileItem`\n\n```ts\ntype FileItem = {\n s3ref?: unknown\n filename?: string\n size_bytes?: number\n readable_size?: string\n mime_type?: string\n}\n```\n\n### `FileRelationItem`\n\n```ts\ntype FileRelationItem = {\n entity_id: string\n _schema?: string\n _tags?: string[]\n}\n```\n\n### `PublicLink`\n\n```ts\ntype PublicLink = {\n id?: string\n link?: string\n last_accessed_at?: string\n}\n```\n\n### `BaseEntityOwner`\n\nThe user / organization owning this entity.\n\nNote: Owner implicitly has access to the entity regardless of ACLs.\n\n\n```ts\ntype BaseEntityOwner = {\n org_id: string\n user_id?: string\n}\n```\n\n### `BaseEntityAcl`\n\nAccess control list (ACL) for an entity. Defines sharing access to external orgs or users.\n\n```ts\ntype BaseEntityAcl = {\n view?: string[]\n edit?: string[]\n delete?: string[]\n}\n```\n\n### `ErrorObject`\n\nA generic error returned by the API\n\n```ts\ntype ErrorObject = {\n status?: number\n error?: string\n}\n```\n\n### `FileCollectionId`\n\nGenerated uuid for a file collection\n\n```ts\ntype FileCollectionId = string // uuid\n```\n\n### `FileCollectionItem`\n\nA file collection with identifiers and timestamps\n\n```ts\ntype FileCollectionItem = {\n slug?: string\n name: string\n id?: string // uuid\n parents?: string[]\n starred?: boolean\n order?: number\n enabled_locations?: string[]\n enabled_purposes?: string[]\n created_at?: string // date-time\n updated_at?: string // date-time\n}\n```\n\n### `FileCollectionAttributes`\n\n```ts\ntype FileCollectionAttributes = {\n name?: string\n parents?: string[]\n starred?: boolean\n enabled_locations?: string[]\n enabled_purposes?: string[]\n}\n```\n\n### `FileCollectionCreateRequest`\n\nRequest body for creating a file collection\n\n```ts\ntype FileCollectionCreateRequest = {\n name: string\n parents?: string[]\n starred?: boolean\n enabled_locations?: string[]\n enabled_purposes?: string[]\n}\n```\n';
|
|
5
|
-
export {
|
|
6
|
-
file_default as default
|
|
7
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-NJK5F5TF.cjs');
|
|
2
|
-
|
|
3
|
-
// src/docs/pricing.json
|
|
4
|
-
var pricing_default = '# Pricing API\n\n- **Base URL:** `https://pricing-api.sls.epilot.io`\n- **Full API Docs:** [https://docs.epilot.io/api/pricing](https://docs.epilot.io/api/pricing)\n\n## Usage\n\n```ts\nimport { epilot } from \'@epilot/sdk\'\n\nepilot.authorize(() => \'<token>\')\nconst { data } = await epilot.pricing.$calculatePricingDetails(...)\n```\n\n### Tree-shakeable import\n\n```ts\nimport { getClient, authorize } from \'@epilot/sdk/pricing\'\n\nconst pricingClient = getClient()\nauthorize(pricingClient, () => \'<token>\')\nconst { data } = await pricingClient.$calculatePricingDetails(...)\n```\n\n## Operations\n\n**Order API**\n- [`$calculatePricingDetails`](#$calculatepricingdetails)\n- [`createOrder`](#createorder)\n- [`putOrder`](#putorder)\n\n**Cart API**\n- [`$checkoutCart`](#$checkoutcart)\n\n**Catalog API**\n- [`$searchCatalog`](#$searchcatalog)\n- [`$privateSearchCatalog`](#$privatesearchcatalog)\n\n**Promo Codes API**\n- [`$validatePromoCodes`](#$validatepromocodes)\n\n**Availability API**\n- [`$availabilityCheck`](#$availabilitycheck)\n- [`$validateAvailabilityFile`](#$validateavailabilityfile)\n\n**Spot Market API**\n- [`$historicMarketPrices`](#$historicmarketprices)\n- [`$averageMarketPrice`](#$averagemarketprice)\n\n**External Integrations API**\n- [`$searchExternalProducts`](#$searchexternalproducts)\n- [`$searchExternalProductRecommendations`](#$searchexternalproductrecommendations)\n- [`$searchProviders`](#$searchproviders)\n- [`$searchStreets`](#$searchstreets)\n- [`$computePrice`](#$computeprice)\n- [`$getCredentials`](#$getcredentials)\n- [`$saveCredentials`](#$savecredentials)\n- [`$deleteCredentials`](#$deletecredentials)\n\n**External Catalog API**\n- [`$getExternalCatalogProducts`](#$getexternalcatalogproducts)\n- [`$getExternalCatalogProductRecommendations`](#$getexternalcatalogproductrecommendations)\n\n**Product Recommendations API**\n- [`$productRecommendations`](#$productrecommendations)\n\n**Schemas**\n- [`IntegrationId`](#integrationid)\n- [`Error`](#error)\n- [`Product`](#product)\n- [`Opportunity`](#opportunity)\n- [`Order`](#order)\n- [`Price`](#price)\n- [`BaseCompositePrice`](#basecompositeprice)\n- [`NonHydratedCompositePrice`](#nonhydratedcompositeprice)\n- [`HydratedCompositePrice`](#hydratedcompositeprice)\n- [`CompositePrice`](#compositeprice)\n- [`PriceComponentRelation`](#pricecomponentrelation)\n- [`MetaData`](#metadata)\n- [`PriceInputMappings`](#priceinputmappings)\n- [`PriceInputMapping`](#priceinputmapping)\n- [`PriceConditions`](#priceconditions)\n- [`ExternalFeeMetadata`](#externalfeemetadata)\n- [`ExternalLocationMetadata`](#externallocationmetadata)\n- [`ExternalPriceMetadata`](#externalpricemetadata)\n- [`ExternalFeeMappings`](#externalfeemappings)\n- [`ExternalFeeMapping`](#externalfeemapping)\n- [`CatalogSearch`](#catalogsearch)\n- [`CatalogSearchResult`](#catalogsearchresult)\n- [`SearchProvidersParams`](#searchprovidersparams)\n- [`SearchStreetsParams`](#searchstreetsparams)\n- [`AvailabilityCheckParams`](#availabilitycheckparams)\n- [`AvailabilityResult`](#availabilityresult)\n- [`ValidateAvailabilityFileError`](#validateavailabilityfileerror)\n- [`IntegrationCredentialsResult`](#integrationcredentialsresult)\n- [`SaveIntegrationCredentialsParams`](#saveintegrationcredentialsparams)\n- [`ComputePriceParamsBase`](#computepriceparamsbase)\n- [`ComputePriceParamsPower`](#computepriceparamspower)\n- [`ComputePriceParamsGas`](#computepriceparamsgas)\n- [`SignatureMeta`](#signaturemeta)\n- [`ComputedBasePrice`](#computedbaseprice)\n- [`ComputePriceParams`](#computepriceparams)\n- [`GasConcessionType`](#gasconcessiontype)\n- [`PowerMeterType`](#powermetertype)\n- [`DynamicTariffMode`](#dynamictariffmode)\n- [`DynamicTariffInterval`](#dynamictariffinterval)\n- [`ComputedPriceBreakdown`](#computedpricebreakdown)\n- [`ComputedPriceComponents`](#computedpricecomponents)\n- [`ComputePriceResult`](#computepriceresult)\n- [`SpotMarketBiddingZone`](#spotmarketbiddingzone)\n- [`SpotMarketType`](#spotmarkettype)\n- [`SpotMarketDataFrequency`](#spotmarketdatafrequency)\n- [`HistoricMarketPricesResult`](#historicmarketpricesresult)\n- [`AverageMarketPriceResult`](#averagemarketpriceresult)\n- [`AverageMarketPriceRecord`](#averagemarketpricerecord)\n- [`HistoricMarketPriceRecord`](#historicmarketpricerecord)\n- [`BaseMarketPriceRecord`](#basemarketpricerecord)\n- [`OAuthCredentials`](#oauthcredentials)\n- [`BasicAuthCredentials`](#basicauthcredentials)\n- [`BasicAuthIntegration`](#basicauthintegration)\n- [`OAuthIntegration`](#oauthintegration)\n- [`IntegrationAuthCredentials`](#integrationauthcredentials)\n- [`SearchStreetsResult`](#searchstreetsresult)\n- [`SearchProvidersResult`](#searchprovidersresult)\n- [`Provider`](#provider)\n- [`AdditionalProviderData`](#additionalproviderdata)\n- [`MarketParticipant`](#marketparticipant)\n- [`GasMarketAreaDetails`](#gasmarketareadetails)\n- [`PowerMarketAreaDetails`](#powermarketareadetails)\n- [`Street`](#street)\n- [`ValidateAvailabilityFileResult`](#validateavailabilityfileresult)\n- [`CartDto`](#cartdto)\n- [`CheckoutCart`](#checkoutcart)\n- [`CheckoutCartResult`](#checkoutcartresult)\n- [`CheckoutMode`](#checkoutmode)\n- [`OrderStatus`](#orderstatus)\n- [`BasePriceItemCommon`](#basepriceitemcommon)\n- [`PriceItemDtoUnion`](#priceitemdtounion)\n- [`PriceItemsDto`](#priceitemsdto)\n- [`BasePriceItemDto`](#basepriceitemdto)\n- [`PriceItemDto`](#priceitemdto)\n- [`CompositePriceItemDto`](#compositepriceitemdto)\n- [`TaxAmountDto`](#taxamountdto)\n- [`OrderSource`](#ordersource)\n- [`OpportunitySource`](#opportunitysource)\n- [`RecurrenceAmountDto`](#recurrenceamountdto)\n- [`Currency`](#currency)\n- [`OrderRelation`](#orderrelation)\n- [`OrderPayload`](#orderpayload)\n- [`PriceItems`](#priceitems)\n- [`CompositePriceItem`](#compositepriceitem)\n- [`BasePriceItem`](#basepriceitem)\n- [`CashbackAmounts`](#cashbackamounts)\n- [`DiscountAmounts`](#discountamounts)\n- [`PriceAmounts`](#priceamounts)\n- [`Amounts`](#amounts)\n- [`PriceItem`](#priceitem)\n- [`TaxAmount`](#taxamount)\n- [`TaxAmountBreakdown`](#taxamountbreakdown)\n- [`RecurrenceAmount`](#recurrenceamount)\n- [`CashbackAmount`](#cashbackamount)\n- [`RecurrenceAmountWithTax`](#recurrenceamountwithtax)\n- [`TotalDetails`](#totaldetails)\n- [`PricingDetails`](#pricingdetails)\n- [`PromoCodeValidationResponse`](#promocodevalidationresponse)\n- [`PricingDetailsResponse`](#pricingdetailsresponse)\n- [`BillingPeriod`](#billingperiod)\n- [`CashbackPeriod`](#cashbackperiod)\n- [`SalesTax`](#salestax)\n- [`AvailabilityLocation`](#availabilitylocation)\n- [`AvailabilityFilters`](#availabilityfilters)\n- [`Address`](#address)\n- [`PaymentMethod`](#paymentmethod)\n- [`Customer`](#customer)\n- [`File`](#file)\n- [`EntityId`](#entityid)\n- [`EntityItem`](#entityitem)\n- [`EntityRelation`](#entityrelation)\n- [`Tax`](#tax)\n- [`TaxBreakdownInfo`](#taxbreakdowninfo)\n- [`BaseCouponCommon`](#basecouponcommon)\n- [`CouponWithoutPromoCodes`](#couponwithoutpromocodes)\n- [`Coupon`](#coupon)\n- [`CouponItem`](#couponitem)\n- [`PromoCode`](#promocode)\n- [`RedeemedPromo`](#redeemedpromo)\n- [`PriceTier`](#pricetier)\n- [`PriceTierDisplayMode`](#pricetierdisplaymode)\n- [`PricingModel`](#pricingmodel)\n- [`MarkupPricingModel`](#markuppricingmodel)\n- [`TypeGetAg`](#typegetag)\n- [`TariffTypeGetAg`](#tarifftypegetag)\n- [`ConsumptionTypeGetAg`](#consumptiontypegetag)\n- [`ProductCategory`](#productcategory)\n- [`PriceGetAg`](#pricegetag)\n- [`PriceDynamicTariff`](#pricedynamictariff)\n- [`TierDetails`](#tierdetails)\n- [`SearchExternalCatalogParams`](#searchexternalcatalogparams)\n- [`ExternalCatalogRequest`](#externalcatalogrequest)\n- [`ExternalCatalogConfigurationRequest`](#externalcatalogconfigurationrequest)\n- [`ExternalCatalogJourneyRequest`](#externalcatalogjourneyrequest)\n- [`ExternalCatalogPortalRequest`](#externalcatalogportalrequest)\n- [`ExternalCatalogCustomRequest`](#externalcatalogcustomrequest)\n- [`CustomContext`](#customcontext)\n- [`JourneyContext`](#journeycontext)\n- [`PortalContext`](#portalcontext)\n- [`SearchExternalCatalogResult`](#searchexternalcatalogresult)\n- [`SearchExternalCatalogRecommendationsResult`](#searchexternalcatalogrecommendationsresult)\n- [`ExternalCatalogItem`](#externalcatalogitem)\n- [`ProductRecommendationSearch`](#productrecommendationsearch)\n- [`ProductRecommendationResponse`](#productrecommendationresponse)\n- [`Offer`](#offer)\n- [`ProductRecommendation`](#productrecommendation)\n\n### `$calculatePricingDetails`\n\ncalculatePricingDetails\n\n`POST /v1/pricing:compute`\n\n```ts\nconst { data } = await client.$calculatePricingDetails(\n null,\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "items": [\n {\n "amount_subtotal": 10000,\n "amount_total": 10600,\n "currency": "EUR",\n "description": "Annual internet service",\n "price_id": "7e24ff5d-d580-4136-a32f-19191eed039a",\n "product_id": "6241487f-b7fd-428b-ab92-24ee0b37fd84",\n "taxes": [],\n "unit_amount": 10000,\n "unit_amount_net": 10000,\n "pricing_model": "per_unit",\n "_price": {},\n "_product": {}\n },\n {\n "amount_subtotal": 10000,\n "amount_total": 10600,\n "currency": "EUR",\n "description": "Annual internet service",\n "price_id": "7e24ff5d-d580-4136-a32f-19191eed039a",\n "product_id": "6241487f-b7fd-428b-ab92-24ee0b37fd84",\n "taxes": [],\n "unit_amount": 10000,\n "unit_amount_net": 10000,\n "pricing_model": "per_unit",\n "_price": {},\n "_product": {}\n }\n ],\n "amount_subtotal": 0,\n "amount_total": 0,\n "unit_amount_gross": 0,\n "unit_amount_net": 0,\n "amount_tax": 0,\n "total_details": {\n "amount_shipping": 0,\n "amount_tax": 0,\n "breakdown": {\n "taxes": [],\n "recurrences": [],\n "cashbacks": [],\n "recurrencesByTax": []\n }\n },\n "currency": "EUR",\n "redeemed_promos": [\n {\n "code": "string",\n "coupons": []\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `createOrder`\n\nCreate an order\n\n`POST /v1/order`\n\n```ts\nconst { data } = await client.createOrder(\n null,\n {\n status: \'draft\',\n line_items: [\n {\n external_fees_mappings: [ /* ... */ ],\n external_fees_metadata: { /* ... */ },\n external_location_metadata: { /* ... */ },\n external_price_metadata: { /* ... */ },\n _immutable_pricing_details: { /* ... */ },\n coupon_ids: [\'string\'],\n taxes: [ /* ... */ ],\n recurrences: [ /* ... */ ],\n _coupons: [ /* ... */ ],\n metadata: [ /* ... */ ],\n quantity: 0,\n product_id: \'string\',\n price_id: \'string\',\n description: \'string\',\n product_description: \'string\',\n product_name: \'string\',\n price_mappings: [ /* ... */ ],\n is_tax_inclusive: true,\n _product: { /* ... */ },\n type: \'one_time\',\n billing_period: \'weekly\',\n unit_amount: 0,\n unit_amount_gross: 0,\n unit_amount_currency: \'EUR\',\n unit_amount_decimal: \'string\',\n is_composite_price: false,\n pricing_model: \'per_unit\',\n _price: { /* ... */ }\n },\n {\n external_fees_mappings: [ /* ... */ ],\n external_fees_metadata: { /* ... */ },\n external_location_metadata: { /* ... */ },\n external_price_metadata: { /* ... */ },\n _immutable_pricing_details: { /* ... */ },\n coupon_ids: [\'string\'],\n taxes: [ /* ... */ ],\n recurrences: [ /* ... */ ],\n _coupons: [ /* ... */ ],\n metadata: [ /* ... */ ],\n quantity: 0,\n product_id: \'string\',\n price_id: \'string\',\n description: \'string\',\n product_description: \'string\',\n product_name: \'string\',\n price_mappings: [ /* ... */ ],\n is_tax_inclusive: true,\n _product: { /* ... */ },\n is_composite_price: true,\n item_components: [ /* ... */ ],\n selected_price_component_ids: [\'string\'],\n price_component_coupon_ids: {},\n _price: { /* ... */ }\n }\n ],\n source_type: \'journey\',\n currency: \'EUR\',\n contact: \'string\',\n billing_first_name: \'string\',\n billing_last_name: \'string\',\n billing_company_name: \'string\',\n billing_vat: \'string\',\n billing_email: \'string\',\n billing_phone: \'string\',\n billing_address: [\n {\n _tags: [\'billing\'],\n street: \'string\',\n street_number: \'string\',\n postal_code: \'string\',\n city: \'string\',\n country: \'string\',\n additional_info: \'string\',\n company_name: \'string\',\n first_name: \'string\',\n last_name: \'string\',\n salutation: \'string\',\n title: \'string\'\n }\n ],\n delivery_address: [\n {\n _tags: [\'billing\'],\n street: \'string\',\n street_number: \'string\',\n postal_code: \'string\',\n city: \'string\',\n country: \'string\',\n additional_info: \'string\',\n company_name: \'string\',\n first_name: \'string\',\n last_name: \'string\',\n salutation: \'string\',\n title: \'string\'\n }\n ],\n payment_method: [\n {\n type: \'string\',\n details: {}\n }\n ],\n redeemed_promos: [\n {\n code: \'string\',\n coupons: [ /* ... */ ]\n }\n ],\n _tags: [\'string\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "order_number": "OR 2022/742701",\n "status": "quote",\n "source": {\n "title": "manual",\n "href": null\n },\n "source_type": "manual",\n "_schema": "order",\n "_title": "OR 2022/742701",\n "expires_at": "2022-06-30T16:17:00.000Z",\n "line_items": [\n {\n "price_id": "9c36c23b-1574-4193-beff-b1b5e1124bc7",\n "product_id": "a7f4771a-6368-4d77-bb01-71f1e4902de5",\n "pricing_model": "per_unit",\n "is_composite_price": false,\n "taxes": [],\n "_price": {},\n "_product": {},\n "quantity": 16,\n "currency": "EUR",\n "description": "Solar Panel Module",\n "unit_amount": 100000,\n "unit_amount_net": 84034,\n "amount_subtotal": 1344538,\n "amount_total": 1600000\n },\n {\n "price_id": "146aa2cc-f267-4d5e-bda4-cbe2669b7741",\n "product_id": "a7f4771a-6368-4d77-bb01-71f1e4902de5",\n "pricing_model": "per_unit",\n "is_composite_price": false,\n "taxes": [],\n "_price": {},\n "_product": {},\n "quantity": 4,\n "currency": "EUR",\n "description": "Battery Module 500amps",\n "unit_amount": 50000,\n "unit_amount_net": 42017,\n "amount_subtotal": 168067,\n "amount_total": 200000\n }\n ],\n "amount_subtotal": 1532191,\n "amount_total": 1821955,\n "total_details": {\n "amount_tax": 289764,\n "breakdown": {\n "taxes": [],\n "recurrences": []\n }\n },\n "currency": "EUR",\n "payment_method": [\n {\n "type": "IBAN",\n "details": {}\n }\n ],\n "billing_contact": {\n "$relation": [\n {}\n ]\n },\n "billing_first_name": "Joao",\n "billing_last_name": "Pinho",\n "billing_email": "j.pinho@epilot.cloud",\n "billing_company_name": "epilot cloud",\n "billing_address": [\n {\n "_tags": [],\n "street": "Im Media Park",\n "street_number": "8a",\n "postal_code": "52000",\n "city": "Cologne",\n "country": "DE",\n "additional_info": ""\n }\n ],\n "delivery_address": [],\n "dates": [\n {\n "_tags": ["Instalation Date"],\n "dates": "",\n "value": "2022-06-30T16:29:00.000Z"\n }\n ],\n "_id": "4c7c9562-f8f0-4af0-a3a6-6aebc5571a6e",\n "_org": "728",\n "_created_at": "2022-06-03T16:29:46.303Z",\n "_updated_at": "2022-06-03T16:29:46.303Z"\n}\n```\n\n</details>\n\n---\n\n### `putOrder`\n\nUpdate an existing Order\n\n`PUT /v1/order/{id}`\n\n```ts\nconst { data } = await client.putOrder(\n {\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n },\n {\n status: \'draft\',\n line_items: [\n {\n external_fees_mappings: [ /* ... */ ],\n external_fees_metadata: { /* ... */ },\n external_location_metadata: { /* ... */ },\n external_price_metadata: { /* ... */ },\n _immutable_pricing_details: { /* ... */ },\n coupon_ids: [\'string\'],\n taxes: [ /* ... */ ],\n recurrences: [ /* ... */ ],\n _coupons: [ /* ... */ ],\n metadata: [ /* ... */ ],\n quantity: 0,\n product_id: \'string\',\n price_id: \'string\',\n description: \'string\',\n product_description: \'string\',\n product_name: \'string\',\n price_mappings: [ /* ... */ ],\n is_tax_inclusive: true,\n _product: { /* ... */ },\n type: \'one_time\',\n billing_period: \'weekly\',\n unit_amount: 0,\n unit_amount_gross: 0,\n unit_amount_currency: \'EUR\',\n unit_amount_decimal: \'string\',\n is_composite_price: false,\n pricing_model: \'per_unit\',\n _price: { /* ... */ }\n },\n {\n external_fees_mappings: [ /* ... */ ],\n external_fees_metadata: { /* ... */ },\n external_location_metadata: { /* ... */ },\n external_price_metadata: { /* ... */ },\n _immutable_pricing_details: { /* ... */ },\n coupon_ids: [\'string\'],\n taxes: [ /* ... */ ],\n recurrences: [ /* ... */ ],\n _coupons: [ /* ... */ ],\n metadata: [ /* ... */ ],\n quantity: 0,\n product_id: \'string\',\n price_id: \'string\',\n description: \'string\',\n product_description: \'string\',\n product_name: \'string\',\n price_mappings: [ /* ... */ ],\n is_tax_inclusive: true,\n _product: { /* ... */ },\n is_composite_price: true,\n item_components: [ /* ... */ ],\n selected_price_component_ids: [\'string\'],\n price_component_coupon_ids: {},\n _price: { /* ... */ }\n }\n ],\n source_type: \'journey\',\n currency: \'EUR\',\n contact: \'string\',\n billing_first_name: \'string\',\n billing_last_name: \'string\',\n billing_company_name: \'string\',\n billing_vat: \'string\',\n billing_email: \'string\',\n billing_phone: \'string\',\n billing_address: [\n {\n _tags: [\'billing\'],\n street: \'string\',\n street_number: \'string\',\n postal_code: \'string\',\n city: \'string\',\n country: \'string\',\n additional_info: \'string\',\n company_name: \'string\',\n first_name: \'string\',\n last_name: \'string\',\n salutation: \'string\',\n title: \'string\'\n }\n ],\n delivery_address: [\n {\n _tags: [\'billing\'],\n street: \'string\',\n street_number: \'string\',\n postal_code: \'string\',\n city: \'string\',\n country: \'string\',\n additional_info: \'string\',\n company_name: \'string\',\n first_name: \'string\',\n last_name: \'string\',\n salutation: \'string\',\n title: \'string\'\n }\n ],\n payment_method: [\n {\n type: \'string\',\n details: {}\n }\n ],\n redeemed_promos: [\n {\n code: \'string\',\n coupons: [ /* ... */ ]\n }\n ],\n _tags: [\'string\']\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "order_number": "OR 2022/742701",\n "status": "quote",\n "source": {\n "title": "manual",\n "href": null\n },\n "source_type": "manual",\n "_schema": "order",\n "_title": "OR 2022/742701",\n "expires_at": "2022-06-30T16:17:00.000Z",\n "line_items": [\n {\n "price_id": "9c36c23b-1574-4193-beff-b1b5e1124bc7",\n "product_id": "a7f4771a-6368-4d77-bb01-71f1e4902de5",\n "pricing_model": "per_unit",\n "is_composite_price": false,\n "taxes": [],\n "_price": {},\n "_product": {},\n "quantity": 16,\n "currency": "EUR",\n "description": "Solar Panel Module",\n "unit_amount": 100000,\n "unit_amount_net": 84034,\n "amount_subtotal": 1344538,\n "amount_total": 1600000\n },\n {\n "price_id": "146aa2cc-f267-4d5e-bda4-cbe2669b7741",\n "product_id": "a7f4771a-6368-4d77-bb01-71f1e4902de5",\n "pricing_model": "per_unit",\n "is_composite_price": false,\n "taxes": [],\n "_price": {},\n "_product": {},\n "quantity": 4,\n "currency": "EUR",\n "description": "Battery Module 500amps",\n "unit_amount": 50000,\n "unit_amount_net": 42017,\n "amount_subtotal": 168067,\n "amount_total": 200000\n }\n ],\n "amount_subtotal": 1532191,\n "amount_total": 1821955,\n "total_details": {\n "amount_tax": 289764,\n "breakdown": {\n "taxes": [],\n "recurrences": []\n }\n },\n "currency": "EUR",\n "payment_method": [\n {\n "type": "IBAN",\n "details": {}\n }\n ],\n "billing_contact": {\n "$relation": [\n {}\n ]\n },\n "billing_first_name": "Joao",\n "billing_last_name": "Pinho",\n "billing_email": "j.pinho@epilot.cloud",\n "billing_company_name": "epilot cloud",\n "billing_address": [\n {\n "_tags": [],\n "street": "Im Media Park",\n "street_number": "8a",\n "postal_code": "52000",\n "city": "Cologne",\n "country": "DE",\n "additional_info": ""\n }\n ],\n "delivery_address": [],\n "dates": [\n {\n "_tags": ["Instalation Date"],\n "dates": "",\n "value": "2022-06-30T16:29:00.000Z"\n }\n ],\n "_id": "4c7c9562-f8f0-4af0-a3a6-6aebc5571a6e",\n "_org": "728",\n "_created_at": "2022-06-03T16:29:46.303Z",\n "_updated_at": "2022-06-03T16:29:46.303Z"\n}\n```\n\n</details>\n\n---\n\n### `$checkoutCart`\n\ncheckoutCart\n\n`POST /v1/public/cart:checkout`\n\n```ts\nconst { data } = await client.$checkoutCart(\n {\n X-Ivy-Org-ID: \'example\',\n },\n {\n cart: \'string\',\n redeemed_promos: [\n {\n code: \'string\',\n coupons: [\n {\n _id: \'123e4567-e89b-12d3-a456-426614174000\',\n _schema: \'coupon\',\n _org: \'org_12345\',\n _created_at: \'2024-01-15T10:00:00.000Z\',\n _updated_at: \'2024-01-20T12:00:00.000Z\',\n _title: \'Sample Coupon\',\n name: \'Sample Coupon\',\n type: \'fixed\',\n fixed_value: 555,\n fixed_value_currency: \'USD\',\n fixed_value_decimal: \'5.55\',\n active: true,\n category: \'cashback\',\n prices: {\n $relation: [\n {\n entity_id: \'abc12345-def6-7890-gh12-ijklmnopqrst\',\n _tags: [\'discount\', \'special\'],\n _schema: \'price\'\n }\n ]\n }\n }\n ]\n }\n ],\n mode: \'create_order\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "order": {\n "order_number": "OR 2022/742701",\n "status": "quote",\n "source": {\n "title": "manual",\n "href": null\n },\n "source_type": "manual",\n "_schema": "order",\n "_title": "OR 2022/742701",\n "expires_at": "2022-06-30T16:17:00.000Z",\n "line_items": [\n {},\n {}\n ],\n "amount_subtotal": 1532191,\n "amount_total": 1821955,\n "total_details": {\n "amount_tax": 289764,\n "breakdown": {}\n },\n "currency": "EUR",\n "payment_method": [\n {}\n ],\n "billing_contact": {\n "$relation": []\n },\n "billing_first_name": "Joao",\n "billing_last_name": "Pinho",\n "billing_email": "j.pinho@epilot.cloud",\n "billing_company_name": "epilot cloud",\n "billing_address": [\n {}\n ],\n "delivery_address": [],\n "dates": [\n {}\n ],\n "_id": "4c7c9562-f8f0-4af0-a3a6-6aebc5571a6e",\n "_org": "728",\n "_created_at": "2022-06-03T16:29:46.303Z",\n "_updated_at": "2022-06-03T16:29:46.303Z"\n }\n}\n```\n\n</details>\n\n---\n\n### `$searchCatalog`\n\nsearchCatalog\n\n`POST /v1/public/catalog`\n\n```ts\nconst { data } = await client.$searchCatalog(\n {\n X-Ivy-Org-ID: \'example\',\n Authorization: \'example\',\n },\n {\n q: \'_id:1233432 OR _id:123432454 OR _id:23445433\',\n sort: \'description ASC\',\n from: 0,\n size: 200\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 2,\n "results": [\n {\n "schema": "product",\n "description": "product a"\n },\n {\n "schema": "price",\n "unit_amount_decimal": "124.342343434"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$privateSearchCatalog`\n\nprivateSearchCatalog\n\n`POST /v1/catalog`\n\n```ts\nconst { data } = await client.$privateSearchCatalog(\n null,\n {\n q: \'_id:1233432 OR _id:123432454 OR _id:23445433\',\n sort: \'description ASC\',\n from: 0,\n size: 200\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 2,\n "results": [\n {\n "schema": "product",\n "description": "product a"\n },\n {\n "schema": "price",\n "unit_amount_decimal": "124.342343434"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$validatePromoCodes`\n\nvalidatePromoCodes\n\n`POST /v1/public/validate-promo-codes`\n\n```ts\nconst { data } = await client.$validatePromoCodes(\n {\n X-Ivy-Org-ID: \'example\',\n },\n {},\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "matched_coupons": [\n {\n "_id": "123e4567-e89b-12d3-a456-426614174000",\n "_schema": "coupon",\n "_org": "org_12345",\n "_created_at": "2024-01-15T10:00:00.000Z",\n "_updated_at": "2024-01-20T12:00:00.000Z",\n "_title": "Sample Coupon",\n "name": "Sample Coupon",\n "type": "fixed",\n "fixed_value": 555,\n "fixed_value_currency": "USD",\n "fixed_value_decimal": "5.55",\n "active": true,\n "category": "cashback",\n "prices": {\n "$relation": [\n {\n "entity_id": "abc12345-def6-7890-gh12-ijklmnopqrst",\n "_tags": ["discount", "special"],\n "_schema": "price"\n }\n ]\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$availabilityCheck`\n\navailabilityCheck\n\n`POST /v1/public/availability:check`\n\n```ts\nconst { data } = await client.$availabilityCheck(\n {\n X-Ivy-Org-ID: \'example\',\n },\n {\n products: [\'string\'],\n filters: {\n location: {\n street: \'string\',\n street_number: \'string\',\n postal_code: \'string\',\n city: \'string\',\n country: \'string\'\n },\n available_date: \'2017-07-21\'\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "available_products": [],\n "check_results": [\n {\n "product_id": "my-product-id-123-1",\n "matching_hits": 0\n },\n {\n "product_id": "my-product-id-123-2",\n "matching_hits": 0\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$validateAvailabilityFile`\n\nvalidateAvailabilityFile\n\n`GET /v1/validate-availability/{id}`\n\n```ts\nconst { data } = await client.$validateAvailabilityFile({\n id: \'123e4567-e89b-12d3-a456-426614174000\',\n X-Epilot-Org-ID: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "status": "success",\n "rules_parsed_count": 10,\n "errors": []\n}\n```\n\n</details>\n\n---\n\n### `$historicMarketPrices`\n\nhistoricMarketPrices\n\n`GET /v1/public/historicMarketPrices`\n\n```ts\nconst { data } = await client.$historicMarketPrices({\n market: \'example\',\n bidding_zone: \'example\',\n frequency: \'example\',\n from: \'example\',\n to: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "market": "day_ahead",\n "bidding_zone": "AT",\n "prices": [\n {\n "unit_amount": 12.3,\n "unit_amount_decimal": "0.123",\n "unit_amount_currency": "EUR",\n "timestamp": "1970-01-01T00:00:00.000Z"\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$averageMarketPrice`\n\naverageMarketPrice\n\n`GET /v1/public/averageMarketPrice`\n\n```ts\nconst { data } = await client.$averageMarketPrice({\n market: \'example\',\n bidding_zone: \'example\',\n from: \'example\',\n to: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "market": "day_ahead",\n "bidding_zone": "AT",\n "price": {\n "unit_amount": 12.3,\n "unit_amount_decimal": "0.123",\n "unit_amount_currency": "EUR",\n "timestamp": "2025-01-01T00:00:00Z/2025-01-31T23:59:59Z"\n },\n "_meta": {\n "signature": "string",\n "timestamp": 0\n }\n}\n```\n\n</details>\n\n---\n\n### `$searchExternalProducts`\n\nsearchExternalProducts\n\n`POST /v1/public/integration/{integrationId}/products`\n\n```ts\nconst { data } = await client.$searchExternalProducts(\n {\n integrationId: \'example\',\n },\n {\n context: {\n journey_id: \'8d0a2235-97ce-42d0-88a3-e374634ca44e\',\n entity_id: \'8d0a2235-97ce-42d0-88a3-e374634ca44e\',\n journey_name: \'journey name\',\n journey_tags: [\'string\'],\n journey_url_params: {},\n current_step_name: \'step name\',\n current_block_name: \'block name\',\n steps_data: [\n {\n step_name: \'string\',\n step_index: 0,\n blocks: {\n Adresse: {\n countryCode: \'DE\',\n city: \'Koblenz\',\n zipCode: \'56068\',\n streetName: \'Am Alten Hospital\',\n houseNumber: \'123\'\n }\n }\n }\n ]\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 0,\n "results": [\n {\n "pricing_details": {},\n "_meta": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$searchExternalProductRecommendations`\n\nsearchExternalProductRecommendations\n\n`POST /v1/public/integration/{integrationId}/product-recommendations`\n\n```ts\nconst { data } = await client.$searchExternalProductRecommendations(\n {\n integrationId: \'example\',\n },\n {\n context: {\n journey_id: \'8d0a2235-97ce-42d0-88a3-e374634ca44e\',\n entity_id: \'8d0a2235-97ce-42d0-88a3-e374634ca44e\',\n journey_name: \'journey name\',\n journey_tags: [\'string\'],\n journey_url_params: {},\n current_step_name: \'step name\',\n current_block_name: \'block name\',\n steps_data: [\n {\n step_name: \'string\',\n step_index: 0,\n blocks: {\n Adresse: {\n countryCode: \'DE\',\n city: \'Koblenz\',\n zipCode: \'56068\',\n streetName: \'Am Alten Hospital\',\n houseNumber: \'123\'\n }\n }\n }\n ]\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "source": {\n "pricing_details": {\n "items": [],\n "amount_subtotal": 0,\n "amount_total": 0,\n "unit_amount_gross": 0,\n "unit_amount_net": 0,\n "amount_tax": 0,\n "total_details": {},\n "currency": "EUR",\n "redeemed_promos": []\n },\n "_meta": {\n "signature": "string",\n "timestamp": 0\n }\n },\n "offers": [\n {\n "pricing_details": {},\n "_meta": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$searchProviders`\n\nsearchProviders\n\n`POST /v1/public/integration/{integrationId}/providers:search`\n\n```ts\nconst { data } = await client.$searchProviders(\n {\n X-Epilot-Org-ID: \'example\',\n integrationId: \'example\',\n },\n {\n type: \'power\',\n postal_code: \'string\',\n city: \'string\',\n street: \'string\',\n street_number: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "name": "string",\n "code": "string",\n "type": "gas",\n "additionalData": {\n "gridOperators": [\n {\n "name": "string",\n "codeNumber": "string",\n "validFrom": "1970-01-01",\n "validUntil": "1970-01-01"\n }\n ],\n "defaultSuppliers": [\n {\n "name": "string",\n "codeNumber": "string",\n "validFrom": "1970-01-01",\n "validUntil": "1970-01-01"\n }\n ],\n "marketAreaDetails": {\n "gasType": "L-Gas",\n "marketArea": "string",\n "virtualTradingPoint": "string"\n }\n },\n "_meta": {\n "signature": "string",\n "timestamp": 0\n }\n }\n]\n```\n\n</details>\n\n---\n\n### `$searchStreets`\n\nsearchStreets\n\n`POST /v1/public/integration/{integrationId}/streets:search`\n\n```ts\nconst { data } = await client.$searchStreets(\n {\n X-Epilot-Org-ID: \'example\',\n integrationId: \'example\',\n },\n {\n postal_code: \'string\',\n city: \'string\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n[\n {\n "street": "string"\n }\n]\n```\n\n</details>\n\n---\n\n### `$computePrice`\n\ncalculatePricingDetails\n\n`POST /v1/public/integration/{integrationId}/compute-price`\n\n```ts\nconst { data } = await client.$computePrice(\n {\n X-Epilot-Org-ID: \'example\',\n integrationId: \'example\',\n },\n {\n postal_code: \'string\',\n consumption_type: \'household\',\n consumption: 0,\n consumption_HT: 0,\n consumption_NT: 0,\n association_id: \'string\',\n billing_period: \'monthly\',\n reference_date: \'1970-01-01\',\n type: \'power\',\n meter_type: \'classic\'\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "amount_total": 0,\n "amount_total_decimal": "string",\n "amount_static": 0,\n "amount_static_decimal": {},\n "amount_variable_ht": 0,\n "amount_variable_decimal_ht": "string",\n "unit_amount_variable_ht": 0,\n "unit_amount_variable_decimal_ht": "string",\n "amount_variable_nt": 0,\n "amount_variable_decimal_nt": "string",\n "unit_amount_variable_nt": 0,\n "unit_amount_variable_decimal_nt": "string",\n "currency": "EUR",\n "billing_period": "weekly",\n "breakdown": {\n "static": {},\n "variable": {},\n "variable_ht": {},\n "variable_nt": {}\n },\n "_meta": {\n "signature": "string",\n "timestamp": 0\n }\n}\n```\n\n</details>\n\n---\n\n### `$getCredentials`\n\ngetCredentials\n\n`GET /v1/integration/{integrationId}/credentials`\n\n```ts\nconst { data } = await client.$getCredentials({\n integrationId: \'example\',\n})\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{}\n```\n\n</details>\n\n---\n\n### `$saveCredentials`\n\nsaveCredentials\n\n`PUT /v1/integration/{integrationId}/credentials:save`\n\n```ts\nconst { data } = await client.$saveCredentials(\n {\n integrationId: \'example\',\n },\n {},\n)\n```\n\n---\n\n### `$deleteCredentials`\n\ndeleteCredentials\n\n`DELETE /v1/integration/{integrationId}/credentials:delete`\n\n```ts\nconst { data } = await client.$deleteCredentials({\n integrationId: \'example\',\n})\n```\n\n---\n\n### `$getExternalCatalogProducts`\n\ngetExternalCatalogProducts\n\n`POST /v1/public/external-catalog/products`\n\n```ts\nconst { data } = await client.$getExternalCatalogProducts(\n {\n x-epilot-org-id: \'example\',\n },\n {\n config: {\n appId: \'1234567890\',\n componentId: \'1234567890\',\n hookId: \'1234567890\'\n },\n origin: \'journey\',\n context: {\n journey_id: \'8d0a2235-97ce-42d0-88a3-e374634ca44e\',\n entity_id: \'9e1b3346-a8df-53e1-99b4-f485745db55f\',\n journey_name: \'Product Selection Journey\',\n journey_tags: [\'electricity\', \'residential\'],\n journey_url_params: {\n utm_source: \'google\',\n utm_campaign: \'spring2024\'\n },\n current_step_name: \'Product Selection\',\n current_block_name: \'Energy Products\',\n steps_data: [\n {\n step_name: \'Address Information\',\n step_index: 0,\n blocks: {\n Adresse: {\n countryCode: \'DE\',\n city: \'Koblenz\',\n zipCode: \'56068\',\n streetName: \'Am Alten Hospital\',\n houseNumber: \'123\'\n }\n }\n }\n ]\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 0,\n "results": [\n {\n "pricing_details": {},\n "_meta": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$getExternalCatalogProductRecommendations`\n\ngetExternalCatalogProductRecommendations\n\n`POST /v1/public/external-catalog/product-recommendations`\n\n```ts\nconst { data } = await client.$getExternalCatalogProductRecommendations(\n {\n x-epilot-org-id: \'example\',\n },\n {\n config: {\n appId: \'1234567890\',\n componentId: \'1234567890\',\n hookId: \'1234567890\'\n },\n origin: \'journey\',\n context: {\n journey_id: \'8d0a2235-97ce-42d0-88a3-e374634ca44e\',\n entity_id: \'9e1b3346-a8df-53e1-99b4-f485745db55f\',\n journey_name: \'Product Selection Journey\',\n journey_tags: [\'electricity\', \'residential\'],\n journey_url_params: {\n utm_source: \'google\',\n utm_campaign: \'spring2024\'\n },\n current_step_name: \'Product Selection\',\n current_block_name: \'Energy Products\',\n steps_data: [\n {\n step_name: \'Address Information\',\n step_index: 0,\n blocks: {\n Adresse: {\n countryCode: \'DE\',\n city: \'Koblenz\',\n zipCode: \'56068\',\n streetName: \'Am Alten Hospital\',\n houseNumber: \'123\'\n }\n }\n }\n ]\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "source": {\n "pricing_details": {\n "items": [],\n "amount_subtotal": 0,\n "amount_total": 0,\n "unit_amount_gross": 0,\n "unit_amount_net": 0,\n "amount_tax": 0,\n "total_details": {},\n "currency": "EUR",\n "redeemed_promos": []\n },\n "_meta": {\n "signature": "string",\n "timestamp": 0\n }\n },\n "offers": [\n {\n "pricing_details": {},\n "_meta": {}\n }\n ]\n}\n```\n\n</details>\n\n---\n\n### `$productRecommendations`\n\nproductRecommendations\n\n`POST /v1/public/product-recommendations`\n\n```ts\nconst { data } = await client.$productRecommendations(\n {\n X-Ivy-Org-ID: \'example\',\n },\n {\n product_recommendation_ids: [\'string\'],\n catalog_item: {\n product_id: \'string\',\n price_id: \'string\'\n },\n contract_id: \'string\',\n filters: {\n location: {\n street: \'string\',\n street_number: \'string\',\n postal_code: \'string\',\n city: \'string\',\n country: \'string\'\n },\n available_date: \'2017-07-21\'\n }\n },\n)\n```\n\n<details>\n<summary>Response</summary>\n\n```json\n{\n "hits": 0,\n "results": [\n {\n "_id": "73f857a4-0fbc-4aa6-983f-87c0d6d410a6",\n "_title": "Cool box",\n "_org": "728",\n "_schema": "order",\n "_created_at": "2022-06-03T16:04:10.000Z",\n "_updated_at": "2022-06-03T16:04:10.000Z",\n "amount_subtotal": 10000,\n "amount_total": 10600,\n "currency": "EUR",\n "description": "Annual internet service",\n "price_id": "7e24ff5d-d580-4136-a32f-19191eed039a",\n "product_id": "6241487f-b7fd-428b-ab92-24ee0b37fd84",\n "taxes": [\n {\n "amount": 600,\n "tax": {\n "active": true,\n "description": "Without Behaviour",\n "rate": 6,\n "region": "DE",\n "type": "VAT",\n "_created_at": "2022-02-07T14:49:08.831Z",\n "_id": "18bbbc2e-2c37-4f91-924a-07ae60d830e4",\n "_org": "739224",\n "_schema": "tax",\n "_title": "Tax Without Behaviour",\n "_updated_at": "2022-02-07T14:49:08.831Z"\n }\n }\n ],\n "unit_amount": 10000,\n "unit_amount_net": 10000,\n "pricing_model": "per_unit",\n "_price": {\n "_id": "7e24ff5d-d580-4136-a32f-19191eed039a",\n "unit_amount": 10000,\n "unit_amount_currency": "EUR",\n "unit_amount_decimal": "100.00",\n "sales_tax": "standard",\n "is_tax_inclusive": false,\n "price_display_in_journeys": "show_price",\n "type": "one_time",\n "billing_period": "weekly",\n "billing_duration_unit": "months",\n "notice_time_unit": "months",\n "termination_time_unit": "months",\n "renewal_duration_unit": "months",\n "_schema": "price",\n "_title": "Solar Panel Module",\n "description": "Solar Panel Module",\n "active": true,\n "tax": {\n "$relation": [\n {\n "entity_id": "24641e82-0690-4135-8b43-ef12a9b1c5dc"\n }\n ]\n },\n "_org": "728",\n "_created_at": "2022-06-03T16:04:10.369Z",\n "_updated_at": "2022-06-03T16:04:10.369Z",\n "pricing_model": "per_unit"\n },\n "_product": {\n "name": "Cool box",\n "type": "product",\n "_id": "73f857a4-0fbc-4aa6-983f-87c0d6d410a6",\n "_title": "Cool box"\n }\n }\n ]\n}\n```\n\n</details>\n\n---\n\n## Schemas\n\n### `IntegrationId`\n\n```ts\ntype IntegrationId = "getag" | "external-catalog"\n```\n\n### `Error`\n\n```ts\ntype Error = {\n message: string\n status?: number\n cause?: string\n}\n```\n\n### `Product`\n\nThe product entity\n\n```ts\ntype Product = {\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: string[]\n feature?: string\n }>\n cross_sellable_products?: {\n $relation?: Array<{\n entity_id?: { ... }\n _tags?: { ... }\n }>\n }\n product_images?: {\n $relation?: Array<{\n entity_id?: { ... }\n _tags?: { ... }\n }>\n } | Array<{\n _id: string\n filename: string\n mime_type: string\n versions: Array<{\n s3ref: { ... }\n }>\n _schema: string\n _org: string\n _created_at: string // date-time\n _updated_at: string // date-time\n _title?: string\n $relation?: {\n entity_id?: { ... }\n _tags?: { ... }\n }\n }>\n product_downloads?: {\n $relation?: Array<{\n entity_id?: { ... }\n _tags?: { ... }\n }>\n } | Array<{\n _id: string\n filename: string\n mime_type: string\n versions: Array<{\n s3ref: { ... }\n }>\n _schema: string\n _org: string\n _created_at: string // date-time\n _updated_at: string // date-time\n _title?: string\n $relation?: {\n entity_id?: { ... }\n _tags?: { ... }\n }\n }>\n price_options?: {\n $relation?: Array<{\n entity_id?: { ... }\n _tags?: { ... }\n }>\n }\n _availability_files?: Array<{\n _id: string\n filename: string\n mime_type: string\n versions: Array<{\n s3ref: { ... }\n }>\n _schema: string\n _org: string\n _created_at: string // date-time\n _updated_at: string // date-time\n _title?: string\n $relation?: {\n entity_id?: { ... }\n _tags?: { ... }\n }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n}\n```\n\n### `Opportunity`\n\nThe opportunity entity\n\n```ts\ntype Opportunity = {\n opportunity_number?: string\n opportunity_title?: string\n description?: string\n status?: string\n due_date?: string\n assignee?: Array<{\n id?: string\n email?: string\n display_name?: string\n token?: string\n image_uri?: string\n organization_id?: string\n department?: string\n preferred_language?: string\n status?: string\n phone?: string\n email_notification_settings?: object\n is_signature_enabled?: boolean\n created_at?: string\n }>\n customer?: {\n $relation?: Array<{\n entity_id?: { ... }\n _tags?: { ... }\n }>\n }\n dates?: Array<{\n _tags?: string[]\n value?: string\n }>\n billing_address?: {\n $relation_ref?: Array<{\n entity_id?: { ... }\n path?: { ... }\n }>\n }\n delivery_address?: {\n $relation_ref?: Array<{\n entity_id?: { ... }\n path?: { ... }\n }>\n }\n address?: {\n $relation_ref?: Array<{\n entity_id?: { ... }\n path?: { ... }\n }>\n }\n items?: {\n $relation?: Array<{\n entity_id?: { ... }\n _tags?: { ... }\n }>\n }\n _org_id?: string\n _id?: string\n _created_at?: string\n _updated_at?: string\n source_type?: string\n source_id?: string\n source?: {\n http?: string\n title?: string\n }\n _tags?: string[]\n}\n```\n\n### `Order`\n\nThe order entity\n\n```ts\ntype Order = {\n order_number?: string\n cart_id?: string\n status?: "draft" | "quote" | "placed" | "cancelled" | "completed"\n source_type?: string\n source_id?: string\n source?: {\n http?: string\n title?: string\n }\n metadata?: Array<{\n key?: string\n value?: string\n }>\n customer?: {\n $relation?: Array<{\n entity_id?: { ... }\n _tags?: { ... }\n }>\n }\n billing_first_name?: string\n billing_last_name?: string\n billing_company_name?: string\n billing_vat?: string\n billing_email?: string\n billing_phone?: string\n billing_address?: Array<{\n _tags?: string[]\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n additional_info?: string\n company_name?: string\n first_name?: string\n last_name?: string\n salutation?: string\n title?: string\n }>\n currency?: string\n delivery_address?: Array<{\n _tags?: string[]\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n additional_info?: string\n company_name?: string\n first_name?: string\n last_name?: string\n salutation?: string\n title?: string\n }>\n payment_method?: Array<{\n type?: string\n details?: Record<string, unknown>\n }>\n line_items?: Array<{\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: { ... }\n frequency_unit?: { ... }\n name?: { ... }\n value?: { ... }\n metadata?: { ... }\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: { ... }\n code?: { ... }\n type?: { ... }\n name?: { ... }\n categories?: { ... }\n feature?: { ... }\n cross_sellable_products?: { ... }\n product_images?: { ... }\n product_downloads?: { ... }\n price_options?: { ... }\n _availability_files?: { ... }\n _id?: { ... }\n _title?: { ... }\n _org_id?: { ... }\n _created_at?: { ... }\n _updated_at?: { ... }\n }\n } | {\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n // ...\n}\n```\n\n### `Price`\n\nThe price entity schema for simple pricing\n\n```ts\ntype Price = {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n}\n```\n\n### `BaseCompositePrice`\n\nThe common properties for a composite price entity, without the price components\n\n```ts\ntype BaseCompositePrice = {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n}\n```\n\n### `NonHydratedCompositePrice`\n\nThe composite price entity\n\n```ts\ntype NonHydratedCompositePrice = {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n}\n```\n\n### `HydratedCompositePrice`\n\nThe composite price entity\n\n```ts\ntype HydratedCompositePrice = {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n}\n```\n\n### `CompositePrice`\n\nThe composite price entity\n\n```ts\ntype CompositePrice = {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n} | {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n}\n```\n\n### `PriceComponentRelation`\n\n```ts\ntype PriceComponentRelation = {\n entity_id?: string\n quantity?: number\n _tags?: string[]\n}\n```\n\n### `MetaData`\n\nA set of key-value pairs used to store meta data information about an entity.\n\n```ts\ntype MetaData = Array<{\n key?: string\n value?: string\n}>\n```\n\n### `PriceInputMappings`\n\n```ts\ntype PriceInputMappings = Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n}>\n```\n\n### `PriceInputMapping`\n\n```ts\ntype PriceInputMapping = {\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n}\n```\n\n### `PriceConditions`\n\n```ts\ntype PriceConditions = {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n}\n```\n\n### `ExternalFeeMetadata`\n\n```ts\ntype ExternalFeeMetadata = {\n amount_total: number\n amount_total_decimal: string\n amount_static?: number\n amount_static_decimal?: unknown\n amount_variable_ht?: number\n amount_variable_decimal_ht?: string\n unit_amount_variable_ht?: number\n unit_amount_variable_decimal_ht?: string\n amount_variable_nt?: number\n amount_variable_decimal_nt?: string\n unit_amount_variable_nt?: number\n unit_amount_variable_decimal_nt?: string\n currency: string\n billing_period: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n breakdown: {\n static?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n variable?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n variable_ht?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n variable_nt?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n }\n _meta?: {\n signature: string\n timestamp: number\n }\n}\n```\n\n### `ExternalLocationMetadata`\n\n```ts\ntype ExternalLocationMetadata = {\n name: string\n code: string\n type: "gas" | "power"\n additionalData: {\n gridOperators: Array<{\n name: { ... }\n codeNumber: { ... }\n validFrom?: { ... }\n validUntil?: { ... }\n }>\n defaultSuppliers: Array<{\n name: { ... }\n codeNumber: { ... }\n validFrom?: { ... }\n validUntil?: { ... }\n }>\n marketAreaDetails: {\n gasType?: { ... }\n marketArea?: { ... }\n virtualTradingPoint?: { ... }\n } | {\n controlZone?: { ... }\n balancingZone?: { ... }\n }\n }\n _meta?: {\n signature: string\n timestamp: number\n }\n}\n```\n\n### `ExternalPriceMetadata`\n\n```ts\ntype ExternalPriceMetadata = {\n market: "day_ahead"\n bidding_zone: "AT" | "DE-LU"\n price: {\n unit_amount: number\n unit_amount_decimal: string\n unit_amount_currency: string\n timestamp: string\n }\n _meta?: {\n signature: string\n timestamp: number\n }\n}\n```\n\n### `ExternalFeeMappings`\n\n```ts\ntype ExternalFeeMappings = Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n amount_total?: number\n amount_total_decimal?: string\n}>\n```\n\n### `ExternalFeeMapping`\n\n```ts\ntype ExternalFeeMapping = {\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n amount_total?: number\n amount_total_decimal?: string\n}\n```\n\n### `CatalogSearch`\n\nA catalog search payload\n\n```ts\ntype CatalogSearch = {\n q: string\n sort?: string\n from?: number\n size?: number\n hydrate?: boolean\n availability?: {\n location: {\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n }\n available_date?: string // date\n }\n}\n```\n\n### `CatalogSearchResult`\n\nThe query result payload\n\n```ts\ntype CatalogSearchResult = {\n hits?: number\n results?: Array<{\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: { ... }\n feature?: { ... }\n }>\n cross_sellable_products?: {\n $relation?: { ... }\n }\n product_images?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n product_downloads?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n price_options?: {\n $relation?: { ... }\n }\n _availability_files?: Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n } | {\n billing_duration_amount?: number\n billing_duration_unit?: "days" | "weeks" | "months" | "years"\n notice_time_amount?: number\n notice_time_unit?: "days" | "weeks" | "months" | "years"\n termination_time_amount?: number\n termination_time_unit?: "days" | "weeks" | "months" | "years"\n renewal_duration_amount?: number\n renewal_duration_unit?: "days" | "weeks" | "months" | "years"\n } | {\n _id: string // uuid\n _title: string\n _org: string\n _schema: "coupon"\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n name: string\n description?: string\n type: "fixed" | "percentage"\n category: "discount" | "cashback"\n percentage_value?: string\n fixed_value?: number\n fixed_value_decimal?: string\n fixed_value_currency?: string\n cashback_period?: "0" | "12"\n active?: boolean\n requires_promo_code?: boolean\n }>\n}\n```\n\n### `SearchProvidersParams`\n\nA search providers payload\n\n```ts\ntype SearchProvidersParams = {\n type: "power" | "gas"\n postal_code: string\n city?: string\n street?: string\n street_number?: string\n}\n```\n\n### `SearchStreetsParams`\n\nA search streets payload\n\n```ts\ntype SearchStreetsParams = {\n postal_code: string\n city: string\n}\n```\n\n### `AvailabilityCheckParams`\n\nAvailability check request payload\n\n```ts\ntype AvailabilityCheckParams = {\n products: string[]\n filters: {\n location: {\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n }\n available_date?: string // date\n }\n}\n```\n\n### `AvailabilityResult`\n\nThe product availability check result payload\n\n```ts\ntype AvailabilityResult = {\n available_products: string[]\n check_results?: Array<{\n product_id: string\n matching_hits?: number\n matching_error?: Record<string, unknown>\n }>\n}\n```\n\n### `ValidateAvailabilityFileError`\n\nThe availability rule error\n\n```ts\ntype ValidateAvailabilityFileError = {\n line?: number\n msg: string\n data?: string\n}\n```\n\n### `IntegrationCredentialsResult`\n\nThe auth credentials for external integrations\n\n```ts\ntype IntegrationCredentialsResult = {\n username: string\n password: string\n auth_type?: "basic_auth"\n base_url?: string\n} | {\n auth_type: "oauth"\n oauth: {\n client_id: string\n client_secret: string\n authorization_url: string\n grant_type: "client_credentials"\n scope?: string\n access_token?: string\n access_token_expires_in?: number\n access_token_expires_at?: number\n }\n base_url?: string\n}\n```\n\n### `SaveIntegrationCredentialsParams`\n\nThe auth credentials for external integrations\n\n```ts\ntype SaveIntegrationCredentialsParams = {\n username: string\n password: string\n auth_type?: "basic_auth"\n base_url?: string\n} | {\n auth_type: "oauth"\n oauth: {\n client_id: string\n client_secret: string\n authorization_url: string\n grant_type: "client_credentials"\n scope?: string\n access_token?: string\n access_token_expires_in?: number\n access_token_expires_at?: number\n }\n base_url?: string\n}\n```\n\n### `ComputePriceParamsBase`\n\n```ts\ntype ComputePriceParamsBase = {\n postal_code: string\n consumption_type?: "household" | "heating_pump" | "night_storage_heating" | "night_storage_heating_common_meter"\n consumption?: number\n consumption_HT?: number\n consumption_NT?: number\n association_id?: string\n billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n reference_date?: string // date\n}\n```\n\n### `ComputePriceParamsPower`\n\n```ts\ntype ComputePriceParamsPower = {\n postal_code: string\n consumption_type?: "household" | "heating_pump" | "night_storage_heating" | "night_storage_heating_common_meter"\n consumption?: number\n consumption_HT?: number\n consumption_NT?: number\n association_id?: string\n billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n reference_date?: string // date\n type: "power"\n meter_type?: "classic" | "smart" | "digital"\n}\n```\n\n### `ComputePriceParamsGas`\n\n```ts\ntype ComputePriceParamsGas = {\n postal_code: string\n consumption_type?: "household" | "heating_pump" | "night_storage_heating" | "night_storage_heating_common_meter"\n consumption?: number\n consumption_HT?: number\n consumption_NT?: number\n association_id?: string\n billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n reference_date?: string // date\n type: "gas"\n concession_type?: "standard" | "special"\n}\n```\n\n### `SignatureMeta`\n\nSignature meta data payload\n\n```ts\ntype SignatureMeta = {\n signature: string\n timestamp: number\n}\n```\n\n### `ComputedBasePrice`\n\nThe computed price\n\n```ts\ntype ComputedBasePrice = {\n amount: number\n amount_decimal: string\n unit_amount?: number\n unit_amount_decimal?: string\n}\n```\n\n### `ComputePriceParams`\n\nThe compute price payload\n\n```ts\ntype ComputePriceParams = {\n postal_code: string\n consumption_type?: "household" | "heating_pump" | "night_storage_heating" | "night_storage_heating_common_meter"\n consumption?: number\n consumption_HT?: number\n consumption_NT?: number\n association_id?: string\n billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n reference_date?: string // date\n type: "power"\n meter_type?: "classic" | "smart" | "digital"\n} | {\n postal_code: string\n consumption_type?: "household" | "heating_pump" | "night_storage_heating" | "night_storage_heating_common_meter"\n consumption?: number\n consumption_HT?: number\n consumption_NT?: number\n association_id?: string\n billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n reference_date?: string // date\n type: "gas"\n concession_type?: "standard" | "special"\n}\n```\n\n### `GasConcessionType`\n\nThe concession type for gas\n\n```ts\ntype GasConcessionType = "standard" | "special"\n```\n\n### `PowerMeterType`\n\nThe meter type for power\n\n```ts\ntype PowerMeterType = "classic" | "smart" | "digital"\n```\n\n### `DynamicTariffMode`\n\nThe mode of the dynamic tariff. `day_ahead_market` uses the Day-Ahead spot market price as base.\n\n```ts\ntype DynamicTariffMode = "day_ahead_market" | "manual"\n```\n\n### `DynamicTariffInterval`\n\nThe interval of the tariff if a spot market price is used as base.\n\n```ts\ntype DynamicTariffInterval = "hourly" | "monthly_average"\n```\n\n### `ComputedPriceBreakdown`\n\nPrice breakdown\n\n```ts\ntype ComputedPriceBreakdown = {\n static?: Record<string, {\n amount: number\n amount_decimal: string\n unit_amount?: number\n unit_amount_decimal?: string\n }>\n variable?: Record<string, {\n amount: number\n amount_decimal: string\n unit_amount?: number\n unit_amount_decimal?: string\n }>\n variable_ht?: Record<string, {\n amount: number\n amount_decimal: string\n unit_amount?: number\n unit_amount_decimal?: string\n }>\n variable_nt?: Record<string, {\n amount: number\n amount_decimal: string\n unit_amount?: number\n unit_amount_decimal?: string\n }>\n}\n```\n\n### `ComputedPriceComponents`\n\nThe computed price components\n\n```ts\ntype ComputedPriceComponents = Record<string, {\n amount: number\n amount_decimal: string\n unit_amount?: number\n unit_amount_decimal?: string\n}>\n```\n\n### `ComputePriceResult`\n\n```ts\ntype ComputePriceResult = {\n amount_total: number\n amount_total_decimal: string\n amount_static?: number\n amount_static_decimal?: unknown\n amount_variable_ht?: number\n amount_variable_decimal_ht?: string\n unit_amount_variable_ht?: number\n unit_amount_variable_decimal_ht?: string\n amount_variable_nt?: number\n amount_variable_decimal_nt?: string\n unit_amount_variable_nt?: number\n unit_amount_variable_decimal_nt?: string\n currency: string\n billing_period: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n breakdown: {\n static?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n variable?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n variable_ht?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n variable_nt?: Record<string, {\n amount: { ... }\n amount_decimal: { ... }\n unit_amount?: { ... }\n unit_amount_decimal?: { ... }\n }>\n }\n _meta?: {\n signature: string\n timestamp: number\n }\n}\n```\n\n### `SpotMarketBiddingZone`\n\nThe bidding zone for a spot market price.\n\n```ts\ntype SpotMarketBiddingZone = "AT" | "DE-LU"\n```\n\n### `SpotMarketType`\n\nThe market for a spot market price.\n\n```ts\ntype SpotMarketType = "day_ahead"\n```\n\n### `SpotMarketDataFrequency`\n\nThe aggregation frequency for a series of spot market price data.\n\n```ts\ntype SpotMarketDataFrequency = "PT15M" | "PT1H" | "P1D" | "P1M"\n```\n\n### `HistoricMarketPricesResult`\n\n```ts\ntype HistoricMarketPricesResult = {\n market: "day_ahead"\n bidding_zone: "AT" | "DE-LU"\n prices: Array<{\n unit_amount: number\n unit_amount_decimal: string\n unit_amount_currency: string\n timestamp: string // date-time\n }>\n}\n```\n\n### `AverageMarketPriceResult`\n\n```ts\ntype AverageMarketPriceResult = {\n market: "day_ahead"\n bidding_zone: "AT" | "DE-LU"\n price: {\n unit_amount: number\n unit_amount_decimal: string\n unit_amount_currency: string\n timestamp: string\n }\n _meta?: {\n signature: string\n timestamp: number\n }\n}\n```\n\n### `AverageMarketPriceRecord`\n\nAn average market price over a given period in time.\n\n```ts\ntype AverageMarketPriceRecord = {\n unit_amount: number\n unit_amount_decimal: string\n unit_amount_currency: string\n timestamp: string\n}\n```\n\n### `HistoricMarketPriceRecord`\n\nA market price at a given point in time.\n\n```ts\ntype HistoricMarketPriceRecord = {\n unit_amount: number\n unit_amount_decimal: string\n unit_amount_currency: string\n timestamp: string // date-time\n}\n```\n\n### `BaseMarketPriceRecord`\n\n```ts\ntype BaseMarketPriceRecord = {\n unit_amount: number\n unit_amount_decimal: string\n unit_amount_currency: string\n}\n```\n\n### `OAuthCredentials`\n\n```ts\ntype OAuthCredentials = {\n client_id: string\n client_secret: string\n authorization_url: string\n grant_type: "client_credentials"\n scope?: string\n access_token?: string\n access_token_expires_in?: number\n access_token_expires_at?: number\n}\n```\n\n### `BasicAuthCredentials`\n\n```ts\ntype BasicAuthCredentials = {\n username: string\n password: string\n}\n```\n\n### `BasicAuthIntegration`\n\n```ts\ntype BasicAuthIntegration = {\n username: string\n password: string\n auth_type?: "basic_auth"\n base_url?: string\n}\n```\n\n### `OAuthIntegration`\n\n```ts\ntype OAuthIntegration = {\n auth_type: "oauth"\n oauth: {\n client_id: string\n client_secret: string\n authorization_url: string\n grant_type: "client_credentials"\n scope?: string\n access_token?: string\n access_token_expires_in?: number\n access_token_expires_at?: number\n }\n base_url?: string\n}\n```\n\n### `IntegrationAuthCredentials`\n\nThe auth credentials for external integrations\n\n```ts\ntype IntegrationAuthCredentials = {\n username: string\n password: string\n auth_type?: "basic_auth"\n base_url?: string\n} | {\n auth_type: "oauth"\n oauth: {\n client_id: string\n client_secret: string\n authorization_url: string\n grant_type: "client_credentials"\n scope?: string\n access_token?: string\n access_token_expires_in?: number\n access_token_expires_at?: number\n }\n base_url?: string\n}\n```\n\n### `SearchStreetsResult`\n\nThe search providers payload\n\n```ts\ntype SearchStreetsResult = Array<{\n street: string\n}>\n```\n\n### `SearchProvidersResult`\n\nThe search providers payload\n\n```ts\ntype SearchProvidersResult = Array<{\n name: string\n code: string\n type: "gas" | "power"\n additionalData: {\n gridOperators: Array<{\n name: { ... }\n codeNumber: { ... }\n validFrom?: { ... }\n validUntil?: { ... }\n }>\n defaultSuppliers: Array<{\n name: { ... }\n codeNumber: { ... }\n validFrom?: { ... }\n validUntil?: { ... }\n }>\n marketAreaDetails: {\n gasType?: { ... }\n marketArea?: { ... }\n virtualTradingPoint?: { ... }\n } | {\n controlZone?: { ... }\n balancingZone?: { ... }\n }\n }\n _meta?: {\n signature: string\n timestamp: number\n }\n}>\n```\n\n### `Provider`\n\nThe provider entity\n\n```ts\ntype Provider = {\n name: string\n code: string\n type: "gas" | "power"\n additionalData: {\n gridOperators: Array<{\n name: { ... }\n codeNumber: { ... }\n validFrom?: { ... }\n validUntil?: { ... }\n }>\n defaultSuppliers: Array<{\n name: { ... }\n codeNumber: { ... }\n validFrom?: { ... }\n validUntil?: { ... }\n }>\n marketAreaDetails: {\n gasType?: { ... }\n marketArea?: { ... }\n virtualTradingPoint?: { ... }\n } | {\n controlZone?: { ... }\n balancingZone?: { ... }\n }\n }\n _meta?: {\n signature: string\n timestamp: number\n }\n}\n```\n\n### `AdditionalProviderData`\n\nAdditional data included in the provider entity\n\n```ts\ntype AdditionalProviderData = {\n gridOperators: Array<{\n name: string\n codeNumber: string\n validFrom?: string // date\n validUntil?: string // date\n }>\n defaultSuppliers: Array<{\n name: string\n codeNumber: string\n validFrom?: string // date\n validUntil?: string // date\n }>\n marketAreaDetails: {\n gasType?: "L-Gas" | "H-Gas"\n marketArea?: string\n virtualTradingPoint?: string\n } | {\n controlZone?: string\n balancingZone?: string\n }\n}\n```\n\n### `MarketParticipant`\n\nMarket participant data\n\n```ts\ntype MarketParticipant = {\n name: string\n codeNumber: string\n validFrom?: string // date\n validUntil?: string // date\n}\n```\n\n### `GasMarketAreaDetails`\n\nMarket area details for gas\n\n```ts\ntype GasMarketAreaDetails = {\n gasType?: "L-Gas" | "H-Gas"\n marketArea?: string\n virtualTradingPoint?: string\n}\n```\n\n### `PowerMarketAreaDetails`\n\nMarket area details for power\n\n```ts\ntype PowerMarketAreaDetails = {\n controlZone?: string\n balancingZone?: string\n}\n```\n\n### `Street`\n\nThe street entity\n\n```ts\ntype Street = {\n street: string\n}\n```\n\n### `ValidateAvailabilityFileResult`\n\nThe availability map file result payload\n\n```ts\ntype ValidateAvailabilityFileResult = {\n status: "success" | "error"\n rules_parsed_count: number\n errors: Array<{\n line?: number\n msg: string\n data?: string\n }>\n}\n```\n\n### `CartDto`\n\nA valid cart payload from a client.\n\n```ts\ntype CartDto = {\n metadata?: Array<{\n key?: string\n value?: string\n }>\n customer?: {\n first_name?: string\n last_name?: string\n company_name?: string\n vat_id?: string\n email?: string\n phone?: string\n }\n billing_address?: {\n _tags?: string[]\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n additional_info?: string\n company_name?: string\n first_name?: string\n last_name?: string\n salutation?: string\n title?: string\n }\n delivery_address?: {\n _tags?: string[]\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n additional_info?: string\n company_name?: string\n first_name?: string\n last_name?: string\n salutation?: string\n title?: string\n }\n source_type?: string\n source_id?: string\n source?: {\n http?: string\n title?: string\n }\n additional_addresses?: Array<{\n _tags?: string[]\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n additional_info?: string\n company_name?: string\n first_name?: string\n last_name?: string\n salutation?: string\n title?: string\n }>\n payment_method?: {\n type?: string\n details?: Record<string, unknown>\n }\n line_items: Array<{\n external_fees_mappings?: Array<{\n price_id?: { ... }\n frequency_unit?: { ... }\n amount_total?: { ... }\n amount_total_decimal?: { ... }\n }>\n external_fees_metadata?: {\n amount_total: { ... }\n amount_total_decimal: { ... }\n amount_static?: { ... }\n amount_static_decimal?: { ... }\n amount_variable_ht?: { ... }\n amount_variable_decimal_ht?: { ... }\n unit_amount_variable_ht?: { ... }\n unit_amount_variable_decimal_ht?: { ... }\n amount_variable_nt?: { ... }\n amount_variable_decimal_nt?: { ... }\n unit_amount_variable_nt?: { ... }\n unit_amount_variable_decimal_nt?: { ... }\n currency: { ... }\n billing_period: { ... }\n breakdown: { ... }\n _meta?: { ... }\n }\n external_location_metadata?: {\n name: { ... }\n code: { ... }\n type: { ... }\n additionalData: { ... }\n _meta?: { ... }\n }\n external_price_metadata?: {\n market: { ... }\n bidding_zone: { ... }\n // ...\n}\n```\n\n### `CheckoutCart`\n\nThe cart checkout request payload\n\n```ts\ntype CheckoutCart = {\n cart?: string | {\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n }>\n customer?: {\n first_name?: { ... }\n last_name?: { ... }\n company_name?: { ... }\n vat_id?: { ... }\n email?: { ... }\n phone?: { ... }\n }\n billing_address?: {\n _tags?: { ... }\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n additional_info?: { ... }\n company_name?: { ... }\n first_name?: { ... }\n last_name?: { ... }\n salutation?: { ... }\n title?: { ... }\n }\n delivery_address?: {\n _tags?: { ... }\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n additional_info?: { ... }\n company_name?: { ... }\n first_name?: { ... }\n last_name?: { ... }\n salutation?: { ... }\n title?: { ... }\n }\n source_type?: string\n source_id?: string\n source?: {\n http?: { ... }\n title?: { ... }\n }\n additional_addresses?: Array<{\n _tags?: { ... }\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n additional_info?: { ... }\n company_name?: { ... }\n first_name?: { ... }\n last_name?: { ... }\n salutation?: { ... }\n title?: { ... }\n }>\n payment_method?: {\n type?: { ... }\n details?: { ... }\n }\n line_items: Array<{\n external_fees_mappings?: { ... }\n external_fees_metadata?: { ... }\n external_location_metadata?: { ... }\n external_price_metadata?: { ... }\n _immutable_pricing_details?: { ... }\n coupon_ids?: { ... }\n taxes?: { ... }\n recurrences?: { ... }\n _coupons?: { ... }\n type?: { ... }\n billing_period?: { ... }\n unit_amount?: { ... }\n unit_amount_gross?: { ... }\n unit_amount_currency?: { ... }\n unit_amount_decimal?: { ... }\n is_composite_price?: { ... }\n pricing_model?: { ... }\n _price?: { ... }\n } | {\n external_fees_mappings?: { ... }\n external_fees_metadata?: { ... }\n external_location_metadata?: { ... }\n external_price_metadata?: { ... }\n _immutable_pricing_details?: { ... }\n coupon_ids?: { ... }\n taxes?: { ... }\n recurrences?: { ... }\n _coupons?: { ... }\n is_composite_price: { ... }\n item_components?: { ... }\n selected_price_component_ids?: { ... }\n price_component_coupon_ids?: { ... }\n _price?: { ... }\n // ...\n}\n```\n\n### `CheckoutCartResult`\n\nThe cart checkout result\n\n```ts\ntype CheckoutCartResult = {\n order?: {\n order_number?: string\n cart_id?: string\n status?: "draft" | "quote" | "placed" | "cancelled" | "completed"\n source_type?: string\n source_id?: string\n source?: {\n http?: { ... }\n title?: { ... }\n }\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n }>\n customer?: {\n $relation?: { ... }\n }\n billing_first_name?: string\n billing_last_name?: string\n billing_company_name?: string\n billing_vat?: string\n billing_email?: string\n billing_phone?: string\n billing_address?: Array<{\n _tags?: { ... }\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n additional_info?: { ... }\n company_name?: { ... }\n first_name?: { ... }\n last_name?: { ... }\n salutation?: { ... }\n title?: { ... }\n }>\n currency?: string\n delivery_address?: Array<{\n _tags?: { ... }\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n additional_info?: { ... }\n company_name?: { ... }\n first_name?: { ... }\n last_name?: { ... }\n salutation?: { ... }\n title?: { ... }\n }>\n payment_method?: Array<{\n type?: { ... }\n details?: { ... }\n }>\n line_items?: Array<{\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n } | {\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n }>\n products?: {\n $relation?: { ... }\n }\n prices?: {\n $relation?: { ... }\n }\n coupons?: {\n $relation?: { ... }\n }\n amount_subtotal?: number\n amount_total?: number\n total_details?: {\n amount_shipping?: { ... }\n amount_tax?: { ... }\n breakdown?: { ... }\n }\n _org_id?: string\n _id?: string\n _created_at?: string\n _updated_at?: string\n // ...\n}\n```\n\n### `CheckoutMode`\n\nThe checkout mode for the cart checkout.\n\n```ts\ntype CheckoutMode = "create_order" | "create_invoice" | "create_quote"\n```\n\n### `OrderStatus`\n\n\n| status | description |\n|-------------|-------|\n| `draft` | \u200B\u200BStarting state for all orders, at this point we can still edit the order |\n| `quote` | The order is in a quoting phase, bound to an expiration date |\n| `placed` | The order has been paid and can now be fulfilled (shipped\n\n```ts\ntype OrderStatus = "draft" | "quote" | "placed" | "cancelled" | "completed"\n```\n\n### `BasePriceItemCommon`\n\nRepresents the common keys in BasePriceItem and BasePriceItemDto\n\n```ts\ntype BasePriceItemCommon = {\n metadata?: Array<{\n key?: string\n value?: string\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: { ... }\n feature?: { ... }\n }>\n cross_sellable_products?: {\n $relation?: { ... }\n }\n product_images?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n product_downloads?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n price_options?: {\n $relation?: { ... }\n }\n _availability_files?: Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n }\n}\n```\n\n### `PriceItemDtoUnion`\n\n```ts\ntype PriceItemDtoUnion = {\n external_fees_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n amount_total?: number\n amount_total_decimal?: string\n }>\n external_fees_metadata?: {\n amount_total: number\n amount_total_decimal: string\n amount_static?: number\n amount_static_decimal?: unknown\n amount_variable_ht?: number\n amount_variable_decimal_ht?: string\n unit_amount_variable_ht?: number\n unit_amount_variable_decimal_ht?: string\n amount_variable_nt?: number\n amount_variable_decimal_nt?: string\n unit_amount_variable_nt?: number\n unit_amount_variable_decimal_nt?: string\n currency: string\n billing_period: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n breakdown: {\n static?: { ... }\n variable?: { ... }\n variable_ht?: { ... }\n variable_nt?: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_location_metadata?: {\n name: string\n code: string\n type: "gas" | "power"\n additionalData: {\n gridOperators: { ... }\n defaultSuppliers: { ... }\n marketAreaDetails: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_price_metadata?: {\n market: "day_ahead"\n bidding_zone: "AT" | "DE-LU"\n price: {\n unit_amount: { ... }\n unit_amount_decimal: { ... }\n unit_amount_currency: { ... }\n timestamp: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n _immutable_pricing_details?: {\n items?: Array<{\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n } | {\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n }>\n amount_subtotal?: number\n amount_total?: number\n unit_amount_gross?: number\n unit_amount_net?: number\n amount_tax?: number\n total_details?: {\n amount_shipping?: { ... }\n amount_tax?: { ... }\n breakdown?: { ... }\n }\n currency?: string\n redeemed_promos?: Array<{\n code: { ... }\n coupons: { ... }\n }>\n // ...\n}\n```\n\n### `PriceItemsDto`\n\nA valid set of product prices, quantities, (discounts) and taxes from a client.\n\n```ts\ntype PriceItemsDto = Array<{\n external_fees_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n amount_total?: number\n amount_total_decimal?: string\n }>\n external_fees_metadata?: {\n amount_total: number\n amount_total_decimal: string\n amount_static?: number\n amount_static_decimal?: unknown\n amount_variable_ht?: number\n amount_variable_decimal_ht?: string\n unit_amount_variable_ht?: number\n unit_amount_variable_decimal_ht?: string\n amount_variable_nt?: number\n amount_variable_decimal_nt?: string\n unit_amount_variable_nt?: number\n unit_amount_variable_decimal_nt?: string\n currency: string\n billing_period: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n breakdown: {\n static?: { ... }\n variable?: { ... }\n variable_ht?: { ... }\n variable_nt?: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_location_metadata?: {\n name: string\n code: string\n type: "gas" | "power"\n additionalData: {\n gridOperators: { ... }\n defaultSuppliers: { ... }\n marketAreaDetails: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_price_metadata?: {\n market: "day_ahead"\n bidding_zone: "AT" | "DE-LU"\n price: {\n unit_amount: { ... }\n unit_amount_decimal: { ... }\n unit_amount_currency: { ... }\n timestamp: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n _immutable_pricing_details?: {\n items?: Array<{\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n } | {\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n }>\n amount_subtotal?: number\n amount_total?: number\n unit_amount_gross?: number\n unit_amount_net?: number\n amount_tax?: number\n total_details?: {\n amount_shipping?: { ... }\n amount_tax?: { ... }\n breakdown?: { ... }\n }\n currency?: string\n redeemed_promos?: Array<{\n code: { ... }\n coupons: { ... }\n }>\n // ...\n}\n```\n\n### `BasePriceItemDto`\n\nRepresents a valid base price item from a client.\n\n```ts\ntype BasePriceItemDto = {\n metadata?: Array<{\n key?: string\n value?: string\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: { ... }\n feature?: { ... }\n }>\n cross_sellable_products?: {\n $relation?: { ... }\n }\n product_images?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n product_downloads?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n price_options?: {\n $relation?: { ... }\n }\n _availability_files?: Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n }\n}\n```\n\n### `PriceItemDto`\n\nRepresents a price input to the pricing library.\n\n```ts\ntype PriceItemDto = {\n external_fees_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n amount_total?: number\n amount_total_decimal?: string\n }>\n external_fees_metadata?: {\n amount_total: number\n amount_total_decimal: string\n amount_static?: number\n amount_static_decimal?: unknown\n amount_variable_ht?: number\n amount_variable_decimal_ht?: string\n unit_amount_variable_ht?: number\n unit_amount_variable_decimal_ht?: string\n amount_variable_nt?: number\n amount_variable_decimal_nt?: string\n unit_amount_variable_nt?: number\n unit_amount_variable_decimal_nt?: string\n currency: string\n billing_period: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n breakdown: {\n static?: { ... }\n variable?: { ... }\n variable_ht?: { ... }\n variable_nt?: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_location_metadata?: {\n name: string\n code: string\n type: "gas" | "power"\n additionalData: {\n gridOperators: { ... }\n defaultSuppliers: { ... }\n marketAreaDetails: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_price_metadata?: {\n market: "day_ahead"\n bidding_zone: "AT" | "DE-LU"\n price: {\n unit_amount: { ... }\n unit_amount_decimal: { ... }\n unit_amount_currency: { ... }\n timestamp: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n _immutable_pricing_details?: {\n items?: Array<{\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n } | {\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n }>\n amount_subtotal?: number\n amount_total?: number\n unit_amount_gross?: number\n unit_amount_net?: number\n amount_tax?: number\n total_details?: {\n amount_shipping?: { ... }\n amount_tax?: { ... }\n breakdown?: { ... }\n }\n currency?: string\n redeemed_promos?: Array<{\n code: { ... }\n coupons: { ... }\n }>\n // ...\n}\n```\n\n### `CompositePriceItemDto`\n\nRepresents a composite price input to the pricing library.\n\n```ts\ntype CompositePriceItemDto = {\n external_fees_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n amount_total?: number\n amount_total_decimal?: string\n }>\n external_fees_metadata?: {\n amount_total: number\n amount_total_decimal: string\n amount_static?: number\n amount_static_decimal?: unknown\n amount_variable_ht?: number\n amount_variable_decimal_ht?: string\n unit_amount_variable_ht?: number\n unit_amount_variable_decimal_ht?: string\n amount_variable_nt?: number\n amount_variable_decimal_nt?: string\n unit_amount_variable_nt?: number\n unit_amount_variable_decimal_nt?: string\n currency: string\n billing_period: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n breakdown: {\n static?: { ... }\n variable?: { ... }\n variable_ht?: { ... }\n variable_nt?: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_location_metadata?: {\n name: string\n code: string\n type: "gas" | "power"\n additionalData: {\n gridOperators: { ... }\n defaultSuppliers: { ... }\n marketAreaDetails: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n external_price_metadata?: {\n market: "day_ahead"\n bidding_zone: "AT" | "DE-LU"\n price: {\n unit_amount: { ... }\n unit_amount_decimal: { ... }\n unit_amount_currency: { ... }\n timestamp: { ... }\n }\n _meta?: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n _immutable_pricing_details?: {\n items?: Array<{\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n } | {\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n }>\n amount_subtotal?: number\n amount_total?: number\n unit_amount_gross?: number\n unit_amount_net?: number\n amount_tax?: number\n total_details?: {\n amount_shipping?: { ... }\n amount_tax?: { ... }\n breakdown?: { ... }\n }\n currency?: string\n redeemed_promos?: Array<{\n code: { ... }\n coupons: { ... }\n }>\n // ...\n}\n```\n\n### `TaxAmountDto`\n\nA valid tax rate from a client.\n\n```ts\ntype TaxAmountDto = {\n rate?: string\n tax?: {\n _id: string // uuid\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n type: "VAT" | "GST" | "Custom"\n description?: string\n rate: number\n active?: boolean\n region?: string\n region_label?: string\n }\n}\n```\n\n### `OrderSource`\n\nThe order generation source\n\n```ts\ntype OrderSource = {\n http?: string\n title?: string\n}\n```\n\n### `OpportunitySource`\n\nThe opportunity generation source\n\n```ts\ntype OpportunitySource = {\n http?: string\n title?: string\n}\n```\n\n### `RecurrenceAmountDto`\n\nAn amount associated with a specific recurrence.\n\n```ts\ntype RecurrenceAmountDto = {\n amount_subtotal?: number\n amount_subtotal_decimal?: string\n amount_total?: number\n amount_total_decimal?: string\n cashback_amount?: number\n cashback_amount_decimal?: string\n cashback_period?: "0" | "12"\n after_cashback_amount_total?: number\n after_cashback_amount_total_decimal?: string\n discount_amount?: number\n discount_amount_decimal?: string\n discount_percentage?: number\n before_discount_amount_total?: number\n before_discount_amount_total_decimal?: string\n before_discount_amount_subtotal?: number\n before_discount_amount_subtotal_decimal?: string\n}\n```\n\n### `Currency`\n\nThree-letter ISO currency code, in lowercase. Must be a supported currency.\nISO 4217 CURRENCY CODES as specified in the documentation: https://www.iso.org/iso-4217-currency-codes.html\n\n\n```ts\ntype Currency = string\n```\n\n### `OrderRelation`\n\nAn order relation reference\n\n```ts\ntype OrderRelation = {\n entity_id?: string\n _tags?: string[]\n}\n```\n\n### `OrderPayload`\n\nOrder Entity Payload\n\n```ts\ntype OrderPayload = {\n status?: "draft" | "quote" | "placed" | "cancelled" | "completed"\n line_items?: Array<{\n external_fees_mappings?: Array<{\n price_id?: { ... }\n frequency_unit?: { ... }\n amount_total?: { ... }\n amount_total_decimal?: { ... }\n }>\n external_fees_metadata?: {\n amount_total: { ... }\n amount_total_decimal: { ... }\n amount_static?: { ... }\n amount_static_decimal?: { ... }\n amount_variable_ht?: { ... }\n amount_variable_decimal_ht?: { ... }\n unit_amount_variable_ht?: { ... }\n unit_amount_variable_decimal_ht?: { ... }\n amount_variable_nt?: { ... }\n amount_variable_decimal_nt?: { ... }\n unit_amount_variable_nt?: { ... }\n unit_amount_variable_decimal_nt?: { ... }\n currency: { ... }\n billing_period: { ... }\n breakdown: { ... }\n _meta?: { ... }\n }\n external_location_metadata?: {\n name: { ... }\n code: { ... }\n type: { ... }\n additionalData: { ... }\n _meta?: { ... }\n }\n external_price_metadata?: {\n market: { ... }\n bidding_zone: { ... }\n price: { ... }\n _meta?: { ... }\n }\n _immutable_pricing_details?: {\n items?: { ... }\n amount_subtotal?: { ... }\n amount_total?: { ... }\n unit_amount_gross?: { ... }\n unit_amount_net?: { ... }\n amount_tax?: { ... }\n total_details?: { ... }\n currency?: { ... }\n redeemed_promos?: { ... }\n }\n coupon_ids?: string[]\n taxes?: Array<{\n rate?: { ... }\n tax?: { ... }\n }>\n recurrences?: Array<{\n amount_subtotal?: { ... }\n amount_subtotal_decimal?: { ... }\n amount_total?: { ... }\n amount_total_decimal?: { ... }\n cashback_amount?: { ... }\n cashback_amount_decimal?: { ... }\n cashback_period?: { ... }\n after_cashback_amount_total?: { ... }\n after_cashback_amount_total_decimal?: { ... }\n discount_amount?: { ... }\n discount_amount_decimal?: { ... }\n discount_percentage?: { ... }\n before_discount_amount_total?: { ... }\n before_discount_amount_total_decimal?: { ... }\n before_discount_amount_subtotal?: { ... }\n before_discount_amount_subtotal_decimal?: { ... }\n }>\n _coupons?: Array<{\n _id: { ... }\n _title: { ... }\n _org: { ... }\n _schema: { ... }\n _tags?: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n name: { ... }\n description?: { ... }\n type: { ... }\n category: { ... }\n percentage_value?: { ... }\n fixed_value?: { ... }\n fixed_value_decimal?: { ... }\n fixed_value_currency?: { ... }\n cashback_period?: { ... }\n active?: { ... }\n requires_promo_code?: { ... }\n }>\n type?: "one_time" | "recurring"\n billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly"\n unit_amount?: number\n unit_amount_gross?: number\n unit_amount_currency?: string\n unit_amount_decimal?: string\n // ...\n}\n```\n\n### `PriceItems`\n\nTracks a set of product prices, quantities, (discounts) and taxes.\n\n```ts\ntype PriceItems = Array<{\n metadata?: Array<{\n key?: string\n value?: string\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: { ... }\n feature?: { ... }\n }>\n cross_sellable_products?: {\n $relation?: { ... }\n }\n product_images?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n product_downloads?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n price_options?: {\n $relation?: { ... }\n }\n _availability_files?: Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n }\n} | {\n metadata?: Array<{\n key?: string\n value?: string\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n }>\n is_tax_inclusive?: boolean\n // ...\n}\n```\n\n### `CompositePriceItem`\n\nRepresents a composite price input to the pricing library.\n\n```ts\ntype CompositePriceItem = {\n metadata?: Array<{\n key?: string\n value?: string\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: { ... }\n feature?: { ... }\n }>\n cross_sellable_products?: {\n $relation?: { ... }\n }\n product_images?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n product_downloads?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n price_options?: {\n $relation?: { ... }\n }\n _availability_files?: Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n }\n}\n```\n\n### `BasePriceItem`\n\nRepresents a price item\n\n```ts\ntype BasePriceItem = {\n metadata?: Array<{\n key?: string\n value?: string\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: { ... }\n feature?: { ... }\n }>\n cross_sellable_products?: {\n $relation?: { ... }\n }\n product_images?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n product_downloads?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n price_options?: {\n $relation?: { ... }\n }\n _availability_files?: Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n }\n}\n```\n\n### `CashbackAmounts`\n\n```ts\ntype CashbackAmounts = {\n cashback_amount?: number\n cashback_amount_decimal?: string\n cashback_period?: "0" | "12"\n after_cashback_amount_total?: number\n after_cashback_amount_total_decimal?: string\n}\n```\n\n### `DiscountAmounts`\n\n```ts\ntype DiscountAmounts = {\n discount_amount?: number\n discount_amount_decimal?: string\n discount_percentage?: number\n before_discount_amount_total?: number\n before_discount_amount_total_decimal?: string\n before_discount_amount_subtotal?: number\n before_discount_amount_subtotal_decimal?: string\n}\n```\n\n### `PriceAmounts`\n\n```ts\ntype PriceAmounts = {\n amount_subtotal?: number\n amount_subtotal_decimal?: string\n amount_total?: number\n amount_total_decimal?: string\n}\n```\n\n### `Amounts`\n\n```ts\ntype Amounts = {\n amount_subtotal?: number\n amount_subtotal_decimal?: string\n amount_total?: number\n amount_total_decimal?: string\n cashback_amount?: number\n cashback_amount_decimal?: string\n cashback_period?: "0" | "12"\n after_cashback_amount_total?: number\n after_cashback_amount_total_decimal?: string\n discount_amount?: number\n discount_amount_decimal?: string\n discount_percentage?: number\n before_discount_amount_total?: number\n before_discount_amount_total_decimal?: string\n before_discount_amount_subtotal?: number\n before_discount_amount_subtotal_decimal?: string\n}\n```\n\n### `PriceItem`\n\nRepresents a price item\n\n```ts\ntype PriceItem = {\n metadata?: Array<{\n key?: string\n value?: string\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n name?: string\n value?: number\n metadata?: Record<string, string>\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: string\n code?: string\n type?: "product" | "service"\n name?: string\n categories?: string[]\n feature?: Array<{\n _tags?: { ... }\n feature?: { ... }\n }>\n cross_sellable_products?: {\n $relation?: { ... }\n }\n product_images?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n product_downloads?: {\n $relation?: { ... }\n } | Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n price_options?: {\n $relation?: { ... }\n }\n _availability_files?: Array<{\n _id: { ... }\n filename: { ... }\n mime_type: { ... }\n versions: { ... }\n _schema: { ... }\n _org: { ... }\n _created_at: { ... }\n _updated_at: { ... }\n _title?: { ... }\n $relation?: { ... }\n }>\n _id?: string\n _title?: string\n _org_id?: string\n _created_at?: string\n _updated_at?: string\n }\n}\n```\n\n### `TaxAmount`\n\nA tax amount associated with a specific tax rate.\n\n```ts\ntype TaxAmount = {\n amount?: number\n rate?: string\n rateValue?: number\n tax?: {\n _id: string // uuid\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n type: "VAT" | "GST" | "Custom"\n description?: string\n rate: number\n active?: boolean\n region?: string\n region_label?: string\n }\n}\n```\n\n### `TaxAmountBreakdown`\n\nA tax amount associated with a specific tax rate.\n\n```ts\ntype TaxAmountBreakdown = {\n amount?: number\n rate?: string\n rateValue?: number\n tax?: {\n rate?: number\n type?: "VAT" | "GST" | "Custom"\n _id?: string\n }\n}\n```\n\n### `RecurrenceAmount`\n\nAn amount associated with a specific recurrence.\n\n```ts\ntype RecurrenceAmount = {\n amount_subtotal?: number\n amount_subtotal_decimal?: string\n amount_total?: number\n amount_total_decimal?: string\n cashback_amount?: number\n cashback_amount_decimal?: string\n cashback_period?: "0" | "12"\n after_cashback_amount_total?: number\n after_cashback_amount_total_decimal?: string\n discount_amount?: number\n discount_amount_decimal?: string\n discount_percentage?: number\n before_discount_amount_total?: number\n before_discount_amount_total_decimal?: string\n before_discount_amount_subtotal?: number\n before_discount_amount_subtotal_decimal?: string\n}\n```\n\n### `CashbackAmount`\n\nA detail associated with a specific cashback.\n\n```ts\ntype CashbackAmount = {\n cashback_name?: string\n cashback_period: "0" | "12"\n amount_total: number\n}\n```\n\n### `RecurrenceAmountWithTax`\n\nAn amount associated with a specific recurrence.\n\n```ts\ntype RecurrenceAmountWithTax = {\n type?: string\n billing_period?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly"\n amount_total: number\n amount_subtotal: number\n amount_tax?: number\n tax?: {\n amount?: number\n rate?: string\n rateValue?: number\n tax?: {\n rate?: { ... }\n type?: { ... }\n _id?: { ... }\n }\n }\n}\n```\n\n### `TotalDetails`\n\nThe total details with tax (and discount) aggregated totals.\n\n```ts\ntype TotalDetails = {\n amount_shipping?: number\n amount_tax?: number\n breakdown?: {\n taxes?: Array<{\n amount?: { ... }\n rate?: { ... }\n rateValue?: { ... }\n tax?: { ... }\n }>\n recurrences?: Array<{\n amount_subtotal?: { ... }\n amount_subtotal_decimal?: { ... }\n amount_total?: { ... }\n amount_total_decimal?: { ... }\n cashback_amount?: { ... }\n cashback_amount_decimal?: { ... }\n cashback_period?: { ... }\n after_cashback_amount_total?: { ... }\n after_cashback_amount_total_decimal?: { ... }\n discount_amount?: { ... }\n discount_amount_decimal?: { ... }\n discount_percentage?: { ... }\n before_discount_amount_total?: { ... }\n before_discount_amount_total_decimal?: { ... }\n before_discount_amount_subtotal?: { ... }\n before_discount_amount_subtotal_decimal?: { ... }\n }>\n cashbacks?: Array<{\n cashback_name?: { ... }\n cashback_period: { ... }\n amount_total: { ... }\n }>\n recurrencesByTax?: Array<{\n type?: { ... }\n billing_period?: { ... }\n amount_total: { ... }\n amount_subtotal: { ... }\n amount_tax?: { ... }\n tax?: { ... }\n }>\n }\n}\n```\n\n### `PricingDetails`\n\nThe result from the calculation of a set of price items.\n\n```ts\ntype PricingDetails = {\n items?: Array<{\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: { ... }\n frequency_unit?: { ... }\n name?: { ... }\n value?: { ... }\n metadata?: { ... }\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: { ... }\n code?: { ... }\n type?: { ... }\n name?: { ... }\n categories?: { ... }\n feature?: { ... }\n cross_sellable_products?: { ... }\n product_images?: { ... }\n product_downloads?: { ... }\n price_options?: { ... }\n _availability_files?: { ... }\n _id?: { ... }\n _title?: { ... }\n _org_id?: { ... }\n _created_at?: { ... }\n _updated_at?: { ... }\n }\n } | {\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: { ... }\n frequency_unit?: { ... }\n name?: { ... }\n value?: { ... }\n metadata?: { ... }\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: { ... }\n code?: { ... }\n type?: { ... }\n name?: { ... }\n categories?: { ... }\n feature?: { ... }\n cross_sellable_products?: { ... }\n product_images?: { ... }\n product_downloads?: { ... }\n price_options?: { ... }\n _availability_files?: { ... }\n _id?: { ... }\n _title?: { ... }\n _org_id?: { ... }\n _created_at?: { ... }\n _updated_at?: { ... }\n }\n }>\n amount_subtotal?: number\n amount_total?: number\n unit_amount_gross?: number\n unit_amount_net?: number\n amount_tax?: number\n total_details?: {\n amount_shipping?: number\n amount_tax?: number\n breakdown?: {\n taxes?: { ... }\n recurrences?: { ... }\n cashbacks?: { ... }\n recurrencesByTax?: { ... }\n }\n }\n currency?: string\n redeemed_promos?: Array<{\n code: string\n coupons: Array<{\n _id: { ... }\n _title: { ... }\n _org: { ... }\n _schema: { ... }\n _tags?: { ... }\n // ...\n}\n```\n\n### `PromoCodeValidationResponse`\n\nThe result from the validation of a set of promo codes.\n\n```ts\ntype PromoCodeValidationResponse = {\n matched_coupons?: Array<{\n _id: string // uuid\n _title: string\n _org: string\n _schema: "coupon"\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n name: string\n description?: string\n type: "fixed" | "percentage"\n category: "discount" | "cashback"\n percentage_value?: string\n fixed_value?: number\n fixed_value_decimal?: string\n fixed_value_currency?: string\n cashback_period?: "0" | "12"\n active?: boolean\n requires_promo_code?: boolean\n }>\n}\n```\n\n### `PricingDetailsResponse`\n\nThe result from the calculation of a set of price items.\n\n```ts\ntype PricingDetailsResponse = {\n items?: Array<{\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: { ... }\n frequency_unit?: { ... }\n name?: { ... }\n value?: { ... }\n metadata?: { ... }\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: { ... }\n code?: { ... }\n type?: { ... }\n name?: { ... }\n categories?: { ... }\n feature?: { ... }\n cross_sellable_products?: { ... }\n product_images?: { ... }\n product_downloads?: { ... }\n price_options?: { ... }\n _availability_files?: { ... }\n _id?: { ... }\n _title?: { ... }\n _org_id?: { ... }\n _created_at?: { ... }\n _updated_at?: { ... }\n }\n } | {\n metadata?: Array<{\n key?: { ... }\n value?: { ... }\n }>\n quantity?: number\n product_id?: string\n price_id?: string\n description?: string\n product_description?: string\n product_name?: string\n price_mappings?: Array<{\n price_id?: { ... }\n frequency_unit?: { ... }\n name?: { ... }\n value?: { ... }\n metadata?: { ... }\n }>\n is_tax_inclusive?: boolean\n _product?: {\n description?: { ... }\n code?: { ... }\n type?: { ... }\n name?: { ... }\n categories?: { ... }\n feature?: { ... }\n cross_sellable_products?: { ... }\n product_images?: { ... }\n product_downloads?: { ... }\n price_options?: { ... }\n _availability_files?: { ... }\n _id?: { ... }\n _title?: { ... }\n _org_id?: { ... }\n _created_at?: { ... }\n _updated_at?: { ... }\n }\n }>\n amount_subtotal?: number\n amount_total?: number\n unit_amount_gross?: number\n unit_amount_net?: number\n amount_tax?: number\n total_details?: {\n amount_shipping?: number\n amount_tax?: number\n breakdown?: {\n taxes?: { ... }\n recurrences?: { ... }\n cashbacks?: { ... }\n recurrencesByTax?: { ... }\n }\n }\n currency?: string\n redeemed_promos?: Array<{\n code: string\n coupons: Array<{\n _id: { ... }\n _title: { ... }\n _org: { ... }\n _schema: { ... }\n _tags?: { ... }\n // ...\n}\n```\n\n### `BillingPeriod`\n\n```ts\ntype BillingPeriod = "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly"\n```\n\n### `CashbackPeriod`\n\nThe cashback period, for now it\'s limited to either 0 months or 12 months\n\n```ts\ntype CashbackPeriod = "0" | "12"\n```\n\n### `SalesTax`\n\n```ts\ntype SalesTax = "nontaxable" | "reduced" | "standard"\n```\n\n### `AvailabilityLocation`\n\n```ts\ntype AvailabilityLocation = {\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n}\n```\n\n### `AvailabilityFilters`\n\nAvailability filters dimensions\n\n```ts\ntype AvailabilityFilters = {\n location: {\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n }\n available_date?: string // date\n}\n```\n\n### `Address`\n\n```ts\ntype Address = {\n _tags?: string[]\n street?: string\n street_number?: string\n postal_code?: string\n city?: string\n country?: string\n additional_info?: string\n company_name?: string\n first_name?: string\n last_name?: string\n salutation?: string\n title?: string\n}\n```\n\n### `PaymentMethod`\n\nA PaymentMethod represent your customer\'s payment instruments.\n\n\n```ts\ntype PaymentMethod = {\n type?: string\n details?: Record<string, unknown>\n}\n```\n\n### `Customer`\n\n```ts\ntype Customer = {\n first_name?: string\n last_name?: string\n company_name?: string\n vat_id?: string\n email?: string\n phone?: string\n}\n```\n\n### `File`\n\n```ts\ntype File = {\n _id: string\n filename: string\n mime_type: string\n versions: Array<{\n s3ref: {\n bucket: { ... }\n key: { ... }\n }\n }>\n _schema: string\n _org: string\n _created_at: string // date-time\n _updated_at: string // date-time\n _title?: string\n $relation?: {\n entity_id?: string\n _tags?: string[]\n }\n}\n```\n\n### `EntityId`\n\n```ts\ntype EntityId = string // uuid\n```\n\n### `EntityItem`\n\n```ts\ntype EntityItem = {\n _id: string // uuid\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n\n### `EntityRelation`\n\n```ts\ntype EntityRelation = {\n entity_id?: string\n _tags?: string[]\n}\n```\n\n### `Tax`\n\nthe tax configuration\n\n```ts\ntype Tax = {\n _id: string // uuid\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n type: "VAT" | "GST" | "Custom"\n description?: string\n rate: number\n active?: boolean\n region?: string\n region_label?: string\n}\n```\n\n### `TaxBreakdownInfo`\n\n```ts\ntype TaxBreakdownInfo = {\n rate?: number\n type?: "VAT" | "GST" | "Custom"\n _id?: string\n}\n```\n\n### `BaseCouponCommon`\n\nThe shared properties for the coupon entity and coupon item entity\n\n```ts\ntype BaseCouponCommon = {\n _id: string // uuid\n _title: string\n _org: string\n _schema: "coupon"\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n name: string\n description?: string\n type: "fixed" | "percentage"\n category: "discount" | "cashback"\n percentage_value?: string\n fixed_value?: number\n fixed_value_decimal?: string\n fixed_value_currency?: string\n cashback_period?: "0" | "12"\n active?: boolean\n requires_promo_code?: boolean\n}\n```\n\n### `CouponWithoutPromoCodes`\n\nThe base for the coupon entity without promo codes\n\n```ts\ntype CouponWithoutPromoCodes = {\n _id: string // uuid\n _title: string\n _org: string\n _schema: "coupon"\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n name: string\n description?: string\n type: "fixed" | "percentage"\n category: "discount" | "cashback"\n percentage_value?: string\n fixed_value?: number\n fixed_value_decimal?: string\n fixed_value_currency?: string\n cashback_period?: "0" | "12"\n active?: boolean\n requires_promo_code?: boolean\n}\n```\n\n### `Coupon`\n\nThe coupon entity\n\n```ts\ntype Coupon = {\n _id: string // uuid\n _title: string\n _org: string\n _schema: "coupon"\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n name: string\n description?: string\n type: "fixed" | "percentage"\n category: "discount" | "cashback"\n percentage_value?: string\n fixed_value?: number\n fixed_value_decimal?: string\n fixed_value_currency?: string\n cashback_period?: "0" | "12"\n active?: boolean\n requires_promo_code?: boolean\n}\n```\n\n### `CouponItem`\n\n```ts\ntype CouponItem = {\n _id: string // uuid\n _title: string\n _org: string\n _schema: "coupon"\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n name: string\n description?: string\n type: "fixed" | "percentage"\n category: "discount" | "cashback"\n percentage_value?: string\n fixed_value?: number\n fixed_value_decimal?: string\n fixed_value_currency?: string\n cashback_period?: "0" | "12"\n active?: boolean\n requires_promo_code?: boolean\n}\n```\n\n### `PromoCode`\n\n```ts\ntype PromoCode = {\n id: string\n code: string\n has_usage_limit?: boolean\n usage_limit?: number\n}\n```\n\n### `RedeemedPromo`\n\n```ts\ntype RedeemedPromo = {\n code: string\n coupons: Array<{\n _id: string // uuid\n _title: string\n _org: string\n _schema: "coupon"\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n name: string\n description?: string\n type: "fixed" | "percentage"\n category: "discount" | "cashback"\n percentage_value?: string\n fixed_value?: number\n fixed_value_decimal?: string\n fixed_value_currency?: string\n cashback_period?: "0" | "12"\n active?: boolean\n requires_promo_code?: boolean\n }>\n}\n```\n\n### `PriceTier`\n\n```ts\ntype PriceTier = {\n up_to?: number\n flat_fee_amount?: number\n flat_fee_amount_decimal?: string\n unit_amount?: number\n unit_amount_decimal?: string\n display_mode?: "hidden" | "on_request"\n}\n```\n\n### `PriceTierDisplayMode`\n\n```ts\ntype PriceTierDisplayMode = "hidden" | "on_request"\n```\n\n### `PricingModel`\n\nDescribes how to compute the price per period. Either `per_unit`, `tiered_graduated` or `tiered_volume`.\n- `per_unit` indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity\n- `tiered_graduated` indicates that the unit pricing will be co\n\n```ts\ntype PricingModel = "per_unit" | "tiered_graduated" | "tiered_volume" | "tiered_flatfee" | "dynamic_tariff" | "external_getag"\n```\n\n### `MarkupPricingModel`\n\nDescribes how to compute the markup per period. Either `per_unit`, `tiered_volume` or `tiered_flatfee`.\n- `per_unit` indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity\n- `tiered_volume` indicates that the unit pricing will be comput\n\n```ts\ntype MarkupPricingModel = "per_unit" | "tiered_volume" | "tiered_flatfee"\n```\n\n### `TypeGetAg`\n\n```ts\ntype TypeGetAg = "base_price" | "work_price"\n```\n\n### `TariffTypeGetAg`\n\n```ts\ntype TariffTypeGetAg = "HT" | "NT"\n```\n\n### `ConsumptionTypeGetAg`\n\n```ts\ntype ConsumptionTypeGetAg = "household" | "heating_pump" | "night_storage_heating" | "night_storage_heating_common_meter"\n```\n\n### `ProductCategory`\n\n```ts\ntype ProductCategory = "power" | "gas"\n```\n\n### `PriceGetAg`\n\n```ts\ntype PriceGetAg = {\n category: "power" | "gas"\n markup_pricing_model?: "per_unit" | "tiered_volume" | "tiered_flatfee"\n type?: "base_price" | "work_price"\n tariff_type?: "HT" | "NT"\n consumption_type?: "household" | "heating_pump" | "night_storage_heating" | "night_storage_heating_common_meter"\n concession_type?: "standard" | "special"\n meter_type?: "classic" | "smart" | "digital"\n markup_tiers?: Array<{\n up_to?: number\n flat_fee_amount?: number\n flat_fee_amount_decimal?: string\n unit_amount?: number\n unit_amount_decimal?: string\n display_mode?: "hidden" | "on_request"\n }>\n markup_amount: number\n markup_amount_decimal: string\n markup_amount_net?: number\n markup_amount_net_decimal?: string\n markup_amount_gross?: number\n markup_amount_gross_decimal?: string\n markup_total_amount_net?: number\n markup_total_amount_net_decimal?: string\n markup_total_amount_gross?: number\n markup_total_amount_gross_decimal?: string\n additional_markups_enabled?: boolean\n additional_markups?: Record<string, {\n amount_decimal: string\n amount: number\n amount_net?: number\n amount_net_decimal?: string\n amount_gross?: number\n amount_gross_decimal?: string\n }>\n unit_amount_gross: number\n unit_amount_gross_decimal?: string\n unit_amount_net: number\n unit_amount_net_decimal?: string\n}\n```\n\n### `PriceDynamicTariff`\n\n```ts\ntype PriceDynamicTariff = {\n mode: "day_ahead_market" | "manual"\n interval?: "hourly" | "monthly_average"\n average_price: number\n average_price_decimal: string\n markup_amount?: number\n markup_amount_decimal?: string\n markup_amount_net?: number\n markup_amount_net_decimal?: string\n markup_amount_gross?: number\n markup_amount_gross_decimal?: string\n unit_amount_net?: number\n unit_amount_net_decimal?: string\n unit_amount_gross?: number\n unit_amount_gross_decimal?: string\n}\n```\n\n### `TierDetails`\n\n```ts\ntype TierDetails = {\n quantity: number\n unit_amount: number\n unit_amount_gross: number\n unit_amount_net: number\n amount_total: number\n amount_subtotal: number\n amount_tax: number\n unit_amount_decimal: string\n}\n```\n\n### `SearchExternalCatalogParams`\n\n```ts\ntype SearchExternalCatalogParams = {\n context: {\n journey_id: string\n entity_id?: string\n journey_name: string\n journey_tags?: string[]\n journey_url_params?: Record<string, unknown>\n current_step_name: string\n current_block_name: string\n steps_data: Array<{\n step_name: { ... }\n step_index: { ... }\n blocks: { ... }\n }>\n }\n}\n```\n\n### `ExternalCatalogRequest`\n\nThe request payload for the external catalog service.\n\n```ts\ntype ExternalCatalogRequest = {\n config?: {\n appId: string\n componentId: string\n hookId?: string\n }\n}\n```\n\n### `ExternalCatalogConfigurationRequest`\n\nThe request payload for the external catalog configuration service.\n\n```ts\ntype ExternalCatalogConfigurationRequest = {\n config?: {\n appId: string\n componentId: string\n hookId?: string\n }\n}\n```\n\n### `ExternalCatalogJourneyRequest`\n\nThe request payload for the external catalog service with a journey context.\n\n```ts\ntype ExternalCatalogJourneyRequest = {\n origin: "journey"\n context: {\n journey_id: string\n entity_id?: string\n journey_name: string\n journey_tags?: string[]\n journey_url_params?: Record<string, unknown>\n current_step_name: string\n current_block_name: string\n steps_data: Array<{\n step_name: { ... }\n step_index: { ... }\n blocks: { ... }\n }>\n }\n}\n```\n\n### `ExternalCatalogPortalRequest`\n\nThe request payload for the external catalog service with a portal context.\n\n```ts\ntype ExternalCatalogPortalRequest = {\n origin: "portal"\n context: {\n contract: Record<string, unknown>\n contact: Record<string, unknown>\n availability_address?: {\n postal_code?: { ... }\n city?: { ... }\n street?: { ... }\n street_number?: { ... }\n journey_target_block?: { ... }\n }\n variable_inputs?: Array<{\n value?: { ... }\n unit?: { ... }\n frequency_unit?: { ... }\n journey_target_block?: { ... }\n }>\n }\n}\n```\n\n### `ExternalCatalogCustomRequest`\n\nThe request payload for the external catalog service with a custom context. E.g. for requests from the Portal.\n\n```ts\ntype ExternalCatalogCustomRequest = {\n origin: "custom"\n context: Record<string, unknown>\n}\n```\n\n### `CustomContext`\n\nA custom context object. E.g. for Portal context.\n\n```ts\ntype CustomContext = Record<string, unknown>\n```\n\n### `JourneyContext`\n\n```ts\ntype JourneyContext = {\n journey_id: string\n entity_id?: string\n journey_name: string\n journey_tags?: string[]\n journey_url_params?: Record<string, unknown>\n current_step_name: string\n current_block_name: string\n steps_data: Array<{\n step_name: string\n step_index: number\n blocks: Record<string, unknown>\n }>\n}\n```\n\n### `PortalContext`\n\n```ts\ntype PortalContext = {\n contract: Record<string, unknown>\n contact: Record<string, unknown>\n availability_address?: {\n postal_code?: string\n city?: string\n street?: string\n street_number?: string\n journey_target_block?: string\n }\n variable_inputs?: Array<{\n value?: number\n unit?: string\n frequency_unit?: "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time"\n journey_target_block?: string\n }>\n}\n```\n\n### `SearchExternalCatalogResult`\n\n```ts\ntype SearchExternalCatalogResult = {\n hits: number\n results: Array<{\n pricing_details: {\n items?: { ... }\n amount_subtotal?: { ... }\n amount_total?: { ... }\n unit_amount_gross?: { ... }\n unit_amount_net?: { ... }\n amount_tax?: { ... }\n total_details?: { ... }\n currency?: { ... }\n redeemed_promos?: { ... }\n }\n _meta: {\n signature: { ... }\n timestamp: { ... }\n }\n }>\n}\n```\n\n### `SearchExternalCatalogRecommendationsResult`\n\n```ts\ntype SearchExternalCatalogRecommendationsResult = {\n source: {\n pricing_details: {\n items?: { ... }\n amount_subtotal?: { ... }\n amount_total?: { ... }\n unit_amount_gross?: { ... }\n unit_amount_net?: { ... }\n amount_tax?: { ... }\n total_details?: { ... }\n currency?: { ... }\n redeemed_promos?: { ... }\n }\n _meta: {\n signature: { ... }\n timestamp: { ... }\n }\n }\n offers: Array<{\n pricing_details: {\n items?: { ... }\n amount_subtotal?: { ... }\n amount_total?: { ... }\n unit_amount_gross?: { ... }\n unit_amount_net?: { ... }\n amount_tax?: { ... }\n total_details?: { ... }\n currency?: { ... }\n redeemed_promos?: { ... }\n }\n _meta: {\n signature: { ... }\n timestamp: { ... }\n }\n }>\n}\n```\n\n### `ExternalCatalogItem`\n\nAn external product & price information (already computed) from an external catalog.\n\n```ts\ntype ExternalCatalogItem = {\n pricing_details: {\n items?: Array<{\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n } | {\n metadata?: { ... }\n quantity?: { ... }\n product_id?: { ... }\n price_id?: { ... }\n description?: { ... }\n product_description?: { ... }\n product_name?: { ... }\n price_mappings?: { ... }\n is_tax_inclusive?: { ... }\n _product?: { ... }\n }>\n amount_subtotal?: number\n amount_total?: number\n unit_amount_gross?: number\n unit_amount_net?: number\n amount_tax?: number\n total_details?: {\n amount_shipping?: { ... }\n amount_tax?: { ... }\n breakdown?: { ... }\n }\n currency?: string\n redeemed_promos?: Array<{\n code: { ... }\n coupons: { ... }\n }>\n }\n _meta: {\n signature: string\n timestamp: number\n }\n}\n```\n\n### `ProductRecommendationSearch`\n\nProduct recommendations request payload\n\n```ts\ntype ProductRecommendationSearch = {\n product_recommendation_ids?: string[]\n catalog_item?: {\n product_id?: string\n price_id?: string\n }\n contract_id?: string\n filters?: {\n location: {\n street?: { ... }\n street_number?: { ... }\n postal_code?: { ... }\n city?: { ... }\n country?: { ... }\n }\n available_date?: string // date\n }\n}\n```\n\n### `ProductRecommendationResponse`\n\nProduct recommendations request payload\n\n```ts\ntype ProductRecommendationResponse = {\n hits: number\n results: Array<{\n _id: string // uuid\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n }>\n}\n```\n\n### `Offer`\n\n```ts\ntype Offer = {\n target_id?: string\n items?: Array<{\n price_id: string\n product_id: string\n }>\n}\n```\n\n### `ProductRecommendation`\n\n```ts\ntype ProductRecommendation = {\n _id: string // uuid\n _title: string\n _org: string\n _schema: string\n _tags?: string[]\n _created_at: string // date-time\n _updated_at: string // date-time\n}\n```\n';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
exports.default = pricing_default;
|