diff --git a/.speakeasy/logs/changes/changes.html b/.speakeasy/logs/changes/changes.html index 584253c1..a2eb06ad 100644 --- a/.speakeasy/logs/changes/changes.html +++ b/.speakeasy/logs/changes/changes.html @@ -4,7 +4,7 @@ - SDK Changelog - python + SDK Changelog - typescript -

Python SDK Changes:

+

Typescript SDK Changes:

\ No newline at end of file diff --git a/.speakeasy/logs/changes/changes.md b/.speakeasy/logs/changes/changes.md index e91221f7..67bacef0 100644 --- a/.speakeasy/logs/changes/changes.md +++ b/.speakeasy/logs/changes/changes.md @@ -1,18 +1,18 @@ -## Python SDK Changes: +## Typescript SDK Changes: * `outpost.events.list()`: `request` **Changed** (Breaking ⚠️) - `id` **Added** - - `tenant_id` **Changed** (Breaking ⚠️) + - `tenantId` **Changed** (Breaking ⚠️) - `time[gt]` **Added** - `time[lt]` **Added** * `outpost.attempts.list()`: `request` **Changed** (Breaking ⚠️) - - `destination_id` **Changed** (Breaking ⚠️) - - `event_id` **Changed** (Breaking ⚠️) - - `tenant_id` **Changed** (Breaking ⚠️) + - `destinationId` **Changed** (Breaking ⚠️) + - `eventId` **Changed** (Breaking ⚠️) + - `tenantId` **Changed** (Breaking ⚠️) - `time[gt]` **Added** - `time[lt]` **Added** -* `outpost.destinations.list_attempts()`: `request` **Changed** (Breaking ⚠️) - - `event_id` **Changed** (Breaking ⚠️) +* `outpost.destinations.listAttempts()`: `request` **Changed** (Breaking ⚠️) + - `eventId` **Changed** (Breaking ⚠️) - `time[gt]` **Added** - `time[lt]` **Added** * `outpost.tenants.list()`: **Added** -* `outpost.tenants.list_tenants()`: **Removed** (Breaking ⚠️) +* `outpost.tenants.listTenants()`: **Removed** (Breaking ⚠️) diff --git a/.speakeasy/logs/changes/new.openapi.yaml b/.speakeasy/logs/changes/new.openapi.yaml index df1f9f5c..3554df3d 100644 --- a/.speakeasy/logs/changes/new.openapi.yaml +++ b/.speakeasy/logs/changes/new.openapi.yaml @@ -204,13 +204,11 @@ components: nullable: true description: Cursor for the next page of results. Null if no more results. example: "MTcwNDA2NzIwMA==" - x-speakeasy-name-override: "next_cursor" prev: type: string nullable: true description: Cursor for the previous page of results. Null if on first page. example: null - x-speakeasy-name-override: "prev_cursor" APIErrorResponse: type: object description: Standard error response format. @@ -2234,21 +2232,18 @@ paths: enum: [asc, desc] default: desc description: Sort direction. - x-speakeasy-name-override: "direction" - name: next in: query required: false schema: type: string description: Cursor for the next page of results. Mutually exclusive with `prev`. - x-speakeasy-name-override: "next_cursor" - name: prev in: query required: false schema: type: string description: Cursor for the previous page of results. Mutually exclusive with `next`. - x-speakeasy-name-override: "prev_cursor" responses: "200": description: List of tenants. @@ -2475,14 +2470,12 @@ paths: schema: type: string description: Cursor for next page of results. - x-speakeasy-name-override: "next_cursor" - name: prev in: query required: false schema: type: string description: Cursor for previous page of results. - x-speakeasy-name-override: "prev_cursor" - name: order_by in: query required: false @@ -2499,7 +2492,6 @@ paths: enum: [asc, desc] default: desc description: Sort direction. - x-speakeasy-name-override: "direction" responses: "200": description: A paginated list of events. @@ -2692,14 +2684,12 @@ paths: schema: type: string description: Cursor for next page of results. - x-speakeasy-name-override: "next_cursor" - name: prev in: query required: false schema: type: string description: Cursor for previous page of results. - x-speakeasy-name-override: "prev_cursor" - name: include in: query required: false @@ -2730,7 +2720,6 @@ paths: enum: [asc, desc] default: desc description: Sort direction. - x-speakeasy-name-override: "direction" responses: "200": description: A paginated list of attempts. @@ -3393,14 +3382,12 @@ paths: schema: type: string description: Cursor for next page of results. - x-speakeasy-name-override: "next_cursor" - name: prev in: query required: false schema: type: string description: Cursor for previous page of results. - x-speakeasy-name-override: "prev_cursor" - name: include in: query required: false @@ -3431,7 +3418,6 @@ paths: enum: [asc, desc] default: desc description: Sort direction. - x-speakeasy-name-override: "direction" responses: "200": description: A paginated list of attempts for the destination. diff --git a/.speakeasy/logs/changes/old.openapi.yaml b/.speakeasy/logs/changes/old.openapi.yaml index f1a9fa00..7f29c3eb 100644 --- a/.speakeasy/logs/changes/old.openapi.yaml +++ b/.speakeasy/logs/changes/old.openapi.yaml @@ -204,13 +204,11 @@ components: nullable: true description: Cursor for the next page of results. Null if no more results. example: "MTcwNDA2NzIwMA==" - x-speakeasy-name-override: "next_cursor" prev: type: string nullable: true description: Cursor for the previous page of results. Null if on first page. example: null - x-speakeasy-name-override: "prev_cursor" APIErrorResponse: type: object description: Standard error response format. @@ -2193,7 +2191,6 @@ paths: schema: type: string description: Cursor for the next page of results. Mutually exclusive with `prev`. - x-speakeasy-name-override: "direction" - name: prev in: query required: false @@ -2243,18 +2240,6 @@ paths: example: "list tenant not supported" security: - BearerAuth: [] - x-speakeasy-pagination: - type: cursor - inputs: - - name: next - in: parameters - type: cursor - - name: limit - in: parameters - type: limit - outputs: - nextCursor: $.pagination.next - results: $.models /tenants/{tenant_id}: parameters: - name: tenant_id @@ -2393,14 +2378,12 @@ paths: schema: type: string description: Cursor for next page of results. - x-speakeasy-name-override: "next_cursor" - name: prev in: query required: false schema: type: string description: Cursor for previous page of results. - x-speakeasy-name-override: "prev_cursor" - name: order_by in: query required: false @@ -2417,7 +2400,6 @@ paths: enum: [asc, desc] default: desc description: Sort direction. - x-speakeasy-name-override: "direction" responses: "200": description: A paginated list of events. @@ -2454,18 +2436,6 @@ paths: x-speakeasy-name-override: list security: - BearerAuth: [] - x-speakeasy-pagination: - type: cursor - inputs: - - name: next - in: parameters - type: cursor - - name: limit - in: parameters - type: limit - outputs: - nextCursor: $.pagination.next - results: $.models /events/{event_id}: parameters: - name: event_id @@ -2581,14 +2551,12 @@ paths: schema: type: string description: Cursor for next page of results. - x-speakeasy-name-override: "next_cursor" - name: prev in: query required: false schema: type: string description: Cursor for previous page of results. - x-speakeasy-name-override: "prev_cursor" - name: include in: query required: false @@ -2619,7 +2587,6 @@ paths: enum: [asc, desc] default: desc description: Sort direction. - x-speakeasy-name-override: "direction" responses: "200": description: A paginated list of attempts. @@ -2681,18 +2648,6 @@ paths: x-speakeasy-name-override: list security: - BearerAuth: [] - x-speakeasy-pagination: - type: cursor - inputs: - - name: next - in: parameters - type: cursor - - name: limit - in: parameters - type: limit - outputs: - nextCursor: $.pagination.next - results: $.models /attempts/{attempt_id}: parameters: - name: attempt_id @@ -3264,14 +3219,12 @@ paths: schema: type: string description: Cursor for next page of results. - x-speakeasy-name-override: "next_cursor" - name: prev in: query required: false schema: type: string description: Cursor for previous page of results. - x-speakeasy-name-override: "prev_cursor" - name: include in: query required: false @@ -3302,7 +3255,6 @@ paths: enum: [asc, desc] default: desc description: Sort direction. - x-speakeasy-name-override: "direction" responses: "200": description: A paginated list of attempts for the destination. @@ -3341,18 +3293,6 @@ paths: "500": $ref: "#/components/responses/InternalServerError" x-speakeasy-name-override: listAttempts - x-speakeasy-pagination: - type: cursor - inputs: - - name: next - in: parameters - type: cursor - - name: limit - in: parameters - type: limit - outputs: - nextCursor: $.pagination.next - results: $.models /tenants/{tenant_id}/destinations/{destination_id}/attempts/{attempt_id}: parameters: - name: tenant_id diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 577a6a14..83e892e7 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -2,8 +2,8 @@ speakeasyVersion: 1.753.0 sources: Outpost API: sourceNamespace: outpost-api - sourceRevisionDigest: sha256:837c1ec11841961c17673ee40729959fce25fb87c9ca09f822e2d88805b5556a - sourceBlobDigest: sha256:0210b5211be69672b9fdb4ed35188fd778a0fc3fad0a7f426d2f0f7d0fb86067 + sourceRevisionDigest: sha256:b1e2dba09e5e318190102cf66ef746c9b9237f007a07e7940c34c96745a45cb5 + sourceBlobDigest: sha256:c51e0351a80c46eb40615e1f6c0de9bea56829a4a36c2b1c4ed4d1211817e65c tags: - latest - 0.0.1 @@ -39,10 +39,10 @@ targets: outpost-ts: source: Outpost API sourceNamespace: outpost-api - sourceRevisionDigest: sha256:837c1ec11841961c17673ee40729959fce25fb87c9ca09f822e2d88805b5556a - sourceBlobDigest: sha256:0210b5211be69672b9fdb4ed35188fd778a0fc3fad0a7f426d2f0f7d0fb86067 + sourceRevisionDigest: sha256:b1e2dba09e5e318190102cf66ef746c9b9237f007a07e7940c34c96745a45cb5 + sourceBlobDigest: sha256:c51e0351a80c46eb40615e1f6c0de9bea56829a4a36c2b1c4ed4d1211817e65c codeSamplesNamespace: outpost-api-typescript-code-samples - codeSamplesRevisionDigest: sha256:8815a2efc3e22c8d9f31523a06aa4177ae7f3be6416c8fcc7547a21945621fae + codeSamplesRevisionDigest: sha256:b7454f1861c516ebe7dea8dbd7aa3ae1c39f63d274909ea6382e6cada2c3c4cc workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/sdks/outpost-typescript/.speakeasy/gen.lock b/sdks/outpost-typescript/.speakeasy/gen.lock index 0520caa4..da523ae2 100644 --- a/sdks/outpost-typescript/.speakeasy/gen.lock +++ b/sdks/outpost-typescript/.speakeasy/gen.lock @@ -1,26 +1,26 @@ lockVersion: 2.0.0 id: edb58086-83b9-45a3-9095-52bf57a11009 management: - docChecksum: 4d871f0d5196e38d0c8198b92566a660 + docChecksum: 4086cfdca0e70cc5728dcd818990e3cf docVersion: 0.0.1 - speakeasyVersion: 1.741.7 - generationVersion: 2.849.10 - releaseVersion: 0.8.0 - configChecksum: b66823fa0f4e59194c1942c9e8854d3d + speakeasyVersion: 1.753.0 + generationVersion: 2.862.0 + releaseVersion: 0.9.0 + configChecksum: 2ce9eed1528e38a6141364c3ae2d1006 repoURL: https://github.com/hookdeck/outpost.git repoSubDirectory: sdks/outpost-typescript installationURL: https://github.com/hookdeck/outpost published: true persistentEdits: - generation_id: 12f83f54-6201-4ec8-a4cf-14033b55c05a - pristine_commit_hash: c5f8e36d04add08c3918c7c4ba0e2ea1fe826b85 - pristine_tree_hash: 817181424e45cc414d05eaabead97020ddb37b84 + generation_id: dfc0d12e-b025-47fb-bef8-faea6c8f2c0e + pristine_commit_hash: d1e990787cf87bc3abe7f71d120bc3eea867a248 + pristine_tree_hash: 4268dea7985a2d7d8581c7ea98722a0e22ad9f88 features: typescript: additionalDependencies: 0.1.0 additionalProperties: 0.1.3 constsAndDefaults: 0.1.14 - core: 3.26.41 + core: 3.26.42 defaultEnabledRetries: 0.1.0 enumUnions: 0.1.0 envVarSecurityUsage: 0.1.2 @@ -32,6 +32,7 @@ features: mcpServer: 0.9.4 nameOverrides: 2.81.4 nullables: 0.1.1 + pagination: 2.83.2 responseFormat: 0.3.0 retries: 2.83.0 sdkHooks: 0.4.0 @@ -379,8 +380,8 @@ trackedFiles: pristine_git_object: 123c22bcd21f1876a85445de32481e5217925806 docs/models/operations/createtenantdestinationrequest.md: id: 5c201a2c92c3 - last_write_checksum: sha1:1af1ca14b039ae3a4a28d23b5017ce666476f517 - pristine_git_object: ed4efc0e706a36502f664d0f4651f28f907ec943 + last_write_checksum: sha1:d32eb6591b9921c8f1411b00080f7d02f7c867c0 + pristine_git_object: 485ef72f2d3d675107e8bf5aa211bff00445e3c6 docs/models/operations/deletetenantdestinationrequest.md: id: 4bf9f875c288 last_write_checksum: sha1:9b4758314f9672c11b50d0b7a75b1f5fe4073d0b @@ -389,6 +390,10 @@ trackedFiles: id: b983367702a8 last_write_checksum: sha1:e11c43e9e02180641655cabfc1aeed8553cd87c0 pristine_git_object: f24bb7e82bab673c3f4f6c2273c63185b92ae6ad + docs/models/operations/destinationid.md: + id: e575ae5f085b + last_write_checksum: sha1:a466a541ee6bf0de797bed0dbbe95daea8d41f02 + pristine_git_object: 437d58ebb34659debe23d5a7f2dbb10c90300079 docs/models/operations/disabletenantdestinationrequest.md: id: f1eba2d52881 last_write_checksum: sha1:3e4862387df93843068b2ff83fc9f0328f4df44e @@ -399,12 +404,12 @@ trackedFiles: pristine_git_object: e972cb0b136831ddb65e646dee8a092cf65a9eef docs/models/operations/getattemptinclude.md: id: 899622c94b52 - last_write_checksum: sha1:9d3a80fe39c93ea067342aede664d533ab33f187 - pristine_git_object: e5fd20b3454897624725100028b89f1093ebe121 + last_write_checksum: sha1:2885203eaf0647cbf61024cba59a9a9f133b4e17 + pristine_git_object: ef32d450eda3cffe828fd3ef719209b78aa02498 docs/models/operations/getattemptrequest.md: id: 58916c0b18d3 - last_write_checksum: sha1:077069bcab3cb9aa889f3cbdfa53457828e68fac - pristine_git_object: d7efbc1ac1fb0a53e04b303afe9ca9775877cb25 + last_write_checksum: sha1:ec397658b11aacff284dae3fdec27ca8b8ace965 + pristine_git_object: 3b7592b28a3fd90b2dc673671f47faeb6cd1f715 docs/models/operations/getdestinationtypeschemarequest.md: id: 28942fdcd1d3 last_write_checksum: sha1:06191edcf74f20f979c370fb99c4e34d38faa78a @@ -419,12 +424,12 @@ trackedFiles: pristine_git_object: 3b5424ecc53ae234e768bf6efbe4eb3d12fa6049 docs/models/operations/gettenantdestinationattemptinclude.md: id: 6a2a3c5c804d - last_write_checksum: sha1:090297acf2b2569dc41267bef49cb52fb2f70f2e - pristine_git_object: 72a9fb0b7cabe0043ad35f6a7d90e2a85030f0cd + last_write_checksum: sha1:d89b283b09a40e3b8ba15bb591b29e4e2a6000db + pristine_git_object: e8d56ea6489d119a5733e9d0dba8c310079b5da3 docs/models/operations/gettenantdestinationattemptrequest.md: id: ba08fde2adc7 - last_write_checksum: sha1:e7f626c521026e6c40c3273cab205af622d3b9ba - pristine_git_object: f896f822b931d4103a0d871b767a519b2f74dede + last_write_checksum: sha1:b32b4f8c22541dcf969993b0c1eb71294f435d3a + pristine_git_object: f483c1c0c946a21ea063748a992762b59679a067 docs/models/operations/gettenantdestinationrequest.md: id: f6dbaa55f398 last_write_checksum: sha1:d639d8c187355f5f8b7848f5c5a0b9923d997179 @@ -457,118 +462,158 @@ trackedFiles: id: dda592e84dd0 last_write_checksum: sha1:ce2866a86a4737c7553558da51278708df7ca28e pristine_git_object: e6f1b308ccb519eb80b9ebc36fca4c700aa26d0e + docs/models/operations/listattemptseventid.md: + id: 1fe5026628b0 + last_write_checksum: sha1:373cbe2f4651de9754ecddefe04b770dc56b01e2 + pristine_git_object: fb3b0cf62de753df9cd1cc288b2adee8194a6d4c docs/models/operations/listattemptsinclude.md: id: cc99e9b38c4b - last_write_checksum: sha1:62543bfab5889ba5322ab96064d8845e5343c6a6 - pristine_git_object: 3c0ef8ac69c42c6e72f18b40b03838c12df0fea5 + last_write_checksum: sha1:3295631cb5078b83a26f6be705bb33a57d8af678 + pristine_git_object: 96a30565bfe4310371f346fcf87b25b3f5f4f80e docs/models/operations/listattemptsorderby.md: id: 8aa3505e4088 last_write_checksum: sha1:31da0d12674bc1e8a001976c0e4778a6efa4ee1e pristine_git_object: 6f854abb0932e74ae27a3426feb4b65a5485c288 docs/models/operations/listattemptsrequest.md: id: c664c21b68cc - last_write_checksum: sha1:9a67ad793c59a49e78354fe307e3eecb047c8de4 - pristine_git_object: 4ac8ecf7a86fe58ba13c2627a29afb6d5b6a4e48 + last_write_checksum: sha1:a1c0b8cbb5bf3d4ad9269ef2699addb7e5b92cd8 + pristine_git_object: b1ee918f7ef039aad8216e957915aafe4dc7609a + docs/models/operations/listattemptsresponse.md: + id: fa9c919a289b + last_write_checksum: sha1:6de222864d4dc91ff28e0111a4fde46ab789997f + pristine_git_object: 1602725fdd33ab66e158829d50065e9de7d56fe4 docs/models/operations/listattemptsstatus.md: id: 2135342ab1bc last_write_checksum: sha1:7b19c7107e6a0031cb3e9f642d5644633c469a10 pristine_git_object: d6a620877e979368f75339b6e143b7927778b088 + docs/models/operations/listattemptstenantid.md: + id: 73fb78fe8149 + last_write_checksum: sha1:30c3b9e543a1b389e2f5362995ad74882ce70fbe + pristine_git_object: e3cf12aaa7c344b11863cd242b4061bcbdada9f5 docs/models/operations/listattemptstopic.md: id: f2821d472cd9 - last_write_checksum: sha1:6ad24b065ea250ec394fab9bd879226b96c7ced6 - pristine_git_object: 03f6b0969ce40da2558f4889cb8c25b749535366 + last_write_checksum: sha1:7757c204486b83748819073a61d8327fc032df0d + pristine_git_object: f80277eae251a82918f9e9eb6309727fc5cc67d3 docs/models/operations/listeventsdir.md: id: 64c3b2e5265d last_write_checksum: sha1:86ad84ca4ba40f04bee0914e920250533729bf97 pristine_git_object: aff616b259379fa807d47a6ebc510b2a5d6879bd + docs/models/operations/listeventsid.md: + id: cd0e9734be19 + last_write_checksum: sha1:2e16df0a7e0e64e14d178ebc96b1c15e7cc1e4fc + pristine_git_object: ceb29ad133311c7fe3d6aa938ec26b597295b71a docs/models/operations/listeventsorderby.md: id: 26a2c25f93c9 last_write_checksum: sha1:998c7fcdacde1c070f6f5344c87beb414cf49f3c pristine_git_object: 6bca4302436902cb7eeb8ac8464055b459e9f157 docs/models/operations/listeventsrequest.md: id: 4c63e4d672e2 - last_write_checksum: sha1:2088f14a6c576f00090e90687dfe70429a531e9e - pristine_git_object: bb664d71478c50fe49d43d3ec075a246133bbfa7 + last_write_checksum: sha1:c710d40d7b97901b2a61258f0de1f74c95223b2f + pristine_git_object: 3a660702c5afdee12e1fff3f9ddc793b63715ce1 + docs/models/operations/listeventsresponse.md: + id: 4ce22aaeca78 + last_write_checksum: sha1:2719edafb187dc274ab31f3ca295d081007a0ecc + pristine_git_object: 2ec02c3c70223848c5b913c9d7570d7819606f2b + docs/models/operations/listeventstenantid.md: + id: f211d204834a + last_write_checksum: sha1:03b5c2b4923b92a00a8fdedf16a819b2f4b0cae8 + pristine_git_object: d60598f42a2d8a639b13654e4e0371cf55b9ecc4 docs/models/operations/listeventstopic.md: id: 181dd268f9dc - last_write_checksum: sha1:2f52cf6d76459acc85d6f44438662f416d19287c - pristine_git_object: 4c8fc324a37c6d1e9b1e1b9b2b27356dce683db2 + last_write_checksum: sha1:680a20091cbb2f42cfcfa38240b1dcde12acf84d + pristine_git_object: 1bfc5c08d19c37e09cdc790c56b01d9023e47483 docs/models/operations/listtenantdestinationattemptsdir.md: id: 34ec44a1d6ee last_write_checksum: sha1:6abbfebcb5abfd4058b731701171024682377890 pristine_git_object: 8cdd425c18babea9ddc9fd325a7c10761ab4f95e + docs/models/operations/listtenantdestinationattemptseventid.md: + id: be83aa135148 + last_write_checksum: sha1:2ee47239b03cdae2c4776e4d052f5f446e8c19d8 + pristine_git_object: 02b6f41119ae7cb4970aec3575bb6f66bba30e55 docs/models/operations/listtenantdestinationattemptsinclude.md: id: 2540a66e35b0 - last_write_checksum: sha1:4ada516f11ab72b1175483d2890ee60f9371c522 - pristine_git_object: 166af08f6dde1b127b98fe78faaca5608b0281fa + last_write_checksum: sha1:e57102df7d271cb671388b475cb6905b0a3c372c + pristine_git_object: 174760083b8cf77b7887501fe19205abab8452a2 docs/models/operations/listtenantdestinationattemptsorderby.md: id: 528d7d98d88e last_write_checksum: sha1:a9662882f8af09d677d6eb4eec24866fc52fbef8 pristine_git_object: a3f566ce8a637215c28dd7e62ed285def9f4d0b6 docs/models/operations/listtenantdestinationattemptsrequest.md: id: 341955bbcb29 - last_write_checksum: sha1:a74436c881e890e1410918d5da0708a2403c75c7 - pristine_git_object: e99b3ab146b19de6599f5795ca0d5d4bb49acde5 + last_write_checksum: sha1:dd2925f5b142f66b5f16f23d1b1882669a8991a6 + pristine_git_object: db6a29ce0a07b4e687903abb83cc02f502f93960 + docs/models/operations/listtenantdestinationattemptsresponse.md: + id: 2e6018891322 + last_write_checksum: sha1:d66bcbe6d9da68b36d377d927bdea3a45898e977 + pristine_git_object: b505a41dee0a3e9c2fbd63abc64838f733a231b1 docs/models/operations/listtenantdestinationattemptsstatus.md: id: 5185c1081587 last_write_checksum: sha1:8fbaab8110940bbd2a269bf878b373396f45748c pristine_git_object: be95d1852e082286300fe059b7c5ae4b3d608986 docs/models/operations/listtenantdestinationattemptstopic.md: id: 3212865488ce - last_write_checksum: sha1:649a7f9837d911271836f5a248ff56c6d13551c9 - pristine_git_object: 47647d9ed6e27cc6792a0287f159a1815ee852f7 + last_write_checksum: sha1:49b9fb483066677a53e0876dcc1e7b7277f8e874 + pristine_git_object: 81ce4202daf4aa902ef64465cd4c0407c5bd3635 docs/models/operations/listtenantdestinationsrequest.md: id: 76b4ddfe6a6d - last_write_checksum: sha1:1ae5797bfa972eda61f0df2b81396aff4f1c4bde - pristine_git_object: 6a3e6a06f28edf4534c387a3283ecef67fc8d215 + last_write_checksum: sha1:a34ed1c5f8b455b5b860886cf09148ee270fcfb9 + pristine_git_object: c118dc972a8054422499ecede47d132e98ab8f47 docs/models/operations/listtenantdestinationstype.md: id: a20b115e8b0f - last_write_checksum: sha1:ee0e2f4705b97615c80ba1027aafd0265a7966c1 - pristine_git_object: 0c4cbc49831bb4b8580ab5ca51822a78d883686e + last_write_checksum: sha1:dddc7f88d16b6bdeccc8e193a209beecfe30ec06 + pristine_git_object: 85f94a008c6ed84376047160e761d090c991a113 docs/models/operations/listtenantsdir.md: id: 1c1e3cb1ad58 last_write_checksum: sha1:837b457e7f32118d383d7534f1796bb96f04cc5b pristine_git_object: d8ff66f940dab75431351b1619111701ab7552e4 + docs/models/operations/listtenantsid.md: + id: bb2f8aa2c380 + last_write_checksum: sha1:1dbc9a634e4acaf53d03d4f59121d2d2a8748817 + pristine_git_object: e95cf84979ee47f7395a6e4df1acfa10ef7c12d0 docs/models/operations/listtenantsrequest.md: id: f550d84e5a64 - last_write_checksum: sha1:120e004ff67fe2e050db4f367666bbdb1abe16f6 - pristine_git_object: 59dd8f9047acc2d9e784539a46a66255f8783e44 + last_write_checksum: sha1:8a54bfdedd3be67f50208d7be5d52f220574bad9 + pristine_git_object: bb65b2ff85ee82af22f41947c5feec52f432b543 + docs/models/operations/listtenantsresponse.md: + id: f9d4a4333302 + last_write_checksum: sha1:a52b3674b4f44cc8cceaaf4f3f6b6f5f8af54a09 + pristine_git_object: be81fa64e048db651384d6c6d0cab61863110c99 docs/models/operations/theme.md: id: 2f9a390ad334 last_write_checksum: sha1:677548ae53312176316b1d2a45f490bd0c008253 pristine_git_object: dfab6e11683545b7df748d81ef57321388cc6d5b docs/models/operations/topics.md: id: b18fd8c48c1d - last_write_checksum: sha1:b9a49d1da2c56271c8ef71d5261c1457d25736a6 - pristine_git_object: 9a806e112a7996a2b260909b07672b1eccb04c15 + last_write_checksum: sha1:4958f9636684dd98e20ce541b62fe067a665f5fc + pristine_git_object: ce47ee1051d9f24fe130b622e1289cc01d5389a4 docs/models/operations/updatetenantdestinationrequest.md: id: 3806f88d7729 - last_write_checksum: sha1:171cbec783c227b4457a52200ecd84802dc33d49 - pristine_git_object: 86854fcbda885b31fb78e3b168a85efd0a53a195 + last_write_checksum: sha1:b0a0e019302c12ae2a085c19fb41755cbe44bff3 + pristine_git_object: 8d796440be55c1832346cb29a707ff589af75272 docs/models/operations/updatetenantdestinationresponse.md: id: 7f18084651f9 last_write_checksum: sha1:30cac7fb7ac5b2bc772b254930b504e72c4cb83a pristine_git_object: aad89aa6d07c957193ed76994d78450ad0f3b6a1 docs/models/operations/upserttenantrequest.md: id: 7df83dab5d53 - last_write_checksum: sha1:69e54dde262050fd5364f75ece53239e381b6d27 - pristine_git_object: dedcefb4482c53beeb40422ba7191a23b62dd598 + last_write_checksum: sha1:58b4ced160b6c68ccafa790e2b9a4754e4952f30 + pristine_git_object: 3f776ff14ece2ee139361cbb1f239a7c2c42c806 docs/models/operations/workers.md: id: a10841a82928 last_write_checksum: sha1:1689184b3770a32bbbf752e741ac517d5a6fb418 pristine_git_object: b9c3c42e697df4c33f959d7dbc30b2188827055c docs/sdks/attempts/README.md: id: 41a6f5edd623 - last_write_checksum: sha1:225842e313bbb8427a899dd3cc4801b68b703534 - pristine_git_object: 2621758f7c854f0dc3bfa8aa8b74eea6907a79cb + last_write_checksum: sha1:5b5c2a048a7fd8aef345f012418c67077c921529 + pristine_git_object: 05f23f3a46c28f591ac91c9010916b75ba817c5b docs/sdks/destinations/README.md: id: e83d288899aa - last_write_checksum: sha1:ba6e50450bb4f5cfcdefbee7a957387535995e50 - pristine_git_object: d32681c373518c32426683a3b65f91a23cec7184 + last_write_checksum: sha1:134e78b4bde29457b964c576e56b02e13feaa669 + pristine_git_object: 10b742d05537e5ecc6e5ec93cf1f7a7c0216fa3c docs/sdks/events/README.md: id: cf45a4390b9b - last_write_checksum: sha1:11045bd482b5fea318c2f006845e7ec7e2cffb52 - pristine_git_object: ec517126d7c744b5b5535f80c4ba9e9dd4a827a0 + last_write_checksum: sha1:a9b6e5ed561176a5f414954a3aa0b6ee7719fdc9 + pristine_git_object: 8d1aebda6d983cf008c4f0ad561a3b31926a1ada docs/sdks/health/README.md: id: 5082c50d5e82 last_write_checksum: sha1:4d2fef0b17c2b3e3d660859f80051b64d711b260 @@ -583,8 +628,8 @@ trackedFiles: pristine_git_object: 64d5cb116073f0cf8ddc7806f9433cdca6c85a09 docs/sdks/tenants/README.md: id: 68a2b19779b5 - last_write_checksum: sha1:6d78b6a817e9afcb07b61fc399dbb18e5135eba8 - pristine_git_object: e5c4f96ea4902570a4d8478be7a2e04fcb49c8fa + last_write_checksum: sha1:6677c828e0e6448b29a37e2e02aa150ce5aca73f + pristine_git_object: ad61f4bf48171d023981261b2a942fb1be67142a docs/sdks/topics/README.md: id: db4aff1adac3 last_write_checksum: sha1:8d9a9d2163426ccc4ae92edc57a1e6860d94630a @@ -611,12 +656,12 @@ trackedFiles: pristine_git_object: 2ecc914dee96b672e4c966d02b66b72ad7d45435 jsr.json: id: 7f6ab7767282 - last_write_checksum: sha1:a84d6ae14d5c20e8accf07bd74e749b292001e74 - pristine_git_object: 7cb416a4f42637830e91de965efb841b645ed7a6 + last_write_checksum: sha1:f325d9e78109ff9d2a779ce241367e7ae6b4c850 + pristine_git_object: 4ac4612fd14ca5c34d1240956b9347dceee9060c package.json: id: 7030d0b2f71b - last_write_checksum: sha1:49942c06767af7dbff393dc1d634eea418cbce4c - pristine_git_object: 5225530483e5202ac6f8e19d60333ea8d3eafe03 + last_write_checksum: sha1:5e2e584dbde2a548ed0d917feeb9acdfb7a1b6c6 + pristine_git_object: 13926ac8d06ce3fb6ef8888f6aefa9809431b683 src/core.ts: id: f431fdbcd144 last_write_checksum: sha1:c858d8ea76a86c428e26943bf348319ba0a3c865 @@ -627,16 +672,16 @@ trackedFiles: pristine_git_object: 899f5e38a1216ca9e2ba1674d7af4901c95a448b src/funcs/attemptsList.ts: id: 05c308c98e04 - last_write_checksum: sha1:47334a81dc348f5ca69f21b2d3d858ffe52c179a - pristine_git_object: 90596dcf70fed267e5f2c54d1dd3c73cafdeb57e + last_write_checksum: sha1:89e1e5d69f7ee02777ee688401ff0cb28572de23 + pristine_git_object: ed62085f5d4ea43cc51e45624b10a3801326e957 src/funcs/attemptsRetry.ts: id: 3c2b9181138e last_write_checksum: sha1:066d07aa11966c6e5709be23f4e800327bc7b215 pristine_git_object: 7420c7c6c8746790de8fbffd82ba889427c78ea1 src/funcs/destinationsCreate.ts: id: bb26d96fe47c - last_write_checksum: sha1:e3820095916e0278e55d89066052e0ea1642055c - pristine_git_object: 2ad86f38a1913bb125777f2f02b49bc3ab34c750 + last_write_checksum: sha1:6377c0ccd72bc3dcc4c2e998aa79f176565fbbc9 + pristine_git_object: ff6af28867f38a37f308c7a2f7eb23bbde4f8ae0 src/funcs/destinationsDelete.ts: id: 95323805da0b last_write_checksum: sha1:43f9166035ec12d9ed16fadbd9e0c80d4be767c3 @@ -663,20 +708,20 @@ trackedFiles: pristine_git_object: 1a2e07919330a471caca66a7e68d52cb221375db src/funcs/destinationsListAttempts.ts: id: bb79602f1494 - last_write_checksum: sha1:240bc6c40b688217177d3ca71f8b39b68e818834 - pristine_git_object: 14623dd1007f19e5a3453e1261fc5678e15ac52a + last_write_checksum: sha1:bc3889e87f924e52b86d7773875b1f41db717f11 + pristine_git_object: c265d673a2f9bad7c18450129bb3253e2f834ec7 src/funcs/destinationsUpdate.ts: id: bf3a58acd260 - last_write_checksum: sha1:4a90acd5a191f5554f5c97d37671e4f2d8861851 - pristine_git_object: 43fae84eb1f7cbf2529966db112eeea13b0ec4c6 + last_write_checksum: sha1:c69d86705a8004ff3bede79ba7e512b70c49eacc + pristine_git_object: 0bb684aa7fb4477301b9ac87744c643f7f863471 src/funcs/eventsGet.ts: id: 5f1c128a8a40 last_write_checksum: sha1:4efb24b09c08cd4de812a718efbcd450280fdb83 pristine_git_object: 5effb084c2723b43181fed8d7cec0ebae2716303 src/funcs/eventsList.ts: id: 4522a8542985 - last_write_checksum: sha1:77df5a53e422a6025e92587560e2d36d58e735c8 - pristine_git_object: 0dd9e07555949826e32980156a03f2dd52725853 + last_write_checksum: sha1:432a68d42a236c6ab76c0cadd68c4a62e22c081a + pristine_git_object: 1a7753c43766c88993abcf3da44673181a2fa390 src/funcs/healthCheck.ts: id: c97d559e7f4c last_write_checksum: sha1:b4e79f2734e36285e512b58f322a1ebb402f934f @@ -709,14 +754,14 @@ trackedFiles: id: 93deaf80b1d2 last_write_checksum: sha1:1fad44bf97cff0f2e4022cd0acb3416d7a13d929 pristine_git_object: aee19fd0f8d688ac1f16a871d740468f271ceed7 - src/funcs/tenantsListTenants.ts: - id: 7a588593213f - last_write_checksum: sha1:c2450adb0140aba3b585a21b907c7e4105f75245 - pristine_git_object: 5fbc272bb1e88e686a28fa80d6a1a6ac7578132d + src/funcs/tenantsList.ts: + id: 6572ed5a146a + last_write_checksum: sha1:747a1b2628f10b722b15bd70d9613568c9000534 + pristine_git_object: 15f93aefdb8c3be4efae3de6d7f172cf7419c0d1 src/funcs/tenantsUpsert.ts: id: f6eb1c703ee6 - last_write_checksum: sha1:0fa1a6b6a8b21553b246d134c4dd02fdd7da4fef - pristine_git_object: a83beb5ad0a5bc42cf277a6bf27f9b49d7fc36a1 + last_write_checksum: sha1:5b2356b1d539d7032c0b0373399724877c032a0f + pristine_git_object: 03de88cbe6b34e30a4cf21f671ae244682fa06e5 src/funcs/topicsList.ts: id: eb5cfdbc739a last_write_checksum: sha1:d4644855a646edd148b5950a79dbae91d43aa2a3 @@ -743,8 +788,8 @@ trackedFiles: pristine_git_object: 0aebd8b0a4867e35cb3348fc52921c3c0b4725b7 src/lib/config.ts: id: 320761608fb3 - last_write_checksum: sha1:269cb6d1acdeea2e883a99b5acbeca510abf3f62 - pristine_git_object: ff2491418abff58ce5350c3f5c2a202e08b4f0f1 + last_write_checksum: sha1:557f5c93c4dd7356939e959e2a967497ec722afa + pristine_git_object: 2310cab28daf4412c0d9e6dc9120e8019994b5a8 src/lib/dlv.ts: id: b1988214835a last_write_checksum: sha1:1dd3e3fbb4550c4bf31f5ef997faff355d6f3250 @@ -823,8 +868,8 @@ trackedFiles: pristine_git_object: 0955a573c2ce989d63c737410ab8cc28706d9f74 src/mcp-server/mcp-server.ts: id: aabbc4ab07c1 - last_write_checksum: sha1:c88ec740d67153ebfe20076697110fa73173e138 - pristine_git_object: a7c3a332154d3eebf69358ac1de57e4a58ca1b5f + last_write_checksum: sha1:fbcaa184781c3dd48ce447cb2696df6ad5cbf400 + pristine_git_object: 3aa86b65daed8a0a1aa9240bd5c86c931649a145 src/mcp-server/prompts.ts: id: 26f3d73cbf31 last_write_checksum: sha1:3472c8babea2d3b44d3a61e42fbba471fbd936b7 @@ -839,8 +884,8 @@ trackedFiles: pristine_git_object: c25696d4c4f70e081fa5d87ad6891874c509a577 src/mcp-server/server.ts: id: 2784dd48e82a - last_write_checksum: sha1:76d7dc2343a543d92886b07366d942ded813ef0c - pristine_git_object: e4bf8288b0f0a0afda37a5363fa3469750cfb721 + last_write_checksum: sha1:822474b60753d1989d5c217b4a7a1ced2c414f81 + pristine_git_object: 60dc9c9348f742780e8199db7d3d27a725789a3b src/mcp-server/shared.ts: id: 074e80d4be1e last_write_checksum: sha1:d89576cea2bef3856b7fc3e65b868875528be042 @@ -855,16 +900,16 @@ trackedFiles: pristine_git_object: a7aca9243cea838c86b09835c394db3ff5cbddad src/mcp-server/tools/attemptsList.ts: id: f23017d5003d - last_write_checksum: sha1:9b1fa3901a918762ca442e09dfbcd6f0f4f1fc4b - pristine_git_object: 28c25c7c0a9cedd22359c3a286d1a9b11746e597 + last_write_checksum: sha1:a42b2454572a10737f7ddef36b4f2bc9e6ed3946 + pristine_git_object: 1f095fe9c3d2d714fa0f681f1bb8fbfe450b0ee9 src/mcp-server/tools/attemptsRetry.ts: id: f38f9c3cd810 last_write_checksum: sha1:cae748482c3c3dc2208e846d625d3b5c99bd0455 pristine_git_object: 9cdad7e7d410a01b416f2273731d447ef99fc328 src/mcp-server/tools/destinationsCreate.ts: id: 8b1bc5b2f16e - last_write_checksum: sha1:efc6891e7ac44842a1ea511336f7a8215357ef8e - pristine_git_object: f50919a8cc22323c2919af8ff6259dbb0cb52a95 + last_write_checksum: sha1:951b2100e8dc00e6770e410be7a9d96931980ecb + pristine_git_object: 153392d071db3463c5982c1634fd5a4ba3c06315 src/mcp-server/tools/destinationsDelete.ts: id: 606b9394f9ed last_write_checksum: sha1:e917e3d3eabd0193d0bbbe619e35954f5682dea0 @@ -891,20 +936,20 @@ trackedFiles: pristine_git_object: 28700f9e0380434a13ad2f15ff65d80ad41b4f68 src/mcp-server/tools/destinationsListAttempts.ts: id: 3421f7cec206 - last_write_checksum: sha1:d156d2de9b67f931b5be8ba3e682f18a0dc1ea10 - pristine_git_object: cb14f136f11a004e27ae4dfeac8fa05a9c1b67bf + last_write_checksum: sha1:756fb4ad9dd481cffce84dddf2a2972909ac12d3 + pristine_git_object: fb72cb92a48ce14667001718fbe21022b48afc42 src/mcp-server/tools/destinationsUpdate.ts: id: af33626c4345 - last_write_checksum: sha1:faadf0f6e3f6012fa636771fee67d82406d27137 - pristine_git_object: 8f2e6f357e169c8fd28ed6bf25cc112382cffab1 + last_write_checksum: sha1:3bebc61551e303ad58e5d18dedb579dd7389c0c7 + pristine_git_object: 709cbf4c99ca9cecb4bcd1040c3ab4acce1708fb src/mcp-server/tools/eventsGet.ts: id: 3aadad1f25b1 last_write_checksum: sha1:905318de7bd7ff916dd993b4048d9f4e1d097b29 pristine_git_object: 2e7d7ff845f8b12a2d70e249992c05b08cd3f80b src/mcp-server/tools/eventsList.ts: id: 1e923bcfb035 - last_write_checksum: sha1:eefde6b0aa585967f339d30f180bee9adcc286d1 - pristine_git_object: 3489f72aef2fabf8ba5606c9cb866052869c4cf2 + last_write_checksum: sha1:41c3cb6373f2a957dbcf46136fbe28a015665d49 + pristine_git_object: e1431052fb797930fc5b1701dea3c1b602fb1df4 src/mcp-server/tools/healthCheck.ts: id: aa7d6471a385 last_write_checksum: sha1:a3fbeaa1791cb33940d95e5709f55b295425794c @@ -937,14 +982,14 @@ trackedFiles: id: 76ccc93d52da last_write_checksum: sha1:a9db3be80c4652d77c122bb7b155cbb4c54c212a pristine_git_object: 1b37f8acae13d0e7091c523a2fac483e3a0caa09 - src/mcp-server/tools/tenantsListTenants.ts: - id: 44237630d9c4 - last_write_checksum: sha1:c0598ae06e611787a989a5d0c8ecfd7333c70553 - pristine_git_object: ea3fcb2f9bb21100c207f5f7efcac49361f210f0 + src/mcp-server/tools/tenantsList.ts: + id: 91c7548a428c + last_write_checksum: sha1:73c2661d330aa54412f1415bdea169428320e229 + pristine_git_object: 956f025dc340a20098bcaa93f96a30bb6a0fa69e src/mcp-server/tools/tenantsUpsert.ts: id: 45e8ddbd187d - last_write_checksum: sha1:22b63e34242b8d3d8bfddb736007eaff9664bd0a - pristine_git_object: 79d5f4ad2265dece1afdf62d36fed89519a70b89 + last_write_checksum: sha1:6fab66269d96e7b8a6c2afa7846215f78291088e + pristine_git_object: 5cb69968bd21ff21d46f743fbeafbd812eb8059d src/mcp-server/tools/topicsList.ts: id: 28a55eacab3f last_write_checksum: sha1:20c552d9248a74b89c293a75d136701a96fb4f0e @@ -1267,8 +1312,8 @@ trackedFiles: pristine_git_object: 886eb0867cd515030e727c2ece3f4016d95ee2f0 src/models/operations/createtenantdestination.ts: id: 4a821ec08c76 - last_write_checksum: sha1:ab44c59eacdaf2b845c403e59fc344b044215beb - pristine_git_object: 5e50398e35a5188b87ad748fe0604aab83b44c2c + last_write_checksum: sha1:a945af75afb743fa33c90c7ab36e7ad71a61a744 + pristine_git_object: 6ced17e8807b18094f5b3a09599edb1350f385e7 src/models/operations/deletetenant.ts: id: 53bba7aa0258 last_write_checksum: sha1:68250e9f44d71779c65869679699db2279d1dc98 @@ -1287,8 +1332,8 @@ trackedFiles: pristine_git_object: 748556cec7d226ff993c03129e0e116bf481023e src/models/operations/getattempt.ts: id: 1e29ee3806d0 - last_write_checksum: sha1:fbaf422951012f4fdb73b38752d5bf40df82b7eb - pristine_git_object: 8949f086580a505d61bc171fe0d5d007e5931a89 + last_write_checksum: sha1:f1c59d47d71d12c0edbf58435dbe707b6c74951a + pristine_git_object: d7d95014e6ea7d2813397b70f0e7a8d541e7608a src/models/operations/getdestinationtypeschema.ts: id: 66f17cba3cea last_write_checksum: sha1:31c517b873cd57db9bf5ca63857f0cfb2eb7478e @@ -1307,8 +1352,8 @@ trackedFiles: pristine_git_object: a4c633987fbada9de11409988308e8f36e92932e src/models/operations/gettenantdestinationattempt.ts: id: 6e3d7c05ed74 - last_write_checksum: sha1:ccfb540399965f37f5e6a1c7bdfe7a77e26e9b33 - pristine_git_object: e9b5264a50b0e7e9a2f2bdb401dee2fe089231e9 + last_write_checksum: sha1:6b8b8136383241843a3d3f668088da21ee62bf66 + pristine_git_object: 7fdfac8c181de52b27e17419c0165fc7392b4521 src/models/operations/gettenantportalurl.ts: id: 7da1ad2b3a94 last_write_checksum: sha1:d1e6eea60e40ef0887a3ef91cb00fbc29bb864bc @@ -1327,44 +1372,44 @@ trackedFiles: pristine_git_object: a5a697ad7eb868ecf77f811a8011a24b026ecf18 src/models/operations/listattempts.ts: id: 5d32427e0db0 - last_write_checksum: sha1:f3ca005f7ea6392f1e405481869f06a62b871927 - pristine_git_object: e54575e106c40670edc778da4f8af85c3e34cb61 + last_write_checksum: sha1:9990a3212307c007bce8dbd0e2ff4af5a3606593 + pristine_git_object: 31a8e99f9e7808f6643ae8716ad21712a411051e src/models/operations/listevents.ts: id: 4324ebbf246a - last_write_checksum: sha1:e3112a819ce5ee671b89c188ab74d70853d7fea1 - pristine_git_object: b6f69afdd5ac6b0c4548bdb2b38a2723a8d14e3c + last_write_checksum: sha1:8ff43db87d10116be4ca461233425ab397647ab9 + pristine_git_object: 905f1834db093cc8ccf42474f043ad834ff4d09e src/models/operations/listtenantdestinationattempts.ts: id: fab875a5d815 - last_write_checksum: sha1:629e0a1566eab570b5b7220f70ba17e6a7fe2bdf - pristine_git_object: 67cd60c95ac3c40b10ad17fd58d89b55f84d6a91 + last_write_checksum: sha1:fac1a48abf3a566f6237091fd0d8d262c0763ae0 + pristine_git_object: 828c7c514fba18e9d61c0bb4e9e5148ac919edfb src/models/operations/listtenantdestinations.ts: id: 4f302620b5f9 - last_write_checksum: sha1:a16a31e7c5c692b56f528103fa7981e9014d9ecc - pristine_git_object: e6c70551cae63d257b1d29478ed95fac4b6a427b + last_write_checksum: sha1:7c6a2722d47d356687d002264cd59e6243ac40e1 + pristine_git_object: 53ebc32b1f39e306dd03a7c2d4be73468c246ba9 src/models/operations/listtenants.ts: id: 92cf989590cc - last_write_checksum: sha1:cd373dad24d07e41548788731cc309471c0acb19 - pristine_git_object: d4e627ac84a88f10ce8381b9a3cc8f78cd25b303 + last_write_checksum: sha1:dcb0ae8bc4d7c33aa23923e5b1fc78e18153c55a + pristine_git_object: 8b91969570e51dd99dc1f96fe9fcfbfad93c4117 src/models/operations/updatetenantdestination.ts: id: f920d916486b - last_write_checksum: sha1:4e6b28ef971b5f73a976f28e11d7ce761f28adbd - pristine_git_object: f309d454cbc1e38796dc3ba2a9ca7187d209fa94 + last_write_checksum: sha1:531c4f9121fca6cf69aef3302e81cae97d6b04e2 + pristine_git_object: 2f26c4edc0d0304837a9c7e70a37bb5101a6afcf src/models/operations/upserttenant.ts: id: 414b363a722d - last_write_checksum: sha1:6ef5614e68bae58e7e039ba164acb2f8d815394f - pristine_git_object: e8f3d0a4d05b9c0a38603ab68aaf5cea75b55d58 + last_write_checksum: sha1:2288b85b0ac16ab1a61dd3edc9b756473d4876be + pristine_git_object: e8487d0c7bfad1141b6b5934e3183e4aeef38e1d src/sdk/attempts.ts: id: b2a3fc6771ff - last_write_checksum: sha1:d113513cfc0e58cb49ed1c0c49762cbbd629e621 - pristine_git_object: 70a935aa9468d6c7de4e08f0a64ed2db478339c8 + last_write_checksum: sha1:93e962f4671d09169b4fc259aeaef8f14e07cb5a + pristine_git_object: 334eaff839ed02581b137b8d3075fdf339cbe455 src/sdk/destinations.ts: id: "130438586931" - last_write_checksum: sha1:823b5de97cf57f9f757eac4b4e5b2cf84174ba15 - pristine_git_object: 4f88de86b5b6539a339fcc90dd4ea4ae9359aaa9 + last_write_checksum: sha1:a6254046863f9ee230965e0e1405c6355f53b530 + pristine_git_object: b980e301a0e2c7d420762db17fdfe5db2e0d10a6 src/sdk/events.ts: id: c7d130088b17 - last_write_checksum: sha1:87e532e3a4b34dfcf2255564a51c4f19df36608b - pristine_git_object: f13c571bc7f319326cca9b9f1601bef9baad6cce + last_write_checksum: sha1:8265043d85ff1a7630f7dd0497d4fa9678573297 + pristine_git_object: 224dc00cbd804e7171099a9e6154561675131bc9 src/sdk/health.ts: id: d2e0a0845caf last_write_checksum: sha1:20e5f83a3554d2d4e1310c1c2880cce64c04c18c @@ -1387,8 +1432,8 @@ trackedFiles: pristine_git_object: bbbc0ae79e5dd3498f902c501596e25c9260fc1b src/sdk/tenants.ts: id: 7f3b22c334f5 - last_write_checksum: sha1:e02ef34d77087ca991baaf8b002464298e7ac9d9 - pristine_git_object: e3d8896803aa91bb9786478a7cb05868dd4db6b3 + last_write_checksum: sha1:eda082743774f2187caee546f475d53fac91c797 + pristine_git_object: 10b1325c615f62e034cdb5778789c81b447c33a8 src/sdk/topics.ts: id: d1567d1cd917 last_write_checksum: sha1:fa28cf21bf938daaa7608d81cb4459aa7c7c5af3 @@ -1882,7 +1927,13 @@ examples: application/json: {"models": [{"id": "del_123", "status": "success", "time": "2024-01-01T00:00:05Z", "code": "200", "attempt_number": 1, "event_id": "evt_123", "destination_id": "des_456", "event": {"id": "evt_123", "topic": "user.created", "time": "2024-01-01T00:00:00Z", "eligible_for_retry": false, "metadata": {"source": "crm"}}}], "pagination": {"order_by": "time", "dir": "desc", "limit": 100, "next": null, "prev": null}} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: "## Typescript SDK Changes:\n* `outpost.attempts.list()`: `error` **Changed** (Breaking ⚠️)\n* `outpost.destinations.listAttempts()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed** (Breaking ⚠️)\n* `outpost.publish.event()`: `error` **Changed** (Breaking ⚠️)\n* `outpost.destinations.getAttempt()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.tenants.listTenants()`: \n * `request` **Changed** (Breaking ⚠️)\n * `error` **Changed** (Breaking ⚠️)\n* `outpost.tenants.upsert()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.tenants.get()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.tenants.delete()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.tenants.getPortalUrl()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.tenants.getToken()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.events.list()`: \n * `response.models[].successfulAt` **Removed** (Breaking ⚠️)\n * `error` **Changed** (Breaking ⚠️)\n* `outpost.events.get()`: \n * `response.successfulAt` **Removed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.destinations.disable()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.destinations.enable()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.destinations.update()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed** (Breaking ⚠️)\n* `outpost.destinations.list()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.destinations.create()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed** (Breaking ⚠️)\n* `outpost.destinations.get()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.attempts.retry()`: `error` **Changed** (Breaking ⚠️)\n* `outpost.destinations.delete()`: \n * `request.tenantId` **Changed** (Breaking ⚠️)\n * `error` **Changed**\n* `outpost.schemas.listDestinationTypes()`: **Added**\n* `outpost.schemas.getDestinationType()`: **Added**\n* `outpost.attempts.get()`: `error` **Changed**\n* `outpost.schemas.getDestinationTypeJwt()`: **Removed** (Breaking ⚠️)\n* `outpost.schemas.listDestinationTypesJwt()`: **Removed** (Breaking ⚠️)\n* `outpost.topics.list()`: `error.status[401]` **Added**\n" +releaseNotes: | + ## Typescript SDK Changes: + * `outpost.events.list()`: `request` **Changed** (Breaking ⚠️) + * `outpost.attempts.list()`: `request` **Changed** (Breaking ⚠️) + * `outpost.destinations.listAttempts()`: `request` **Changed** (Breaking ⚠️) + * `outpost.tenants.list()`: **Added** + * `outpost.tenants.listTenants()`: **Removed** (Breaking ⚠️) generatedFiles: - .gitattributes - .npmignore diff --git a/sdks/outpost-typescript/.speakeasy/gen.yaml b/sdks/outpost-typescript/.speakeasy/gen.yaml index bb8c3c44..e3d7a3f5 100644 --- a/sdks/outpost-typescript/.speakeasy/gen.yaml +++ b/sdks/outpost-typescript/.speakeasy/gen.yaml @@ -29,7 +29,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false typescript: - version: 0.8.0 + version: 0.9.0 acceptHeaderEnum: true additionalDependencies: dependencies: {} diff --git a/sdks/outpost-typescript/README.md b/sdks/outpost-typescript/README.md index fe40a08d..3e658232 100644 --- a/sdks/outpost-typescript/README.md +++ b/sdks/outpost-typescript/README.md @@ -25,6 +25,7 @@ Outpost API: The Outpost API is a REST-based JSON API for managing tenants, dest * [Authentication](#authentication) * [Available Resources and Operations](#available-resources-and-operations) * [Standalone functions](#standalone-functions) + * [Pagination](#pagination) * [Retries](#retries) * [Error Handling](#error-handling) * [Server Selection](#server-selection) @@ -254,7 +255,7 @@ run(); ### [Tenants](docs/sdks/tenants/README.md) -* [listTenants](docs/sdks/tenants/README.md#listtenants) - List Tenants +* [list](docs/sdks/tenants/README.md#list) - List Tenants * [upsert](docs/sdks/tenants/README.md#upsert) - Create or Update Tenant * [get](docs/sdks/tenants/README.md#get) - Get Tenant * [delete](docs/sdks/tenants/README.md#delete) - Delete Tenant @@ -305,13 +306,45 @@ To read more about standalone functions, check [FUNCTIONS.md](./FUNCTIONS.md). - [`tenantsGet`](docs/sdks/tenants/README.md#get) - Get Tenant - [`tenantsGetPortalUrl`](docs/sdks/tenants/README.md#getportalurl) - Get Portal Redirect URL - [`tenantsGetToken`](docs/sdks/tenants/README.md#gettoken) - Get Tenant JWT Token -- [`tenantsListTenants`](docs/sdks/tenants/README.md#listtenants) - List Tenants +- [`tenantsList`](docs/sdks/tenants/README.md#list) - List Tenants - [`tenantsUpsert`](docs/sdks/tenants/README.md#upsert) - Create or Update Tenant - [`topicsList`](docs/sdks/topics/README.md#list) - List Available Topics + +## Pagination + +Some of the endpoints in this SDK support pagination. To use pagination, you +make your SDK calls as usual, but the returned response object will also be an +async iterable that can be consumed using the [`for await...of`][for-await-of] +syntax. + +[for-await-of]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for-await...of + +Here's an example of one such pagination call: + +```typescript +import { Outpost } from "@hookdeck/outpost-sdk"; + +const outpost = new Outpost({ + apiKey: "", +}); + +async function run() { + const result = await outpost.tenants.list({}); + + for await (const page of result) { + console.log(page); + } +} + +run(); + +``` + + ## Retries diff --git a/sdks/outpost-typescript/RELEASES.md b/sdks/outpost-typescript/RELEASES.md index 9e47d252..4e968c3d 100644 --- a/sdks/outpost-typescript/RELEASES.md +++ b/sdks/outpost-typescript/RELEASES.md @@ -68,4 +68,14 @@ Based on: ### Generated - [typescript v0.8.0] sdks/outpost-typescript ### Releases -- [NPM v0.8.0] https://www.npmjs.com/package/@hookdeck/outpost-sdk/v/0.8.0 - sdks/outpost-typescript \ No newline at end of file +- [NPM v0.8.0] https://www.npmjs.com/package/@hookdeck/outpost-sdk/v/0.8.0 - sdks/outpost-typescript + +## 2026-03-13 13:01:50 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.753.0 (2.862.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [typescript v0.9.0] sdks/outpost-typescript +### Releases +- [NPM v0.9.0] https://www.npmjs.com/package/@hookdeck/outpost-sdk/v/0.9.0 - sdks/outpost-typescript \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/createtenantdestinationrequest.md b/sdks/outpost-typescript/docs/models/operations/createtenantdestinationrequest.md index ed4efc0e..485ef72f 100644 --- a/sdks/outpost-typescript/docs/models/operations/createtenantdestinationrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/createtenantdestinationrequest.md @@ -7,7 +7,7 @@ import { CreateTenantDestinationRequest } from "@hookdeck/outpost-sdk/models/ope let value: CreateTenantDestinationRequest = { tenantId: "", - params: { + body: { type: "aws_s3", topics: "*", config: { @@ -31,4 +31,4 @@ let value: CreateTenantDestinationRequest = { | Field | Type | Required | Description | | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | | `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `params` | *components.DestinationCreate* | :heavy_check_mark: | N/A | \ No newline at end of file +| `body` | *components.DestinationCreate* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/destinationid.md b/sdks/outpost-typescript/docs/models/operations/destinationid.md new file mode 100644 index 00000000..437d58eb --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/destinationid.md @@ -0,0 +1,22 @@ +# DestinationId + +Filter attempts by destination ID(s). Use bracket notation for multiple values (e.g., `destination_id[0]=d1&destination_id[1]=d2`). + + +## Supported Types + +### `string` + +```typescript +const value: string = ""; +``` + +### `string[]` + +```typescript +const value: string[] = [ + "", + "", +]; +``` + diff --git a/sdks/outpost-typescript/docs/models/operations/getattemptinclude.md b/sdks/outpost-typescript/docs/models/operations/getattemptinclude.md index e5fd20b3..ef32d450 100644 --- a/sdks/outpost-typescript/docs/models/operations/getattemptinclude.md +++ b/sdks/outpost-typescript/docs/models/operations/getattemptinclude.md @@ -1,6 +1,6 @@ # GetAttemptInclude -Fields to include in the response. Can be specified multiple times or comma-separated. +Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) - `event.data`: Include full event with payload data - `response_data`: Include response body and headers diff --git a/sdks/outpost-typescript/docs/models/operations/getattemptrequest.md b/sdks/outpost-typescript/docs/models/operations/getattemptrequest.md index d7efbc1a..3b7592b2 100644 --- a/sdks/outpost-typescript/docs/models/operations/getattemptrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/getattemptrequest.md @@ -12,7 +12,7 @@ let value: GetAttemptRequest = { ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | -| `include` | *operations.GetAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Can be specified multiple times or comma-separated.
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | +| `include` | *operations.GetAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`).
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptinclude.md b/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptinclude.md index 72a9fb0b..e8d56ea6 100644 --- a/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptinclude.md +++ b/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptinclude.md @@ -1,6 +1,6 @@ # GetTenantDestinationAttemptInclude -Fields to include in the response. Can be specified multiple times or comma-separated. +Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). - `event`: Include event summary - `event.data`: Include full event with payload data - `response_data`: Include response body and headers diff --git a/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptrequest.md b/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptrequest.md index f896f822..f483c1c0 100644 --- a/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/gettenantdestinationattemptrequest.md @@ -14,9 +14,9 @@ let value: GetTenantDestinationAttemptRequest = { ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | -| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | -| `include` | *operations.GetTenantDestinationAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Can be specified multiple times or comma-separated.
- `event`: Include event summary
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | +| `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | +| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | +| `include` | *operations.GetTenantDestinationAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`).
- `event`: Include event summary
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listattemptseventid.md b/sdks/outpost-typescript/docs/models/operations/listattemptseventid.md new file mode 100644 index 00000000..fb3b0cf6 --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listattemptseventid.md @@ -0,0 +1,22 @@ +# ListAttemptsEventId + +Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). + + +## Supported Types + +### `string` + +```typescript +const value: string = ""; +``` + +### `string[]` + +```typescript +const value: string[] = [ + "", + "", +]; +``` + diff --git a/sdks/outpost-typescript/docs/models/operations/listattemptsinclude.md b/sdks/outpost-typescript/docs/models/operations/listattemptsinclude.md index 3c0ef8ac..96a30565 100644 --- a/sdks/outpost-typescript/docs/models/operations/listattemptsinclude.md +++ b/sdks/outpost-typescript/docs/models/operations/listattemptsinclude.md @@ -1,6 +1,6 @@ # ListAttemptsInclude -Fields to include in the response. Can be specified multiple times or comma-separated. +Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) - `event.data`: Include full event with payload data - `response_data`: Include response body and headers diff --git a/sdks/outpost-typescript/docs/models/operations/listattemptsrequest.md b/sdks/outpost-typescript/docs/models/operations/listattemptsrequest.md index 4ac8ecf7..b1ee918f 100644 --- a/sdks/outpost-typescript/docs/models/operations/listattemptsrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/listattemptsrequest.md @@ -10,18 +10,20 @@ let value: ListAttemptsRequest = {}; ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `tenantId` | *string* | :heavy_minus_sign: | Filter attempts by tenant ID. If not provided, returns attempts from all tenants. | -| `eventId` | *string* | :heavy_minus_sign: | Filter attempts by event ID. | -| `destinationId` | *string* | :heavy_minus_sign: | Filter attempts by destination ID. | -| `status` | [operations.ListAttemptsStatus](../../models/operations/listattemptsstatus.md) | :heavy_minus_sign: | Filter attempts by status. | -| `topic` | *operations.ListAttemptsTopic* | :heavy_minus_sign: | Filter attempts by event topic(s). Can be specified multiple times or comma-separated. | -| `timeGte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time >= value (RFC3339 or YYYY-MM-DD format). | -| `timeLte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time <= value (RFC3339 or YYYY-MM-DD format). | -| `limit` | *number* | :heavy_minus_sign: | Number of items per page (default 100, max 1000). | -| `next` | *string* | :heavy_minus_sign: | Cursor for next page of results. | -| `prev` | *string* | :heavy_minus_sign: | Cursor for previous page of results. | -| `include` | *operations.ListAttemptsInclude* | :heavy_minus_sign: | Fields to include in the response. Can be specified multiple times or comma-separated.
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| -| `orderBy` | [operations.ListAttemptsOrderBy](../../models/operations/listattemptsorderby.md) | :heavy_minus_sign: | Field to sort by. | -| `dir` | [operations.ListAttemptsDir](../../models/operations/listattemptsdir.md) | :heavy_minus_sign: | Sort direction. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `tenantId` | *operations.ListAttemptsTenantId* | :heavy_minus_sign: | Filter attempts by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`).
When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used.
If not provided with API key auth, returns attempts from all tenants.
| +| `eventId` | *operations.ListAttemptsEventId* | :heavy_minus_sign: | Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). | +| `destinationId` | *operations.DestinationId* | :heavy_minus_sign: | Filter attempts by destination ID(s). Use bracket notation for multiple values (e.g., `destination_id[0]=d1&destination_id[1]=d2`). | +| `status` | [operations.ListAttemptsStatus](../../models/operations/listattemptsstatus.md) | :heavy_minus_sign: | Filter attempts by status. | +| `topic` | *operations.ListAttemptsTopic* | :heavy_minus_sign: | Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). | +| `timeGte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time >= value (RFC3339 or YYYY-MM-DD format). | +| `timeLte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time <= value (RFC3339 or YYYY-MM-DD format). | +| `timeGt` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time > value (RFC3339 or YYYY-MM-DD format). | +| `timeLt` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time < value (RFC3339 or YYYY-MM-DD format). | +| `limit` | *number* | :heavy_minus_sign: | Number of items per page (default 100, max 1000). | +| `next` | *string* | :heavy_minus_sign: | Cursor for next page of results. | +| `prev` | *string* | :heavy_minus_sign: | Cursor for previous page of results. | +| `include` | *operations.ListAttemptsInclude* | :heavy_minus_sign: | Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`).
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| +| `orderBy` | [operations.ListAttemptsOrderBy](../../models/operations/listattemptsorderby.md) | :heavy_minus_sign: | Field to sort by. | +| `dir` | [operations.ListAttemptsDir](../../models/operations/listattemptsdir.md) | :heavy_minus_sign: | Sort direction. | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listattemptsresponse.md b/sdks/outpost-typescript/docs/models/operations/listattemptsresponse.md new file mode 100644 index 00000000..1602725f --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listattemptsresponse.md @@ -0,0 +1,60 @@ +# ListAttemptsResponse + +## Example Usage + +```typescript +import { ListAttemptsResponse } from "@hookdeck/outpost-sdk/models/operations"; + +let value: ListAttemptsResponse = { + result: { + models: [ + { + id: "atm_123", + tenantId: "tnt_123", + status: "success", + time: new Date("2024-01-01T00:00:05Z"), + code: "200", + responseData: { + "status_code": 200, + "body": "{\"status\":\"ok\"}", + "headers": { + "content-type": "application/json", + }, + }, + attemptNumber: 1, + manual: false, + eventId: "evt_123", + destinationId: "des_456", + event: { + id: "evt_123", + tenantId: "tnt_123", + destinationId: "des_456", + topic: "user.created", + time: new Date("2024-01-01T00:00:00Z"), + eligibleForRetry: true, + metadata: { + "source": "crm", + }, + data: { + "user_id": "userid", + "status": "active", + }, + }, + }, + ], + pagination: { + orderBy: "created_at", + dir: "desc", + limit: 100, + next: "MTcwNDA2NzIwMA==", + prev: null, + }, + }, +}; +``` + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | +| `result` | [components.AttemptPaginatedResult](../../models/components/attemptpaginatedresult.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listattemptstenantid.md b/sdks/outpost-typescript/docs/models/operations/listattemptstenantid.md new file mode 100644 index 00000000..e3cf12aa --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listattemptstenantid.md @@ -0,0 +1,25 @@ +# ListAttemptsTenantId + +Filter attempts by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`). +When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used. +If not provided with API key auth, returns attempts from all tenants. + + + +## Supported Types + +### `string` + +```typescript +const value: string = ""; +``` + +### `string[]` + +```typescript +const value: string[] = [ + "", + "", +]; +``` + diff --git a/sdks/outpost-typescript/docs/models/operations/listattemptstopic.md b/sdks/outpost-typescript/docs/models/operations/listattemptstopic.md index 03f6b096..f80277ea 100644 --- a/sdks/outpost-typescript/docs/models/operations/listattemptstopic.md +++ b/sdks/outpost-typescript/docs/models/operations/listattemptstopic.md @@ -1,6 +1,6 @@ # ListAttemptsTopic -Filter attempts by event topic(s). Can be specified multiple times or comma-separated. +Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). ## Supported Types diff --git a/sdks/outpost-typescript/docs/models/operations/listeventsid.md b/sdks/outpost-typescript/docs/models/operations/listeventsid.md new file mode 100644 index 00000000..ceb29ad1 --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listeventsid.md @@ -0,0 +1,22 @@ +# ListEventsId + +Filter events by ID(s). Use bracket notation for multiple values (e.g., `id[0]=abc&id[1]=def`). + + +## Supported Types + +### `string` + +```typescript +const value: string = ""; +``` + +### `string[]` + +```typescript +const value: string[] = [ + "", + "", +]; +``` + diff --git a/sdks/outpost-typescript/docs/models/operations/listeventsrequest.md b/sdks/outpost-typescript/docs/models/operations/listeventsrequest.md index bb664d71..3a660702 100644 --- a/sdks/outpost-typescript/docs/models/operations/listeventsrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/listeventsrequest.md @@ -10,14 +10,17 @@ let value: ListEventsRequest = {}; ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `tenantId` | *string* | :heavy_minus_sign: | Filter events by tenant ID. If not provided, returns events from all tenants. | -| `topic` | *operations.ListEventsTopic* | :heavy_minus_sign: | Filter events by topic(s). Can be specified multiple times or comma-separated. | -| `timeGte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter events with time >= value (RFC3339 or YYYY-MM-DD format). | -| `timeLte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter events with time <= value (RFC3339 or YYYY-MM-DD format). | -| `limit` | *number* | :heavy_minus_sign: | Number of items per page (default 100, max 1000). | -| `next` | *string* | :heavy_minus_sign: | Cursor for next page of results. | -| `prev` | *string* | :heavy_minus_sign: | Cursor for previous page of results. | -| `orderBy` | [operations.ListEventsOrderBy](../../models/operations/listeventsorderby.md) | :heavy_minus_sign: | Field to sort by. | -| `dir` | [operations.ListEventsDir](../../models/operations/listeventsdir.md) | :heavy_minus_sign: | Sort direction. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `id` | *operations.ListEventsId* | :heavy_minus_sign: | Filter events by ID(s). Use bracket notation for multiple values (e.g., `id[0]=abc&id[1]=def`). | +| `tenantId` | *operations.ListEventsTenantId* | :heavy_minus_sign: | Filter events by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`).
When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used.
If not provided with API key auth, returns events from all tenants.
| +| `topic` | *operations.ListEventsTopic* | :heavy_minus_sign: | Filter events by topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). | +| `timeGte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter events with time >= value (RFC3339 or YYYY-MM-DD format). | +| `timeLte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter events with time <= value (RFC3339 or YYYY-MM-DD format). | +| `timeGt` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter events with time > value (RFC3339 or YYYY-MM-DD format). | +| `timeLt` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter events with time < value (RFC3339 or YYYY-MM-DD format). | +| `limit` | *number* | :heavy_minus_sign: | Number of items per page (default 100, max 1000). | +| `next` | *string* | :heavy_minus_sign: | Cursor for next page of results. | +| `prev` | *string* | :heavy_minus_sign: | Cursor for previous page of results. | +| `orderBy` | [operations.ListEventsOrderBy](../../models/operations/listeventsorderby.md) | :heavy_minus_sign: | Field to sort by. | +| `dir` | [operations.ListEventsDir](../../models/operations/listeventsdir.md) | :heavy_minus_sign: | Sort direction. | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listeventsresponse.md b/sdks/outpost-typescript/docs/models/operations/listeventsresponse.md new file mode 100644 index 00000000..2ec02c3c --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listeventsresponse.md @@ -0,0 +1,41 @@ +# ListEventsResponse + +## Example Usage + +```typescript +import { ListEventsResponse } from "@hookdeck/outpost-sdk/models/operations"; + +let value: ListEventsResponse = { + result: { + models: [ + { + id: "evt_123", + tenantId: "tnt_123", + destinationId: "des_456", + topic: "user.created", + time: new Date("2024-01-01T00:00:00Z"), + metadata: { + "source": "crm", + }, + data: { + "user_id": "userid", + "status": "active", + }, + }, + ], + pagination: { + orderBy: "created_at", + dir: "desc", + limit: 100, + next: "MTcwNDA2NzIwMA==", + prev: null, + }, + }, +}; +``` + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `result` | [components.EventPaginatedResult](../../models/components/eventpaginatedresult.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listeventstenantid.md b/sdks/outpost-typescript/docs/models/operations/listeventstenantid.md new file mode 100644 index 00000000..d60598f4 --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listeventstenantid.md @@ -0,0 +1,25 @@ +# ListEventsTenantId + +Filter events by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`). +When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used. +If not provided with API key auth, returns events from all tenants. + + + +## Supported Types + +### `string` + +```typescript +const value: string = ""; +``` + +### `string[]` + +```typescript +const value: string[] = [ + "", + "", +]; +``` + diff --git a/sdks/outpost-typescript/docs/models/operations/listeventstopic.md b/sdks/outpost-typescript/docs/models/operations/listeventstopic.md index 4c8fc324..1bfc5c08 100644 --- a/sdks/outpost-typescript/docs/models/operations/listeventstopic.md +++ b/sdks/outpost-typescript/docs/models/operations/listeventstopic.md @@ -1,6 +1,6 @@ # ListEventsTopic -Filter events by topic(s). Can be specified multiple times or comma-separated. +Filter events by topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). ## Supported Types diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptseventid.md b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptseventid.md new file mode 100644 index 00000000..02b6f411 --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptseventid.md @@ -0,0 +1,22 @@ +# ListTenantDestinationAttemptsEventId + +Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). + + +## Supported Types + +### `string` + +```typescript +const value: string = ""; +``` + +### `string[]` + +```typescript +const value: string[] = [ + "", + "", +]; +``` + diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsinclude.md b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsinclude.md index 166af08f..17476008 100644 --- a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsinclude.md +++ b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsinclude.md @@ -1,6 +1,6 @@ # ListTenantDestinationAttemptsInclude -Fields to include in the response. Can be specified multiple times or comma-separated. +Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) - `event.data`: Include full event with payload data - `response_data`: Include response body and headers diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsrequest.md b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsrequest.md index e99b3ab1..db6a29ce 100644 --- a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsrequest.md @@ -13,18 +13,20 @@ let value: ListTenantDestinationAttemptsRequest = { ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | -| `eventId` | *string* | :heavy_minus_sign: | Filter attempts by event ID. | -| `status` | [operations.ListTenantDestinationAttemptsStatus](../../models/operations/listtenantdestinationattemptsstatus.md) | :heavy_minus_sign: | Filter attempts by status. | -| `topic` | *operations.ListTenantDestinationAttemptsTopic* | :heavy_minus_sign: | Filter attempts by event topic(s). Can be specified multiple times or comma-separated. | -| `timeGte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time >= value (RFC3339 or YYYY-MM-DD format). | -| `timeLte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time <= value (RFC3339 or YYYY-MM-DD format). | -| `limit` | *number* | :heavy_minus_sign: | Number of items per page (default 100, max 1000). | -| `next` | *string* | :heavy_minus_sign: | Cursor for next page of results. | -| `prev` | *string* | :heavy_minus_sign: | Cursor for previous page of results. | -| `include` | *operations.ListTenantDestinationAttemptsInclude* | :heavy_minus_sign: | Fields to include in the response. Can be specified multiple times or comma-separated.
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| -| `orderBy` | [operations.ListTenantDestinationAttemptsOrderBy](../../models/operations/listtenantdestinationattemptsorderby.md) | :heavy_minus_sign: | Field to sort by. | -| `dir` | [operations.ListTenantDestinationAttemptsDir](../../models/operations/listtenantdestinationattemptsdir.md) | :heavy_minus_sign: | Sort direction. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | +| `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | +| `eventId` | *operations.ListTenantDestinationAttemptsEventId* | :heavy_minus_sign: | Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). | +| `status` | [operations.ListTenantDestinationAttemptsStatus](../../models/operations/listtenantdestinationattemptsstatus.md) | :heavy_minus_sign: | Filter attempts by status. | +| `topic` | *operations.ListTenantDestinationAttemptsTopic* | :heavy_minus_sign: | Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). | +| `timeGte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time >= value (RFC3339 or YYYY-MM-DD format). | +| `timeLte` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time <= value (RFC3339 or YYYY-MM-DD format). | +| `timeGt` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time > value (RFC3339 or YYYY-MM-DD format). | +| `timeLt` | [Date](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) | :heavy_minus_sign: | Filter attempts by event time < value (RFC3339 or YYYY-MM-DD format). | +| `limit` | *number* | :heavy_minus_sign: | Number of items per page (default 100, max 1000). | +| `next` | *string* | :heavy_minus_sign: | Cursor for next page of results. | +| `prev` | *string* | :heavy_minus_sign: | Cursor for previous page of results. | +| `include` | *operations.ListTenantDestinationAttemptsInclude* | :heavy_minus_sign: | Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`).
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| +| `orderBy` | [operations.ListTenantDestinationAttemptsOrderBy](../../models/operations/listtenantdestinationattemptsorderby.md) | :heavy_minus_sign: | Field to sort by. | +| `dir` | [operations.ListTenantDestinationAttemptsDir](../../models/operations/listtenantdestinationattemptsdir.md) | :heavy_minus_sign: | Sort direction. | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsresponse.md b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsresponse.md new file mode 100644 index 00000000..b505a41d --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptsresponse.md @@ -0,0 +1,60 @@ +# ListTenantDestinationAttemptsResponse + +## Example Usage + +```typescript +import { ListTenantDestinationAttemptsResponse } from "@hookdeck/outpost-sdk/models/operations"; + +let value: ListTenantDestinationAttemptsResponse = { + result: { + models: [ + { + id: "atm_123", + tenantId: "tnt_123", + status: "success", + time: new Date("2024-01-01T00:00:05Z"), + code: "200", + responseData: { + "status_code": 200, + "body": "{\"status\":\"ok\"}", + "headers": { + "content-type": "application/json", + }, + }, + attemptNumber: 1, + manual: false, + eventId: "evt_123", + destinationId: "des_456", + event: { + id: "evt_123", + tenantId: "tnt_123", + destinationId: "des_456", + topic: "user.created", + time: new Date("2024-01-01T00:00:00Z"), + eligibleForRetry: true, + metadata: { + "source": "crm", + }, + data: { + "user_id": "userid", + "status": "active", + }, + }, + }, + ], + pagination: { + orderBy: "created_at", + dir: "desc", + limit: 100, + next: "MTcwNDA2NzIwMA==", + prev: null, + }, + }, +}; +``` + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | +| `result` | [components.AttemptPaginatedResult](../../models/components/attemptpaginatedresult.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptstopic.md b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptstopic.md index 47647d9e..81ce4202 100644 --- a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptstopic.md +++ b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationattemptstopic.md @@ -1,6 +1,6 @@ # ListTenantDestinationAttemptsTopic -Filter attempts by event topic(s). Can be specified multiple times or comma-separated. +Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). ## Supported Types diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationsrequest.md b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationsrequest.md index 6a3e6a06..c118dc97 100644 --- a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationsrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationsrequest.md @@ -13,8 +13,8 @@ let value: ListTenantDestinationsRequest = { ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `type` | *operations.ListTenantDestinationsType* | :heavy_minus_sign: | Filter destinations by type(s). | -| `topics` | *operations.Topics* | :heavy_minus_sign: | Filter destinations by supported topic(s). | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | +| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | +| `type` | *operations.ListTenantDestinationsType* | :heavy_minus_sign: | Filter destinations by type(s). Use bracket notation for multiple values (e.g., `type[0]=webhook&type[1]=aws_sqs`). | +| `topics` | *operations.Topics* | :heavy_minus_sign: | Filter destinations by supported topic(s). Use bracket notation for multiple values (e.g., `topics[0]=user.created&topics[1]=user.deleted`). | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationstype.md b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationstype.md index 0c4cbc49..85f94a00 100644 --- a/sdks/outpost-typescript/docs/models/operations/listtenantdestinationstype.md +++ b/sdks/outpost-typescript/docs/models/operations/listtenantdestinationstype.md @@ -1,6 +1,6 @@ # ListTenantDestinationsType -Filter destinations by type(s). +Filter destinations by type(s). Use bracket notation for multiple values (e.g., `type[0]=webhook&type[1]=aws_sqs`). ## Supported Types diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantsid.md b/sdks/outpost-typescript/docs/models/operations/listtenantsid.md new file mode 100644 index 00000000..e95cf849 --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listtenantsid.md @@ -0,0 +1,22 @@ +# ListTenantsId + +Filter tenants by ID(s). Use bracket notation for multiple values (e.g., `id[0]=t1&id[1]=t2` or `id[]=t1&id[]=t2`). + + +## Supported Types + +### `string` + +```typescript +const value: string = ""; +``` + +### `string[]` + +```typescript +const value: string[] = [ + "", + "", +]; +``` + diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantsrequest.md b/sdks/outpost-typescript/docs/models/operations/listtenantsrequest.md index 59dd8f90..bb65b2ff 100644 --- a/sdks/outpost-typescript/docs/models/operations/listtenantsrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/listtenantsrequest.md @@ -10,9 +10,10 @@ let value: ListTenantsRequest = {}; ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `limit` | *number* | :heavy_minus_sign: | Number of tenants to return per page (1-100, default 20). | -| `dir` | [operations.ListTenantsDir](../../models/operations/listtenantsdir.md) | :heavy_minus_sign: | Sort direction. | -| `next` | *string* | :heavy_minus_sign: | Cursor for the next page of results. Mutually exclusive with `prev`. | -| `prev` | *string* | :heavy_minus_sign: | Cursor for the previous page of results. Mutually exclusive with `next`. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | +| `id` | *operations.ListTenantsId* | :heavy_minus_sign: | Filter tenants by ID(s). Use bracket notation for multiple values (e.g., `id[0]=t1&id[1]=t2` or `id[]=t1&id[]=t2`). | +| `limit` | *number* | :heavy_minus_sign: | Number of tenants to return per page (1-100, default 20). | +| `dir` | [operations.ListTenantsDir](../../models/operations/listtenantsdir.md) | :heavy_minus_sign: | Sort direction. | +| `next` | *string* | :heavy_minus_sign: | Cursor for the next page of results. Mutually exclusive with `prev`. | +| `prev` | *string* | :heavy_minus_sign: | Cursor for the previous page of results. Mutually exclusive with `next`. | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/listtenantsresponse.md b/sdks/outpost-typescript/docs/models/operations/listtenantsresponse.md new file mode 100644 index 00000000..be81fa64 --- /dev/null +++ b/sdks/outpost-typescript/docs/models/operations/listtenantsresponse.md @@ -0,0 +1,38 @@ +# ListTenantsResponse + +## Example Usage + +```typescript +import { ListTenantsResponse } from "@hookdeck/outpost-sdk/models/operations"; + +let value: ListTenantsResponse = { + result: { + models: [ + { + id: "123", + destinationsCount: 5, + topics: [ + "user.created", + "user.deleted", + ], + createdAt: new Date("2024-01-01T00:00:00Z"), + updatedAt: new Date("2024-01-01T00:00:00Z"), + }, + ], + pagination: { + orderBy: "created_at", + dir: "desc", + limit: 100, + next: "MTcwNDA2NzIwMA==", + prev: null, + }, + count: 42, + }, +}; +``` + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | +| `result` | [components.TenantPaginatedResult](../../models/components/tenantpaginatedresult.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/topics.md b/sdks/outpost-typescript/docs/models/operations/topics.md index 9a806e11..ce47ee10 100644 --- a/sdks/outpost-typescript/docs/models/operations/topics.md +++ b/sdks/outpost-typescript/docs/models/operations/topics.md @@ -1,6 +1,6 @@ # Topics -Filter destinations by supported topic(s). +Filter destinations by supported topic(s). Use bracket notation for multiple values (e.g., `topics[0]=user.created&topics[1]=user.deleted`). ## Supported Types diff --git a/sdks/outpost-typescript/docs/models/operations/updatetenantdestinationrequest.md b/sdks/outpost-typescript/docs/models/operations/updatetenantdestinationrequest.md index 86854fcb..8d796440 100644 --- a/sdks/outpost-typescript/docs/models/operations/updatetenantdestinationrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/updatetenantdestinationrequest.md @@ -8,7 +8,7 @@ import { UpdateTenantDestinationRequest } from "@hookdeck/outpost-sdk/models/ope let value: UpdateTenantDestinationRequest = { tenantId: "", destinationId: "", - params: { + body: { topics: "*", filter: { "data": { @@ -41,4 +41,4 @@ let value: UpdateTenantDestinationRequest = { | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | | `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | | `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | -| `params` | *components.DestinationUpdate* | :heavy_check_mark: | N/A | \ No newline at end of file +| `body` | *components.DestinationUpdate* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/models/operations/upserttenantrequest.md b/sdks/outpost-typescript/docs/models/operations/upserttenantrequest.md index dedcefb4..3f776ff1 100644 --- a/sdks/outpost-typescript/docs/models/operations/upserttenantrequest.md +++ b/sdks/outpost-typescript/docs/models/operations/upserttenantrequest.md @@ -15,4 +15,4 @@ let value: UpsertTenantRequest = { | Field | Type | Required | Description | | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | | `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `params` | [components.TenantUpsert](../../models/components/tenantupsert.md) | :heavy_minus_sign: | Optional tenant metadata | \ No newline at end of file +| `body` | [components.TenantUpsert](../../models/components/tenantupsert.md) | :heavy_minus_sign: | Optional tenant metadata | \ No newline at end of file diff --git a/sdks/outpost-typescript/docs/sdks/attempts/README.md b/sdks/outpost-typescript/docs/sdks/attempts/README.md index 2621758f..05f23f3a 100644 --- a/sdks/outpost-typescript/docs/sdks/attempts/README.md +++ b/sdks/outpost-typescript/docs/sdks/attempts/README.md @@ -46,7 +46,9 @@ const outpost = new Outpost({ async function run() { const result = await outpost.attempts.list({}); - console.log(result); + for await (const page of result) { + console.log(page); + } } run(); @@ -70,7 +72,9 @@ async function run() { const res = await attemptsList(outpost, {}); if (res.ok) { const { value: result } = res; - console.log(result); + for await (const page of result) { + console.log(page); + } } else { console.log("attemptsList failed:", res.error); } @@ -91,7 +95,9 @@ const outpost = new Outpost({ async function run() { const result = await outpost.attempts.list({}); - console.log(result); + for await (const page of result) { + console.log(page); + } } run(); @@ -115,7 +121,9 @@ async function run() { const res = await attemptsList(outpost, {}); if (res.ok) { const { value: result } = res; - console.log(result); + for await (const page of result) { + console.log(page); + } } else { console.log("attemptsList failed:", res.error); } @@ -135,7 +143,7 @@ run(); ### Response -**Promise\<[components.AttemptPaginatedResult](../../models/components/attemptpaginatedresult.md)\>** +**Promise\<[operations.ListAttemptsResponse](../../models/operations/listattemptsresponse.md)\>** ### Errors @@ -246,13 +254,13 @@ run(); ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | -| `include` | *operations.GetAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Can be specified multiple times or comma-separated.
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| -| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | -| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | -| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | +| `include` | *operations.GetAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`).
- `event`: Include event summary (id, topic, time, eligible_for_retry, metadata)
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| +| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | +| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | +| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | ### Response diff --git a/sdks/outpost-typescript/docs/sdks/destinations/README.md b/sdks/outpost-typescript/docs/sdks/destinations/README.md index d32681c3..10b742d0 100644 --- a/sdks/outpost-typescript/docs/sdks/destinations/README.md +++ b/sdks/outpost-typescript/docs/sdks/destinations/README.md @@ -94,8 +94,8 @@ run(); | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `type` | *operations.ListTenantDestinationsType* | :heavy_minus_sign: | Filter destinations by type(s). | -| `topics` | *operations.Topics* | :heavy_minus_sign: | Filter destinations by supported topic(s). | +| `type` | *operations.ListTenantDestinationsType* | :heavy_minus_sign: | Filter destinations by type(s). Use bracket notation for multiple values (e.g., `type[0]=webhook&type[1]=aws_sqs`). | +| `topics` | *operations.Topics* | :heavy_minus_sign: | Filter destinations by supported topic(s). Use bracket notation for multiple values (e.g., `topics[0]=user.created&topics[1]=user.deleted`). | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | @@ -194,7 +194,7 @@ run(); | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `params` | *components.DestinationCreate* | :heavy_check_mark: | N/A | +| `body` | *components.DestinationCreate* | :heavy_check_mark: | N/A | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | @@ -364,7 +364,7 @@ run(); | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | | `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | -| `params` | *components.DestinationUpdate* | :heavy_check_mark: | N/A | +| `body` | *components.DestinationUpdate* | :heavy_check_mark: | N/A | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | @@ -622,7 +622,9 @@ async function run() { destinationId: "", }); - console.log(result); + for await (const page of result) { + console.log(page); + } } run(); @@ -649,7 +651,9 @@ async function run() { }); if (res.ok) { const { value: result } = res; - console.log(result); + for await (const page of result) { + console.log(page); + } } else { console.log("destinationsListAttempts failed:", res.error); } @@ -669,7 +673,7 @@ run(); ### Response -**Promise\<[components.AttemptPaginatedResult](../../models/components/attemptpaginatedresult.md)\>** +**Promise\<[operations.ListTenantDestinationAttemptsResponse](../../models/operations/listtenantdestinationattemptsresponse.md)\>** ### Errors @@ -732,15 +736,15 @@ run(); ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | -| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | -| `include` | *operations.GetTenantDestinationAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Can be specified multiple times or comma-separated.
- `event`: Include event summary
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| -| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | -| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | -| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | +| `destinationId` | *string* | :heavy_check_mark: | The ID of the destination. | +| `attemptId` | *string* | :heavy_check_mark: | The ID of the attempt. | +| `include` | *operations.GetTenantDestinationAttemptInclude* | :heavy_minus_sign: | Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`).
- `event`: Include event summary
- `event.data`: Include full event with payload data
- `response_data`: Include response body and headers
| +| `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | +| `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | +| `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | ### Response diff --git a/sdks/outpost-typescript/docs/sdks/events/README.md b/sdks/outpost-typescript/docs/sdks/events/README.md index ec517126..8d1aebda 100644 --- a/sdks/outpost-typescript/docs/sdks/events/README.md +++ b/sdks/outpost-typescript/docs/sdks/events/README.md @@ -30,7 +30,9 @@ const outpost = new Outpost({ async function run() { const result = await outpost.events.list({}); - console.log(result); + for await (const page of result) { + console.log(page); + } } run(); @@ -54,7 +56,9 @@ async function run() { const res = await eventsList(outpost, {}); if (res.ok) { const { value: result } = res; - console.log(result); + for await (const page of result) { + console.log(page); + } } else { console.log("eventsList failed:", res.error); } @@ -74,7 +78,7 @@ run(); ### Response -**Promise\<[components.EventPaginatedResult](../../models/components/eventpaginatedresult.md)\>** +**Promise\<[operations.ListEventsResponse](../../models/operations/listeventsresponse.md)\>** ### Errors diff --git a/sdks/outpost-typescript/docs/sdks/tenants/README.md b/sdks/outpost-typescript/docs/sdks/tenants/README.md index e5c4f96e..ad61f4bf 100644 --- a/sdks/outpost-typescript/docs/sdks/tenants/README.md +++ b/sdks/outpost-typescript/docs/sdks/tenants/README.md @@ -9,14 +9,14 @@ If your system is not multi-tenant, create a single tenant with a hard-code tena ### Available Operations -* [listTenants](#listtenants) - List Tenants +* [list](#list) - List Tenants * [upsert](#upsert) - Create or Update Tenant * [get](#get) - Get Tenant * [delete](#delete) - Delete Tenant * [getPortalUrl](#getportalurl) - Get Portal Redirect URL * [getToken](#gettoken) - Get Tenant JWT Token -## listTenants +## list List all tenants with cursor-based pagination. @@ -37,9 +37,11 @@ const outpost = new Outpost({ }); async function run() { - const result = await outpost.tenants.listTenants(); + const result = await outpost.tenants.list({}); - console.log(result); + for await (const page of result) { + console.log(page); + } } run(); @@ -51,7 +53,7 @@ The standalone function version of this method: ```typescript import { OutpostCore } from "@hookdeck/outpost-sdk/core.js"; -import { tenantsListTenants } from "@hookdeck/outpost-sdk/funcs/tenantsListTenants.js"; +import { tenantsList } from "@hookdeck/outpost-sdk/funcs/tenantsList.js"; // Use `OutpostCore` for best tree-shaking performance. // You can create one instance of it to use across an application. @@ -60,12 +62,14 @@ const outpost = new OutpostCore({ }); async function run() { - const res = await tenantsListTenants(outpost); + const res = await tenantsList(outpost, {}); if (res.ok) { const { value: result } = res; - console.log(result); + for await (const page of result) { + console.log(page); + } } else { - console.log("tenantsListTenants failed:", res.error); + console.log("tenantsList failed:", res.error); } } @@ -76,17 +80,14 @@ run(); | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `limit` | *number* | :heavy_minus_sign: | Number of tenants to return per page (1-100, default 20). | -| `dir` | [operations.ListTenantsDir](../../models/operations/listtenantsdir.md) | :heavy_minus_sign: | Sort direction. | -| `next` | *string* | :heavy_minus_sign: | Cursor for the next page of results. Mutually exclusive with `prev`. | -| `prev` | *string* | :heavy_minus_sign: | Cursor for the previous page of results. Mutually exclusive with `next`. | +| `request` | [operations.ListTenantsRequest](../../models/operations/listtenantsrequest.md) | :heavy_check_mark: | The request object to use for the request. | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | ### Response -**Promise\<[components.TenantPaginatedResult](../../models/components/tenantpaginatedresult.md)\>** +**Promise\<[operations.ListTenantsResponse](../../models/operations/listtenantsresponse.md)\>** ### Errors @@ -153,7 +154,7 @@ run(); | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `tenantId` | *string* | :heavy_check_mark: | The ID of the tenant. Required when using AdminApiKey authentication. | -| `params` | [components.TenantUpsert](../../models/components/tenantupsert.md) | :heavy_minus_sign: | Optional tenant metadata | +| `body` | [components.TenantUpsert](../../models/components/tenantupsert.md) | :heavy_minus_sign: | Optional tenant metadata | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | diff --git a/sdks/outpost-typescript/examples/package-lock.json b/sdks/outpost-typescript/examples/package-lock.json index ede332c8..c5bc5573 100644 --- a/sdks/outpost-typescript/examples/package-lock.json +++ b/sdks/outpost-typescript/examples/package-lock.json @@ -18,7 +18,7 @@ }, "..": { "name": "@hookdeck/outpost-sdk", - "version": "0.8.0", + "version": "0.9.0", "dependencies": { "@modelcontextprotocol/sdk": "^1.26.0", "zod": "^3.25.0 || ^4.0.0" diff --git a/sdks/outpost-typescript/jsr.json b/sdks/outpost-typescript/jsr.json index 7cb416a4..4ac4612f 100644 --- a/sdks/outpost-typescript/jsr.json +++ b/sdks/outpost-typescript/jsr.json @@ -2,7 +2,7 @@ { "name": "@hookdeck/outpost-sdk", - "version": "0.8.0", + "version": "0.9.0", "exports": { ".": "./src/index.ts", "./models/errors": "./src/models/errors/index.ts", diff --git a/sdks/outpost-typescript/package-lock.json b/sdks/outpost-typescript/package-lock.json index 2acdf6b3..50e45c70 100644 --- a/sdks/outpost-typescript/package-lock.json +++ b/sdks/outpost-typescript/package-lock.json @@ -1,12 +1,12 @@ { "name": "@hookdeck/outpost-sdk", - "version": "0.8.0", + "version": "0.9.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@hookdeck/outpost-sdk", - "version": "0.8.0", + "version": "0.9.0", "dependencies": { "@modelcontextprotocol/sdk": "^1.26.0", "zod": "^3.25.0 || ^4.0.0" diff --git a/sdks/outpost-typescript/package.json b/sdks/outpost-typescript/package.json index 52255304..13926ac8 100644 --- a/sdks/outpost-typescript/package.json +++ b/sdks/outpost-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@hookdeck/outpost-sdk", - "version": "0.8.0", + "version": "0.9.0", "author": "Speakeasy", "type": "module", "bin": { diff --git a/sdks/outpost-typescript/src/funcs/attemptsList.ts b/sdks/outpost-typescript/src/funcs/attemptsList.ts index 90596dcf..ed62085f 100644 --- a/sdks/outpost-typescript/src/funcs/attemptsList.ts +++ b/sdks/outpost-typescript/src/funcs/attemptsList.ts @@ -3,6 +3,7 @@ */ import { OutpostCore } from "../core.js"; +import { dlv } from "../lib/dlv.js"; import { encodeFormQuery } from "../lib/encodings.js"; import * as M from "../lib/matchers.js"; import { compactMap } from "../lib/primitives.js"; @@ -10,7 +11,6 @@ import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; -import * as components from "../models/components/index.js"; import { ConnectionError, InvalidRequestError, @@ -25,6 +25,12 @@ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import * as operations from "../models/operations/index.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; +import { + createPageIterator, + haltIterator, + PageIterator, + Paginator, +} from "../types/operations.js"; /** * List Attempts @@ -40,18 +46,21 @@ export function attemptsList( request: operations.ListAttemptsRequest, options?: RequestOptions, ): APIPromise< - Result< - components.AttemptPaginatedResult, - | errors.UnauthorizedError - | errors.InternalServerError - | OutpostError - | ResponseValidationError - | ConnectionError - | RequestAbortedError - | RequestTimeoutError - | InvalidRequestError - | UnexpectedClientError - | SDKValidationError + PageIterator< + Result< + operations.ListAttemptsResponse, + | errors.UnauthorizedError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + >, + { cursor: string } > > { return new APIPromise($do( @@ -67,18 +76,21 @@ async function $do( options?: RequestOptions, ): Promise< [ - Result< - components.AttemptPaginatedResult, - | errors.UnauthorizedError - | errors.InternalServerError - | OutpostError - | ResponseValidationError - | ConnectionError - | RequestAbortedError - | RequestTimeoutError - | InvalidRequestError - | UnexpectedClientError - | SDKValidationError + PageIterator< + Result< + operations.ListAttemptsResponse, + | errors.UnauthorizedError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + >, + { cursor: string } >, APICall, ] @@ -89,7 +101,7 @@ async function $do( "Input validation failed", ); if (!parsed.ok) { - return [parsed, { status: "invalid" }]; + return [haltIterator(parsed), { status: "invalid" }]; } const payload = parsed.value; const body = null; @@ -107,7 +119,9 @@ async function $do( "prev": payload.prev, "status": payload.status, "tenant_id": payload.tenant_id, + "time[gt]": payload["time[gt]"], "time[gte]": payload["time[gte]"], + "time[lt]": payload["time[lt]"], "time[lte]": payload["time[lte]"], "topic": payload.topic, }); @@ -147,7 +161,7 @@ async function $do( timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1, }, options); if (!requestRes.ok) { - return [requestRes, { status: "invalid" }]; + return [haltIterator(requestRes), { status: "invalid" }]; } const req = requestRes.value; @@ -158,7 +172,7 @@ async function $do( retryCodes: context.retryCodes, }); if (!doResult.ok) { - return [doResult, { status: "request-error", request: req }]; + return [haltIterator(doResult), { status: "request-error", request: req }]; } const response = doResult.value; @@ -166,8 +180,8 @@ async function $do( HttpMeta: { Response: response, Request: req }, }; - const [result] = await M.match< - components.AttemptPaginatedResult, + const [result, raw] = await M.match< + operations.ListAttemptsResponse, | errors.UnauthorizedError | errors.InternalServerError | OutpostError @@ -179,15 +193,75 @@ async function $do( | UnexpectedClientError | SDKValidationError >( - M.json(200, components.AttemptPaginatedResult$inboundSchema), + M.json(200, operations.ListAttemptsResponse$inboundSchema, { + key: "Result", + }), M.jsonErr(401, errors.UnauthorizedError$inboundSchema), M.jsonErr(500, errors.InternalServerError$inboundSchema), M.fail("4XX"), M.fail("5XX"), )(response, req, { extraFields: responseFields }); if (!result.ok) { - return [result, { status: "complete", request: req, response }]; + return [haltIterator(result), { + status: "complete", + request: req, + response, + }]; } - return [result, { status: "complete", request: req, response }]; + const nextFunc = ( + responseData: unknown, + ): { + next: Paginator< + Result< + operations.ListAttemptsResponse, + | errors.UnauthorizedError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + > + >; + "~next"?: { cursor: string }; + } => { + const nextCursor = dlv(responseData, "pagination.next"); + if (typeof nextCursor !== "string") { + return { next: () => null }; + } + if (nextCursor.trim() === "") { + return { next: () => null }; + } + const results = dlv(responseData, "models"); + if (!Array.isArray(results) || !results.length) { + return { next: () => null }; + } + const limit = request?.limit ?? 100; + if (results.length < limit) { + return { next: () => null }; + } + + const nextVal = () => + attemptsList( + client, + { + ...request, + next: nextCursor, + }, + options, + ); + + return { next: nextVal, "~next": { cursor: nextCursor } }; + }; + + const page = { ...result, ...nextFunc(raw) }; + return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, { + status: "complete", + request: req, + response, + }]; } diff --git a/sdks/outpost-typescript/src/funcs/destinationsCreate.ts b/sdks/outpost-typescript/src/funcs/destinationsCreate.ts index 2ad86f38..ff6af288 100644 --- a/sdks/outpost-typescript/src/funcs/destinationsCreate.ts +++ b/sdks/outpost-typescript/src/funcs/destinationsCreate.ts @@ -35,7 +35,7 @@ import { Result } from "../types/fp.js"; export function destinationsCreate( client: OutpostCore, tenantId: string, - params: components.DestinationCreate, + body: components.DestinationCreate, options?: RequestOptions, ): APIPromise< Result< @@ -57,7 +57,7 @@ export function destinationsCreate( return new APIPromise($do( client, tenantId, - params, + body, options, )); } @@ -65,7 +65,7 @@ export function destinationsCreate( async function $do( client: OutpostCore, tenantId: string, - params: components.DestinationCreate, + body: components.DestinationCreate, options?: RequestOptions, ): Promise< [ @@ -89,7 +89,7 @@ async function $do( > { const input: operations.CreateTenantDestinationRequest = { tenantId: tenantId, - params: params, + body: body, }; const parsed = safeParse( @@ -102,7 +102,7 @@ async function $do( return [parsed, { status: "invalid" }]; } const payload = parsed.value; - const body = encodeJSON("body", payload.params, { explode: true }); + const body$ = encodeJSON("body", payload.body, { explode: true }); const pathParams = { tenant_id: encodeSimple("tenant_id", payload.tenant_id, { @@ -143,7 +143,7 @@ async function $do( baseURL: options?.serverURL, path: path, headers: headers, - body: body, + body: body$, userAgent: client._options.userAgent, timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1, }, options); diff --git a/sdks/outpost-typescript/src/funcs/destinationsListAttempts.ts b/sdks/outpost-typescript/src/funcs/destinationsListAttempts.ts index 14623dd1..c265d673 100644 --- a/sdks/outpost-typescript/src/funcs/destinationsListAttempts.ts +++ b/sdks/outpost-typescript/src/funcs/destinationsListAttempts.ts @@ -3,6 +3,7 @@ */ import { OutpostCore } from "../core.js"; +import { dlv } from "../lib/dlv.js"; import { encodeFormQuery, encodeSimple } from "../lib/encodings.js"; import * as M from "../lib/matchers.js"; import { compactMap } from "../lib/primitives.js"; @@ -10,7 +11,6 @@ import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; -import * as components from "../models/components/index.js"; import { ConnectionError, InvalidRequestError, @@ -25,6 +25,12 @@ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import * as operations from "../models/operations/index.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; +import { + createPageIterator, + haltIterator, + PageIterator, + Paginator, +} from "../types/operations.js"; /** * List Destination Attempts @@ -37,19 +43,22 @@ export function destinationsListAttempts( request: operations.ListTenantDestinationAttemptsRequest, options?: RequestOptions, ): APIPromise< - Result< - components.AttemptPaginatedResult, - | errors.UnauthorizedError - | errors.NotFoundError - | errors.InternalServerError - | OutpostError - | ResponseValidationError - | ConnectionError - | RequestAbortedError - | RequestTimeoutError - | InvalidRequestError - | UnexpectedClientError - | SDKValidationError + PageIterator< + Result< + operations.ListTenantDestinationAttemptsResponse, + | errors.UnauthorizedError + | errors.NotFoundError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + >, + { cursor: string } > > { return new APIPromise($do( @@ -65,19 +74,22 @@ async function $do( options?: RequestOptions, ): Promise< [ - Result< - components.AttemptPaginatedResult, - | errors.UnauthorizedError - | errors.NotFoundError - | errors.InternalServerError - | OutpostError - | ResponseValidationError - | ConnectionError - | RequestAbortedError - | RequestTimeoutError - | InvalidRequestError - | UnexpectedClientError - | SDKValidationError + PageIterator< + Result< + operations.ListTenantDestinationAttemptsResponse, + | errors.UnauthorizedError + | errors.NotFoundError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + >, + { cursor: string } >, APICall, ] @@ -91,7 +103,7 @@ async function $do( "Input validation failed", ); if (!parsed.ok) { - return [parsed, { status: "invalid" }]; + return [haltIterator(parsed), { status: "invalid" }]; } const payload = parsed.value; const body = null; @@ -120,7 +132,9 @@ async function $do( "order_by": payload.order_by, "prev": payload.prev, "status": payload.status, + "time[gt]": payload["time[gt]"], "time[gte]": payload["time[gte]"], + "time[lt]": payload["time[lt]"], "time[lte]": payload["time[lte]"], "topic": payload.topic, }); @@ -160,7 +174,7 @@ async function $do( timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1, }, options); if (!requestRes.ok) { - return [requestRes, { status: "invalid" }]; + return [haltIterator(requestRes), { status: "invalid" }]; } const req = requestRes.value; @@ -171,7 +185,7 @@ async function $do( retryCodes: context.retryCodes, }); if (!doResult.ok) { - return [doResult, { status: "request-error", request: req }]; + return [haltIterator(doResult), { status: "request-error", request: req }]; } const response = doResult.value; @@ -179,8 +193,8 @@ async function $do( HttpMeta: { Response: response, Request: req }, }; - const [result] = await M.match< - components.AttemptPaginatedResult, + const [result, raw] = await M.match< + operations.ListTenantDestinationAttemptsResponse, | errors.UnauthorizedError | errors.NotFoundError | errors.InternalServerError @@ -193,7 +207,11 @@ async function $do( | UnexpectedClientError | SDKValidationError >( - M.json(200, components.AttemptPaginatedResult$inboundSchema), + M.json( + 200, + operations.ListTenantDestinationAttemptsResponse$inboundSchema, + { key: "Result" }, + ), M.jsonErr(401, errors.UnauthorizedError$inboundSchema), M.jsonErr(404, errors.NotFoundError$inboundSchema), M.jsonErr(500, errors.InternalServerError$inboundSchema), @@ -201,8 +219,67 @@ async function $do( M.fail("5XX"), )(response, req, { extraFields: responseFields }); if (!result.ok) { - return [result, { status: "complete", request: req, response }]; + return [haltIterator(result), { + status: "complete", + request: req, + response, + }]; } - return [result, { status: "complete", request: req, response }]; + const nextFunc = ( + responseData: unknown, + ): { + next: Paginator< + Result< + operations.ListTenantDestinationAttemptsResponse, + | errors.UnauthorizedError + | errors.NotFoundError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + > + >; + "~next"?: { cursor: string }; + } => { + const nextCursor = dlv(responseData, "pagination.next"); + if (typeof nextCursor !== "string") { + return { next: () => null }; + } + if (nextCursor.trim() === "") { + return { next: () => null }; + } + const results = dlv(responseData, "models"); + if (!Array.isArray(results) || !results.length) { + return { next: () => null }; + } + const limit = request?.limit ?? 100; + if (results.length < limit) { + return { next: () => null }; + } + + const nextVal = () => + destinationsListAttempts( + client, + { + ...request, + next: nextCursor, + }, + options, + ); + + return { next: nextVal, "~next": { cursor: nextCursor } }; + }; + + const page = { ...result, ...nextFunc(raw) }; + return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, { + status: "complete", + request: req, + response, + }]; } diff --git a/sdks/outpost-typescript/src/funcs/destinationsUpdate.ts b/sdks/outpost-typescript/src/funcs/destinationsUpdate.ts index 43fae84e..0bb684aa 100644 --- a/sdks/outpost-typescript/src/funcs/destinationsUpdate.ts +++ b/sdks/outpost-typescript/src/funcs/destinationsUpdate.ts @@ -36,7 +36,7 @@ export function destinationsUpdate( client: OutpostCore, tenantId: string, destinationId: string, - params: components.DestinationUpdate, + body: components.DestinationUpdate, options?: RequestOptions, ): APIPromise< Result< @@ -59,7 +59,7 @@ export function destinationsUpdate( client, tenantId, destinationId, - params, + body, options, )); } @@ -68,7 +68,7 @@ async function $do( client: OutpostCore, tenantId: string, destinationId: string, - params: components.DestinationUpdate, + body: components.DestinationUpdate, options?: RequestOptions, ): Promise< [ @@ -93,7 +93,7 @@ async function $do( const input: operations.UpdateTenantDestinationRequest = { tenantId: tenantId, destinationId: destinationId, - params: params, + body: body, }; const parsed = safeParse( @@ -106,7 +106,7 @@ async function $do( return [parsed, { status: "invalid" }]; } const payload = parsed.value; - const body = encodeJSON("body", payload.params, { explode: true }); + const body$ = encodeJSON("body", payload.body, { explode: true }); const pathParams = { destination_id: encodeSimple("destination_id", payload.destination_id, { @@ -153,7 +153,7 @@ async function $do( baseURL: options?.serverURL, path: path, headers: headers, - body: body, + body: body$, userAgent: client._options.userAgent, timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1, }, options); diff --git a/sdks/outpost-typescript/src/funcs/eventsList.ts b/sdks/outpost-typescript/src/funcs/eventsList.ts index 0dd9e075..1a7753c4 100644 --- a/sdks/outpost-typescript/src/funcs/eventsList.ts +++ b/sdks/outpost-typescript/src/funcs/eventsList.ts @@ -3,6 +3,7 @@ */ import { OutpostCore } from "../core.js"; +import { dlv } from "../lib/dlv.js"; import { encodeFormQuery } from "../lib/encodings.js"; import * as M from "../lib/matchers.js"; import { compactMap } from "../lib/primitives.js"; @@ -10,7 +11,6 @@ import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; -import * as components from "../models/components/index.js"; import { ConnectionError, InvalidRequestError, @@ -25,6 +25,12 @@ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import * as operations from "../models/operations/index.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; +import { + createPageIterator, + haltIterator, + PageIterator, + Paginator, +} from "../types/operations.js"; /** * List Events @@ -40,18 +46,21 @@ export function eventsList( request: operations.ListEventsRequest, options?: RequestOptions, ): APIPromise< - Result< - components.EventPaginatedResult, - | errors.UnauthorizedError - | errors.InternalServerError - | OutpostError - | ResponseValidationError - | ConnectionError - | RequestAbortedError - | RequestTimeoutError - | InvalidRequestError - | UnexpectedClientError - | SDKValidationError + PageIterator< + Result< + operations.ListEventsResponse, + | errors.UnauthorizedError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + >, + { cursor: string } > > { return new APIPromise($do( @@ -67,18 +76,21 @@ async function $do( options?: RequestOptions, ): Promise< [ - Result< - components.EventPaginatedResult, - | errors.UnauthorizedError - | errors.InternalServerError - | OutpostError - | ResponseValidationError - | ConnectionError - | RequestAbortedError - | RequestTimeoutError - | InvalidRequestError - | UnexpectedClientError - | SDKValidationError + PageIterator< + Result< + operations.ListEventsResponse, + | errors.UnauthorizedError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + >, + { cursor: string } >, APICall, ] @@ -89,7 +101,7 @@ async function $do( "Input validation failed", ); if (!parsed.ok) { - return [parsed, { status: "invalid" }]; + return [haltIterator(parsed), { status: "invalid" }]; } const payload = parsed.value; const body = null; @@ -98,12 +110,15 @@ async function $do( const query = encodeFormQuery({ "dir": payload.dir, + "id": payload.id, "limit": payload.limit, "next": payload.next, "order_by": payload.order_by, "prev": payload.prev, "tenant_id": payload.tenant_id, + "time[gt]": payload["time[gt]"], "time[gte]": payload["time[gte]"], + "time[lt]": payload["time[lt]"], "time[lte]": payload["time[lte]"], "topic": payload.topic, }); @@ -143,7 +158,7 @@ async function $do( timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1, }, options); if (!requestRes.ok) { - return [requestRes, { status: "invalid" }]; + return [haltIterator(requestRes), { status: "invalid" }]; } const req = requestRes.value; @@ -154,7 +169,7 @@ async function $do( retryCodes: context.retryCodes, }); if (!doResult.ok) { - return [doResult, { status: "request-error", request: req }]; + return [haltIterator(doResult), { status: "request-error", request: req }]; } const response = doResult.value; @@ -162,8 +177,8 @@ async function $do( HttpMeta: { Response: response, Request: req }, }; - const [result] = await M.match< - components.EventPaginatedResult, + const [result, raw] = await M.match< + operations.ListEventsResponse, | errors.UnauthorizedError | errors.InternalServerError | OutpostError @@ -175,15 +190,73 @@ async function $do( | UnexpectedClientError | SDKValidationError >( - M.json(200, components.EventPaginatedResult$inboundSchema), + M.json(200, operations.ListEventsResponse$inboundSchema, { key: "Result" }), M.jsonErr(401, errors.UnauthorizedError$inboundSchema), M.jsonErr(500, errors.InternalServerError$inboundSchema), M.fail("4XX"), M.fail("5XX"), )(response, req, { extraFields: responseFields }); if (!result.ok) { - return [result, { status: "complete", request: req, response }]; + return [haltIterator(result), { + status: "complete", + request: req, + response, + }]; } - return [result, { status: "complete", request: req, response }]; + const nextFunc = ( + responseData: unknown, + ): { + next: Paginator< + Result< + operations.ListEventsResponse, + | errors.UnauthorizedError + | errors.InternalServerError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + > + >; + "~next"?: { cursor: string }; + } => { + const nextCursor = dlv(responseData, "pagination.next"); + if (typeof nextCursor !== "string") { + return { next: () => null }; + } + if (nextCursor.trim() === "") { + return { next: () => null }; + } + const results = dlv(responseData, "models"); + if (!Array.isArray(results) || !results.length) { + return { next: () => null }; + } + const limit = request?.limit ?? 100; + if (results.length < limit) { + return { next: () => null }; + } + + const nextVal = () => + eventsList( + client, + { + ...request, + next: nextCursor, + }, + options, + ); + + return { next: nextVal, "~next": { cursor: nextCursor } }; + }; + + const page = { ...result, ...nextFunc(raw) }; + return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, { + status: "complete", + request: req, + response, + }]; } diff --git a/sdks/outpost-typescript/src/funcs/tenantsListTenants.ts b/sdks/outpost-typescript/src/funcs/tenantsList.ts similarity index 62% rename from sdks/outpost-typescript/src/funcs/tenantsListTenants.ts rename to sdks/outpost-typescript/src/funcs/tenantsList.ts index 5fbc272b..15f93aef 100644 --- a/sdks/outpost-typescript/src/funcs/tenantsListTenants.ts +++ b/sdks/outpost-typescript/src/funcs/tenantsList.ts @@ -3,6 +3,7 @@ */ import { OutpostCore } from "../core.js"; +import { dlv } from "../lib/dlv.js"; import { encodeFormQuery } from "../lib/encodings.js"; import * as M from "../lib/matchers.js"; import { compactMap } from "../lib/primitives.js"; @@ -10,7 +11,6 @@ import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; -import * as components from "../models/components/index.js"; import { ConnectionError, InvalidRequestError, @@ -25,6 +25,12 @@ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import * as operations from "../models/operations/index.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; +import { + createPageIterator, + haltIterator, + PageIterator, + Paginator, +} from "../types/operations.js"; /** * List Tenants @@ -37,51 +43,14 @@ import { Result } from "../types/fp.js"; * * When authenticated with a Tenant JWT, returns only the authenticated tenant. Pagination is not used in this case. */ -export function tenantsListTenants( +export function tenantsList( client: OutpostCore, - limit?: number | undefined, - dir?: operations.ListTenantsDir | undefined, - next?: string | undefined, - prev?: string | undefined, + request: operations.ListTenantsRequest, options?: RequestOptions, ): APIPromise< - Result< - components.TenantPaginatedResult, - | errors.BadRequestError - | errors.UnauthorizedError - | errors.InternalServerError - | errors.NotImplementedError - | OutpostError - | ResponseValidationError - | ConnectionError - | RequestAbortedError - | RequestTimeoutError - | InvalidRequestError - | UnexpectedClientError - | SDKValidationError - > -> { - return new APIPromise($do( - client, - limit, - dir, - next, - prev, - options, - )); -} - -async function $do( - client: OutpostCore, - limit?: number | undefined, - dir?: operations.ListTenantsDir | undefined, - next?: string | undefined, - prev?: string | undefined, - options?: RequestOptions, -): Promise< - [ + PageIterator< Result< - components.TenantPaginatedResult, + operations.ListTenantsResponse, | errors.BadRequestError | errors.UnauthorizedError | errors.InternalServerError @@ -95,23 +64,50 @@ async function $do( | UnexpectedClientError | SDKValidationError >, + { cursor: string } + > +> { + return new APIPromise($do( + client, + request, + options, + )); +} + +async function $do( + client: OutpostCore, + request: operations.ListTenantsRequest, + options?: RequestOptions, +): Promise< + [ + PageIterator< + Result< + operations.ListTenantsResponse, + | errors.BadRequestError + | errors.UnauthorizedError + | errors.InternalServerError + | errors.NotImplementedError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + >, + { cursor: string } + >, APICall, ] > { - const input: operations.ListTenantsRequest = { - limit: limit, - dir: dir, - next: next, - prev: prev, - }; - const parsed = safeParse( - input, + request, (value) => operations.ListTenantsRequest$outboundSchema.parse(value), "Input validation failed", ); if (!parsed.ok) { - return [parsed, { status: "invalid" }]; + return [haltIterator(parsed), { status: "invalid" }]; } const payload = parsed.value; const body = null; @@ -120,6 +116,7 @@ async function $do( const query = encodeFormQuery({ "dir": payload.dir, + "id": payload.id, "limit": payload.limit, "next": payload.next, "prev": payload.prev, @@ -160,7 +157,7 @@ async function $do( timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1, }, options); if (!requestRes.ok) { - return [requestRes, { status: "invalid" }]; + return [haltIterator(requestRes), { status: "invalid" }]; } const req = requestRes.value; @@ -171,7 +168,7 @@ async function $do( retryCodes: context.retryCodes, }); if (!doResult.ok) { - return [doResult, { status: "request-error", request: req }]; + return [haltIterator(doResult), { status: "request-error", request: req }]; } const response = doResult.value; @@ -179,8 +176,8 @@ async function $do( HttpMeta: { Response: response, Request: req }, }; - const [result] = await M.match< - components.TenantPaginatedResult, + const [result, raw] = await M.match< + operations.ListTenantsResponse, | errors.BadRequestError | errors.UnauthorizedError | errors.InternalServerError @@ -194,7 +191,9 @@ async function $do( | UnexpectedClientError | SDKValidationError >( - M.json(200, components.TenantPaginatedResult$inboundSchema), + M.json(200, operations.ListTenantsResponse$inboundSchema, { + key: "Result", + }), M.jsonErr(400, errors.BadRequestError$inboundSchema), M.jsonErr(401, errors.UnauthorizedError$inboundSchema), M.jsonErr(500, errors.InternalServerError$inboundSchema), @@ -203,8 +202,68 @@ async function $do( M.fail("5XX"), )(response, req, { extraFields: responseFields }); if (!result.ok) { - return [result, { status: "complete", request: req, response }]; + return [haltIterator(result), { + status: "complete", + request: req, + response, + }]; } - return [result, { status: "complete", request: req, response }]; + const nextFunc = ( + responseData: unknown, + ): { + next: Paginator< + Result< + operations.ListTenantsResponse, + | errors.BadRequestError + | errors.UnauthorizedError + | errors.InternalServerError + | errors.NotImplementedError + | OutpostError + | ResponseValidationError + | ConnectionError + | RequestAbortedError + | RequestTimeoutError + | InvalidRequestError + | UnexpectedClientError + | SDKValidationError + > + >; + "~next"?: { cursor: string }; + } => { + const nextCursor = dlv(responseData, "pagination.next"); + if (typeof nextCursor !== "string") { + return { next: () => null }; + } + if (nextCursor.trim() === "") { + return { next: () => null }; + } + const results = dlv(responseData, "models"); + if (!Array.isArray(results) || !results.length) { + return { next: () => null }; + } + const limit = request?.limit ?? 20; + if (results.length < limit) { + return { next: () => null }; + } + + const nextVal = () => + tenantsList( + client, + { + ...request, + next: nextCursor, + }, + options, + ); + + return { next: nextVal, "~next": { cursor: nextCursor } }; + }; + + const page = { ...result, ...nextFunc(raw) }; + return [{ ...page, ...createPageIterator(page, (v) => !v.ok) }, { + status: "complete", + request: req, + response, + }]; } diff --git a/sdks/outpost-typescript/src/funcs/tenantsUpsert.ts b/sdks/outpost-typescript/src/funcs/tenantsUpsert.ts index a83beb5a..03de88cb 100644 --- a/sdks/outpost-typescript/src/funcs/tenantsUpsert.ts +++ b/sdks/outpost-typescript/src/funcs/tenantsUpsert.ts @@ -35,7 +35,7 @@ import { Result } from "../types/fp.js"; export function tenantsUpsert( client: OutpostCore, tenantId: string, - params?: components.TenantUpsert | undefined, + body?: components.TenantUpsert | undefined, options?: RequestOptions, ): APIPromise< Result< @@ -56,7 +56,7 @@ export function tenantsUpsert( return new APIPromise($do( client, tenantId, - params, + body, options, )); } @@ -64,7 +64,7 @@ export function tenantsUpsert( async function $do( client: OutpostCore, tenantId: string, - params?: components.TenantUpsert | undefined, + body?: components.TenantUpsert | undefined, options?: RequestOptions, ): Promise< [ @@ -87,7 +87,7 @@ async function $do( > { const input: operations.UpsertTenantRequest = { tenantId: tenantId, - params: params, + body: body, }; const parsed = safeParse( @@ -99,7 +99,7 @@ async function $do( return [parsed, { status: "invalid" }]; } const payload = parsed.value; - const body = encodeJSON("body", payload.params, { explode: true }); + const body$ = encodeJSON("body", payload.body, { explode: true }); const pathParams = { tenant_id: encodeSimple("tenant_id", payload.tenant_id, { @@ -140,7 +140,7 @@ async function $do( baseURL: options?.serverURL, path: path, headers: headers, - body: body, + body: body$, userAgent: client._options.userAgent, timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1, }, options); diff --git a/sdks/outpost-typescript/src/lib/config.ts b/sdks/outpost-typescript/src/lib/config.ts index ff249141..2310cab2 100644 --- a/sdks/outpost-typescript/src/lib/config.ts +++ b/sdks/outpost-typescript/src/lib/config.ts @@ -65,8 +65,8 @@ export function serverURLFromOptions(options: SDKOptions): URL | null { export const SDK_METADATA = { language: "typescript", openapiDocVersion: "0.0.1", - sdkVersion: "0.8.0", - genVersion: "2.849.10", + sdkVersion: "0.9.0", + genVersion: "2.862.0", userAgent: - "speakeasy-sdk/typescript 0.8.0 2.849.10 0.0.1 @hookdeck/outpost-sdk", + "speakeasy-sdk/typescript 0.9.0 2.862.0 0.0.1 @hookdeck/outpost-sdk", } as const; diff --git a/sdks/outpost-typescript/src/mcp-server/mcp-server.ts b/sdks/outpost-typescript/src/mcp-server/mcp-server.ts index a7c3a332..3aa86b65 100644 --- a/sdks/outpost-typescript/src/mcp-server/mcp-server.ts +++ b/sdks/outpost-typescript/src/mcp-server/mcp-server.ts @@ -19,7 +19,7 @@ const routes = buildRouteMap({ export const app = buildApplication(routes, { name: "mcp", versionInfo: { - currentVersion: "0.8.0", + currentVersion: "0.9.0", }, }); diff --git a/sdks/outpost-typescript/src/mcp-server/server.ts b/sdks/outpost-typescript/src/mcp-server/server.ts index e4bf8288..60dc9c93 100644 --- a/sdks/outpost-typescript/src/mcp-server/server.ts +++ b/sdks/outpost-typescript/src/mcp-server/server.ts @@ -35,7 +35,7 @@ import { tool$tenantsDelete } from "./tools/tenantsDelete.js"; import { tool$tenantsGet } from "./tools/tenantsGet.js"; import { tool$tenantsGetPortalUrl } from "./tools/tenantsGetPortalUrl.js"; import { tool$tenantsGetToken } from "./tools/tenantsGetToken.js"; -import { tool$tenantsListTenants } from "./tools/tenantsListTenants.js"; +import { tool$tenantsList } from "./tools/tenantsList.js"; import { tool$tenantsUpsert } from "./tools/tenantsUpsert.js"; import { tool$topicsList } from "./tools/topicsList.js"; @@ -49,7 +49,7 @@ export function createMCPServer(deps: { }) { const server = new McpServer({ name: "Outpost", - version: "0.8.0", + version: "0.9.0", }); const client = new OutpostCore({ @@ -80,7 +80,7 @@ export function createMCPServer(deps: { void register; // suppress unused warnings tool(tool$healthCheck); - tool(tool$tenantsListTenants); + tool(tool$tenantsList); tool(tool$tenantsUpsert); tool(tool$tenantsGet); tool(tool$tenantsDelete); diff --git a/sdks/outpost-typescript/src/mcp-server/tools/attemptsList.ts b/sdks/outpost-typescript/src/mcp-server/tools/attemptsList.ts index 28c25c7c..1f095fe9 100644 --- a/sdks/outpost-typescript/src/mcp-server/tools/attemptsList.ts +++ b/sdks/outpost-typescript/src/mcp-server/tools/attemptsList.ts @@ -34,7 +34,7 @@ When authenticated with Admin API Key, returns attempts across all tenants. Use }; } - const value = result.value; + const value = result.value.result; return formatResult(value, apiCall); }, diff --git a/sdks/outpost-typescript/src/mcp-server/tools/destinationsCreate.ts b/sdks/outpost-typescript/src/mcp-server/tools/destinationsCreate.ts index f50919a8..153392d0 100644 --- a/sdks/outpost-typescript/src/mcp-server/tools/destinationsCreate.ts +++ b/sdks/outpost-typescript/src/mcp-server/tools/destinationsCreate.ts @@ -9,7 +9,7 @@ import { formatResult, ToolDefinition } from "../tools.js"; const args = { tenantId: z.string(), - params: components.DestinationCreate$inboundSchema, + body: components.DestinationCreate$inboundSchema, }; export const tool$destinationsCreate: ToolDefinition = { @@ -22,7 +22,7 @@ Creates a new destination for the tenant. The request body structure depends on const [result, apiCall] = await destinationsCreate( client, args.tenantId, - args.params, + args.body, { fetchOptions: { signal: ctx.signal } }, ).$inspect(); diff --git a/sdks/outpost-typescript/src/mcp-server/tools/destinationsListAttempts.ts b/sdks/outpost-typescript/src/mcp-server/tools/destinationsListAttempts.ts index cb14f136..fb72cb92 100644 --- a/sdks/outpost-typescript/src/mcp-server/tools/destinationsListAttempts.ts +++ b/sdks/outpost-typescript/src/mcp-server/tools/destinationsListAttempts.ts @@ -30,7 +30,7 @@ Retrieves a paginated list of attempts scoped to a specific destination.`, }; } - const value = result.value; + const value = result.value.result; return formatResult(value, apiCall); }, diff --git a/sdks/outpost-typescript/src/mcp-server/tools/destinationsUpdate.ts b/sdks/outpost-typescript/src/mcp-server/tools/destinationsUpdate.ts index 8f2e6f35..709cbf4c 100644 --- a/sdks/outpost-typescript/src/mcp-server/tools/destinationsUpdate.ts +++ b/sdks/outpost-typescript/src/mcp-server/tools/destinationsUpdate.ts @@ -10,7 +10,7 @@ import { formatResult, ToolDefinition } from "../tools.js"; const args = { tenantId: z.string(), destinationId: z.string(), - params: components.DestinationUpdate$inboundSchema, + body: components.DestinationUpdate$inboundSchema, }; export const tool$destinationsUpdate: ToolDefinition = { @@ -24,7 +24,7 @@ Updates the configuration of an existing destination. The request body structure client, args.tenantId, args.destinationId, - args.params, + args.body, { fetchOptions: { signal: ctx.signal } }, ).$inspect(); diff --git a/sdks/outpost-typescript/src/mcp-server/tools/eventsList.ts b/sdks/outpost-typescript/src/mcp-server/tools/eventsList.ts index 3489f72a..e1431052 100644 --- a/sdks/outpost-typescript/src/mcp-server/tools/eventsList.ts +++ b/sdks/outpost-typescript/src/mcp-server/tools/eventsList.ts @@ -34,7 +34,7 @@ When authenticated with Admin API Key, returns events across all tenants. Use \` }; } - const value = result.value; + const value = result.value.result; return formatResult(value, apiCall); }, diff --git a/sdks/outpost-typescript/src/mcp-server/tools/tenantsListTenants.ts b/sdks/outpost-typescript/src/mcp-server/tools/tenantsList.ts similarity index 63% rename from sdks/outpost-typescript/src/mcp-server/tools/tenantsListTenants.ts rename to sdks/outpost-typescript/src/mcp-server/tools/tenantsList.ts index ea3fcb2f..956f025d 100644 --- a/sdks/outpost-typescript/src/mcp-server/tools/tenantsListTenants.ts +++ b/sdks/outpost-typescript/src/mcp-server/tools/tenantsList.ts @@ -2,20 +2,16 @@ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ -import * as z from "zod/v3"; -import { tenantsListTenants } from "../../funcs/tenantsListTenants.js"; +import { tenantsList } from "../../funcs/tenantsList.js"; import * as operations from "../../models/operations/index.js"; import { formatResult, ToolDefinition } from "../tools.js"; const args = { - limit: z.number().int().default(20), - dir: operations.ListTenantsDir$inboundSchema.default("desc"), - next: z.string().optional(), - prev: z.string().optional(), + request: operations.ListTenantsRequest$inboundSchema, }; -export const tool$tenantsListTenants: ToolDefinition = { - name: "tenants-list-tenants", +export const tool$tenantsList: ToolDefinition = { + name: "tenants-list", description: `List Tenants List all tenants with cursor-based pagination. @@ -27,12 +23,9 @@ When authenticated with a Tenant JWT, returns only the authenticated tenant. Pag `, args, tool: async (client, args, ctx) => { - const [result, apiCall] = await tenantsListTenants( + const [result, apiCall] = await tenantsList( client, - args.limit, - args.dir, - args.next, - args.prev, + args.request, { fetchOptions: { signal: ctx.signal } }, ).$inspect(); @@ -43,7 +36,7 @@ When authenticated with a Tenant JWT, returns only the authenticated tenant. Pag }; } - const value = result.value; + const value = result.value.result; return formatResult(value, apiCall); }, diff --git a/sdks/outpost-typescript/src/mcp-server/tools/tenantsUpsert.ts b/sdks/outpost-typescript/src/mcp-server/tools/tenantsUpsert.ts index 79d5f4ad..5cb69968 100644 --- a/sdks/outpost-typescript/src/mcp-server/tools/tenantsUpsert.ts +++ b/sdks/outpost-typescript/src/mcp-server/tools/tenantsUpsert.ts @@ -9,7 +9,7 @@ import { formatResult, ToolDefinition } from "../tools.js"; const args = { tenantId: z.string(), - params: components.TenantUpsert$inboundSchema.optional(), + body: components.TenantUpsert$inboundSchema.optional(), }; export const tool$tenantsUpsert: ToolDefinition = { @@ -22,7 +22,7 @@ Idempotently creates or updates a tenant. Required before associating destinatio const [result, apiCall] = await tenantsUpsert( client, args.tenantId, - args.params, + args.body, { fetchOptions: { signal: ctx.signal } }, ).$inspect(); diff --git a/sdks/outpost-typescript/src/models/operations/createtenantdestination.ts b/sdks/outpost-typescript/src/models/operations/createtenantdestination.ts index 5e50398e..6ced17e8 100644 --- a/sdks/outpost-typescript/src/models/operations/createtenantdestination.ts +++ b/sdks/outpost-typescript/src/models/operations/createtenantdestination.ts @@ -14,7 +14,7 @@ export type CreateTenantDestinationRequest = { * The ID of the tenant. Required when using AdminApiKey authentication. */ tenantId: string; - params: components.DestinationCreate; + body: components.DestinationCreate; }; /** @internal */ @@ -24,7 +24,7 @@ export const CreateTenantDestinationRequest$inboundSchema: z.ZodType< unknown > = z.object({ tenant_id: z.string(), - params: components.DestinationCreate$inboundSchema, + body: components.DestinationCreate$inboundSchema, }).transform((v) => { return remap$(v, { "tenant_id": "tenantId", @@ -33,7 +33,7 @@ export const CreateTenantDestinationRequest$inboundSchema: z.ZodType< /** @internal */ export type CreateTenantDestinationRequest$Outbound = { tenant_id: string; - params: components.DestinationCreate$Outbound; + body: components.DestinationCreate$Outbound; }; /** @internal */ @@ -43,7 +43,7 @@ export const CreateTenantDestinationRequest$outboundSchema: z.ZodType< CreateTenantDestinationRequest > = z.object({ tenantId: z.string(), - params: components.DestinationCreate$outboundSchema, + body: components.DestinationCreate$outboundSchema, }).transform((v) => { return remap$(v, { tenantId: "tenant_id", diff --git a/sdks/outpost-typescript/src/models/operations/getattempt.ts b/sdks/outpost-typescript/src/models/operations/getattempt.ts index 8949f086..d7d95014 100644 --- a/sdks/outpost-typescript/src/models/operations/getattempt.ts +++ b/sdks/outpost-typescript/src/models/operations/getattempt.ts @@ -9,7 +9,7 @@ import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) @@ -24,7 +24,7 @@ export type GetAttemptRequest = { */ attemptId: string; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) diff --git a/sdks/outpost-typescript/src/models/operations/gettenantdestinationattempt.ts b/sdks/outpost-typescript/src/models/operations/gettenantdestinationattempt.ts index e9b5264a..7fdfac8c 100644 --- a/sdks/outpost-typescript/src/models/operations/gettenantdestinationattempt.ts +++ b/sdks/outpost-typescript/src/models/operations/gettenantdestinationattempt.ts @@ -9,7 +9,7 @@ import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary @@ -32,7 +32,7 @@ export type GetTenantDestinationAttemptRequest = { */ attemptId: string; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary diff --git a/sdks/outpost-typescript/src/models/operations/listattempts.ts b/sdks/outpost-typescript/src/models/operations/listattempts.ts index e54575e1..31a8e99f 100644 --- a/sdks/outpost-typescript/src/models/operations/listattempts.ts +++ b/sdks/outpost-typescript/src/models/operations/listattempts.ts @@ -7,8 +7,28 @@ import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; +import * as components from "../components/index.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; +/** + * Filter attempts by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`). + * + * @remarks + * When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used. + * If not provided with API key auth, returns attempts from all tenants. + */ +export type ListAttemptsTenantId = string | Array; + +/** + * Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). + */ +export type ListAttemptsEventId = string | Array; + +/** + * Filter attempts by destination ID(s). Use bracket notation for multiple values (e.g., `destination_id[0]=d1&destination_id[1]=d2`). + */ +export type DestinationId = string | Array; + /** * Filter attempts by status. */ @@ -22,12 +42,12 @@ export const ListAttemptsStatus = { export type ListAttemptsStatus = ClosedEnum; /** - * Filter attempts by event topic(s). Can be specified multiple times or comma-separated. + * Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). */ export type ListAttemptsTopic = string | Array; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) @@ -61,23 +81,27 @@ export type ListAttemptsDir = ClosedEnum; export type ListAttemptsRequest = { /** - * Filter attempts by tenant ID. If not provided, returns attempts from all tenants. + * Filter attempts by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`). + * + * @remarks + * When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used. + * If not provided with API key auth, returns attempts from all tenants. */ - tenantId?: string | undefined; + tenantId?: string | Array | undefined; /** - * Filter attempts by event ID. + * Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). */ - eventId?: string | undefined; + eventId?: string | Array | undefined; /** - * Filter attempts by destination ID. + * Filter attempts by destination ID(s). Use bracket notation for multiple values (e.g., `destination_id[0]=d1&destination_id[1]=d2`). */ - destinationId?: string | undefined; + destinationId?: string | Array | undefined; /** * Filter attempts by status. */ status?: ListAttemptsStatus | undefined; /** - * Filter attempts by event topic(s). Can be specified multiple times or comma-separated. + * Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). */ topic?: string | Array | undefined; /** @@ -88,6 +112,14 @@ export type ListAttemptsRequest = { * Filter attempts by event time <= value (RFC3339 or YYYY-MM-DD format). */ timeLte?: Date | undefined; + /** + * Filter attempts by event time > value (RFC3339 or YYYY-MM-DD format). + */ + timeGt?: Date | undefined; + /** + * Filter attempts by event time < value (RFC3339 or YYYY-MM-DD format). + */ + timeLt?: Date | undefined; /** * Number of items per page (default 100, max 1000). */ @@ -101,7 +133,7 @@ export type ListAttemptsRequest = { */ prev?: string | undefined; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) @@ -119,6 +151,105 @@ export type ListAttemptsRequest = { dir?: ListAttemptsDir | undefined; }; +export type ListAttemptsResponse = { + result: components.AttemptPaginatedResult; +}; + +/** @internal */ +export const ListAttemptsTenantId$inboundSchema: z.ZodType< + ListAttemptsTenantId, + z.ZodTypeDef, + unknown +> = z.union([z.string(), z.array(z.string())]); +/** @internal */ +export type ListAttemptsTenantId$Outbound = string | Array; + +/** @internal */ +export const ListAttemptsTenantId$outboundSchema: z.ZodType< + ListAttemptsTenantId$Outbound, + z.ZodTypeDef, + ListAttemptsTenantId +> = z.union([z.string(), z.array(z.string())]); + +export function listAttemptsTenantIdToJSON( + listAttemptsTenantId: ListAttemptsTenantId, +): string { + return JSON.stringify( + ListAttemptsTenantId$outboundSchema.parse(listAttemptsTenantId), + ); +} +export function listAttemptsTenantIdFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListAttemptsTenantId$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListAttemptsTenantId' from JSON`, + ); +} + +/** @internal */ +export const ListAttemptsEventId$inboundSchema: z.ZodType< + ListAttemptsEventId, + z.ZodTypeDef, + unknown +> = z.union([z.string(), z.array(z.string())]); +/** @internal */ +export type ListAttemptsEventId$Outbound = string | Array; + +/** @internal */ +export const ListAttemptsEventId$outboundSchema: z.ZodType< + ListAttemptsEventId$Outbound, + z.ZodTypeDef, + ListAttemptsEventId +> = z.union([z.string(), z.array(z.string())]); + +export function listAttemptsEventIdToJSON( + listAttemptsEventId: ListAttemptsEventId, +): string { + return JSON.stringify( + ListAttemptsEventId$outboundSchema.parse(listAttemptsEventId), + ); +} +export function listAttemptsEventIdFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListAttemptsEventId$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListAttemptsEventId' from JSON`, + ); +} + +/** @internal */ +export const DestinationId$inboundSchema: z.ZodType< + DestinationId, + z.ZodTypeDef, + unknown +> = z.union([z.string(), z.array(z.string())]); +/** @internal */ +export type DestinationId$Outbound = string | Array; + +/** @internal */ +export const DestinationId$outboundSchema: z.ZodType< + DestinationId$Outbound, + z.ZodTypeDef, + DestinationId +> = z.union([z.string(), z.array(z.string())]); + +export function destinationIdToJSON(destinationId: DestinationId): string { + return JSON.stringify(DestinationId$outboundSchema.parse(destinationId)); +} +export function destinationIdFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => DestinationId$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'DestinationId' from JSON`, + ); +} + /** @internal */ export const ListAttemptsStatus$inboundSchema: z.ZodNativeEnum< typeof ListAttemptsStatus @@ -218,15 +349,19 @@ export const ListAttemptsRequest$inboundSchema: z.ZodType< z.ZodTypeDef, unknown > = z.object({ - tenant_id: z.string().optional(), - event_id: z.string().optional(), - destination_id: z.string().optional(), + tenant_id: z.union([z.string(), z.array(z.string())]).optional(), + event_id: z.union([z.string(), z.array(z.string())]).optional(), + destination_id: z.union([z.string(), z.array(z.string())]).optional(), status: ListAttemptsStatus$inboundSchema.optional(), topic: z.union([z.string(), z.array(z.string())]).optional(), "time[gte]": z.string().datetime({ offset: true }).transform(v => new Date(v)) .optional(), "time[lte]": z.string().datetime({ offset: true }).transform(v => new Date(v)) .optional(), + "time[gt]": z.string().datetime({ offset: true }).transform(v => new Date(v)) + .optional(), + "time[lt]": z.string().datetime({ offset: true }).transform(v => new Date(v)) + .optional(), limit: z.number().int().default(100), next: z.string().optional(), prev: z.string().optional(), @@ -240,18 +375,22 @@ export const ListAttemptsRequest$inboundSchema: z.ZodType< "destination_id": "destinationId", "time[gte]": "timeGte", "time[lte]": "timeLte", + "time[gt]": "timeGt", + "time[lt]": "timeLt", "order_by": "orderBy", }); }); /** @internal */ export type ListAttemptsRequest$Outbound = { - tenant_id?: string | undefined; - event_id?: string | undefined; - destination_id?: string | undefined; + tenant_id?: string | Array | undefined; + event_id?: string | Array | undefined; + destination_id?: string | Array | undefined; status?: string | undefined; topic?: string | Array | undefined; "time[gte]"?: string | undefined; "time[lte]"?: string | undefined; + "time[gt]"?: string | undefined; + "time[lt]"?: string | undefined; limit: number; next?: string | undefined; prev?: string | undefined; @@ -266,13 +405,15 @@ export const ListAttemptsRequest$outboundSchema: z.ZodType< z.ZodTypeDef, ListAttemptsRequest > = z.object({ - tenantId: z.string().optional(), - eventId: z.string().optional(), - destinationId: z.string().optional(), + tenantId: z.union([z.string(), z.array(z.string())]).optional(), + eventId: z.union([z.string(), z.array(z.string())]).optional(), + destinationId: z.union([z.string(), z.array(z.string())]).optional(), status: ListAttemptsStatus$outboundSchema.optional(), topic: z.union([z.string(), z.array(z.string())]).optional(), timeGte: z.date().transform(v => v.toISOString()).optional(), timeLte: z.date().transform(v => v.toISOString()).optional(), + timeGt: z.date().transform(v => v.toISOString()).optional(), + timeLt: z.date().transform(v => v.toISOString()).optional(), limit: z.number().int().default(100), next: z.string().optional(), prev: z.string().optional(), @@ -286,6 +427,8 @@ export const ListAttemptsRequest$outboundSchema: z.ZodType< destinationId: "destination_id", timeGte: "time[gte]", timeLte: "time[lte]", + timeGt: "time[gt]", + timeLt: "time[lt]", orderBy: "order_by", }); }); @@ -306,3 +449,50 @@ export function listAttemptsRequestFromJSON( `Failed to parse 'ListAttemptsRequest' from JSON`, ); } + +/** @internal */ +export const ListAttemptsResponse$inboundSchema: z.ZodType< + ListAttemptsResponse, + z.ZodTypeDef, + unknown +> = z.object({ + Result: components.AttemptPaginatedResult$inboundSchema, +}).transform((v) => { + return remap$(v, { + "Result": "result", + }); +}); +/** @internal */ +export type ListAttemptsResponse$Outbound = { + Result: components.AttemptPaginatedResult$Outbound; +}; + +/** @internal */ +export const ListAttemptsResponse$outboundSchema: z.ZodType< + ListAttemptsResponse$Outbound, + z.ZodTypeDef, + ListAttemptsResponse +> = z.object({ + result: components.AttemptPaginatedResult$outboundSchema, +}).transform((v) => { + return remap$(v, { + result: "Result", + }); +}); + +export function listAttemptsResponseToJSON( + listAttemptsResponse: ListAttemptsResponse, +): string { + return JSON.stringify( + ListAttemptsResponse$outboundSchema.parse(listAttemptsResponse), + ); +} +export function listAttemptsResponseFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListAttemptsResponse$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListAttemptsResponse' from JSON`, + ); +} diff --git a/sdks/outpost-typescript/src/models/operations/listevents.ts b/sdks/outpost-typescript/src/models/operations/listevents.ts index b6f69afd..905f1834 100644 --- a/sdks/outpost-typescript/src/models/operations/listevents.ts +++ b/sdks/outpost-typescript/src/models/operations/listevents.ts @@ -7,10 +7,25 @@ import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; +import * as components from "../components/index.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** - * Filter events by topic(s). Can be specified multiple times or comma-separated. + * Filter events by ID(s). Use bracket notation for multiple values (e.g., `id[0]=abc&id[1]=def`). + */ +export type ListEventsId = string | Array; + +/** + * Filter events by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`). + * + * @remarks + * When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used. + * If not provided with API key auth, returns events from all tenants. + */ +export type ListEventsTenantId = string | Array; + +/** + * Filter events by topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). */ export type ListEventsTopic = string | Array; @@ -39,11 +54,19 @@ export type ListEventsDir = ClosedEnum; export type ListEventsRequest = { /** - * Filter events by tenant ID. If not provided, returns events from all tenants. + * Filter events by ID(s). Use bracket notation for multiple values (e.g., `id[0]=abc&id[1]=def`). */ - tenantId?: string | undefined; + id?: string | Array | undefined; /** - * Filter events by topic(s). Can be specified multiple times or comma-separated. + * Filter events by tenant ID(s). Use bracket notation for multiple values (e.g., `tenant_id[0]=t1&tenant_id[1]=t2`). + * + * @remarks + * When authenticated with a Tenant JWT, this parameter is ignored and the JWT's tenant is used. + * If not provided with API key auth, returns events from all tenants. + */ + tenantId?: string | Array | undefined; + /** + * Filter events by topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). */ topic?: string | Array | undefined; /** @@ -54,6 +77,14 @@ export type ListEventsRequest = { * Filter events with time <= value (RFC3339 or YYYY-MM-DD format). */ timeLte?: Date | undefined; + /** + * Filter events with time > value (RFC3339 or YYYY-MM-DD format). + */ + timeGt?: Date | undefined; + /** + * Filter events with time < value (RFC3339 or YYYY-MM-DD format). + */ + timeLt?: Date | undefined; /** * Number of items per page (default 100, max 1000). */ @@ -76,6 +107,72 @@ export type ListEventsRequest = { dir?: ListEventsDir | undefined; }; +export type ListEventsResponse = { + result: components.EventPaginatedResult; +}; + +/** @internal */ +export const ListEventsId$inboundSchema: z.ZodType< + ListEventsId, + z.ZodTypeDef, + unknown +> = z.union([z.string(), z.array(z.string())]); +/** @internal */ +export type ListEventsId$Outbound = string | Array; + +/** @internal */ +export const ListEventsId$outboundSchema: z.ZodType< + ListEventsId$Outbound, + z.ZodTypeDef, + ListEventsId +> = z.union([z.string(), z.array(z.string())]); + +export function listEventsIdToJSON(listEventsId: ListEventsId): string { + return JSON.stringify(ListEventsId$outboundSchema.parse(listEventsId)); +} +export function listEventsIdFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListEventsId$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListEventsId' from JSON`, + ); +} + +/** @internal */ +export const ListEventsTenantId$inboundSchema: z.ZodType< + ListEventsTenantId, + z.ZodTypeDef, + unknown +> = z.union([z.string(), z.array(z.string())]); +/** @internal */ +export type ListEventsTenantId$Outbound = string | Array; + +/** @internal */ +export const ListEventsTenantId$outboundSchema: z.ZodType< + ListEventsTenantId$Outbound, + z.ZodTypeDef, + ListEventsTenantId +> = z.union([z.string(), z.array(z.string())]); + +export function listEventsTenantIdToJSON( + listEventsTenantId: ListEventsTenantId, +): string { + return JSON.stringify( + ListEventsTenantId$outboundSchema.parse(listEventsTenantId), + ); +} +export function listEventsTenantIdFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListEventsTenantId$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListEventsTenantId' from JSON`, + ); +} + /** @internal */ export const ListEventsTopic$inboundSchema: z.ZodType< ListEventsTopic, @@ -131,12 +228,17 @@ export const ListEventsRequest$inboundSchema: z.ZodType< z.ZodTypeDef, unknown > = z.object({ - tenant_id: z.string().optional(), + id: z.union([z.string(), z.array(z.string())]).optional(), + tenant_id: z.union([z.string(), z.array(z.string())]).optional(), topic: z.union([z.string(), z.array(z.string())]).optional(), "time[gte]": z.string().datetime({ offset: true }).transform(v => new Date(v)) .optional(), "time[lte]": z.string().datetime({ offset: true }).transform(v => new Date(v)) .optional(), + "time[gt]": z.string().datetime({ offset: true }).transform(v => new Date(v)) + .optional(), + "time[lt]": z.string().datetime({ offset: true }).transform(v => new Date(v)) + .optional(), limit: z.number().int().default(100), next: z.string().optional(), prev: z.string().optional(), @@ -147,15 +249,20 @@ export const ListEventsRequest$inboundSchema: z.ZodType< "tenant_id": "tenantId", "time[gte]": "timeGte", "time[lte]": "timeLte", + "time[gt]": "timeGt", + "time[lt]": "timeLt", "order_by": "orderBy", }); }); /** @internal */ export type ListEventsRequest$Outbound = { - tenant_id?: string | undefined; + id?: string | Array | undefined; + tenant_id?: string | Array | undefined; topic?: string | Array | undefined; "time[gte]"?: string | undefined; "time[lte]"?: string | undefined; + "time[gt]"?: string | undefined; + "time[lt]"?: string | undefined; limit: number; next?: string | undefined; prev?: string | undefined; @@ -169,10 +276,13 @@ export const ListEventsRequest$outboundSchema: z.ZodType< z.ZodTypeDef, ListEventsRequest > = z.object({ - tenantId: z.string().optional(), + id: z.union([z.string(), z.array(z.string())]).optional(), + tenantId: z.union([z.string(), z.array(z.string())]).optional(), topic: z.union([z.string(), z.array(z.string())]).optional(), timeGte: z.date().transform(v => v.toISOString()).optional(), timeLte: z.date().transform(v => v.toISOString()).optional(), + timeGt: z.date().transform(v => v.toISOString()).optional(), + timeLt: z.date().transform(v => v.toISOString()).optional(), limit: z.number().int().default(100), next: z.string().optional(), prev: z.string().optional(), @@ -183,6 +293,8 @@ export const ListEventsRequest$outboundSchema: z.ZodType< tenantId: "tenant_id", timeGte: "time[gte]", timeLte: "time[lte]", + timeGt: "time[gt]", + timeLt: "time[lt]", orderBy: "order_by", }); }); @@ -203,3 +315,50 @@ export function listEventsRequestFromJSON( `Failed to parse 'ListEventsRequest' from JSON`, ); } + +/** @internal */ +export const ListEventsResponse$inboundSchema: z.ZodType< + ListEventsResponse, + z.ZodTypeDef, + unknown +> = z.object({ + Result: components.EventPaginatedResult$inboundSchema, +}).transform((v) => { + return remap$(v, { + "Result": "result", + }); +}); +/** @internal */ +export type ListEventsResponse$Outbound = { + Result: components.EventPaginatedResult$Outbound; +}; + +/** @internal */ +export const ListEventsResponse$outboundSchema: z.ZodType< + ListEventsResponse$Outbound, + z.ZodTypeDef, + ListEventsResponse +> = z.object({ + result: components.EventPaginatedResult$outboundSchema, +}).transform((v) => { + return remap$(v, { + result: "Result", + }); +}); + +export function listEventsResponseToJSON( + listEventsResponse: ListEventsResponse, +): string { + return JSON.stringify( + ListEventsResponse$outboundSchema.parse(listEventsResponse), + ); +} +export function listEventsResponseFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListEventsResponse$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListEventsResponse' from JSON`, + ); +} diff --git a/sdks/outpost-typescript/src/models/operations/listtenantdestinationattempts.ts b/sdks/outpost-typescript/src/models/operations/listtenantdestinationattempts.ts index 67cd60c9..828c7c51 100644 --- a/sdks/outpost-typescript/src/models/operations/listtenantdestinationattempts.ts +++ b/sdks/outpost-typescript/src/models/operations/listtenantdestinationattempts.ts @@ -7,8 +7,14 @@ import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; +import * as components from "../components/index.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; +/** + * Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). + */ +export type ListTenantDestinationAttemptsEventId = string | Array; + /** * Filter attempts by status. */ @@ -24,12 +30,12 @@ export type ListTenantDestinationAttemptsStatus = ClosedEnum< >; /** - * Filter attempts by event topic(s). Can be specified multiple times or comma-separated. + * Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). */ export type ListTenantDestinationAttemptsTopic = string | Array; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) @@ -75,15 +81,15 @@ export type ListTenantDestinationAttemptsRequest = { */ destinationId: string; /** - * Filter attempts by event ID. + * Filter attempts by event ID(s). Use bracket notation for multiple values (e.g., `event_id[0]=e1&event_id[1]=e2`). */ - eventId?: string | undefined; + eventId?: string | Array | undefined; /** * Filter attempts by status. */ status?: ListTenantDestinationAttemptsStatus | undefined; /** - * Filter attempts by event topic(s). Can be specified multiple times or comma-separated. + * Filter attempts by event topic(s). Use bracket notation for multiple values (e.g., `topic[0]=user.created&topic[1]=user.updated`). */ topic?: string | Array | undefined; /** @@ -94,6 +100,14 @@ export type ListTenantDestinationAttemptsRequest = { * Filter attempts by event time <= value (RFC3339 or YYYY-MM-DD format). */ timeLte?: Date | undefined; + /** + * Filter attempts by event time > value (RFC3339 or YYYY-MM-DD format). + */ + timeGt?: Date | undefined; + /** + * Filter attempts by event time < value (RFC3339 or YYYY-MM-DD format). + */ + timeLt?: Date | undefined; /** * Number of items per page (default 100, max 1000). */ @@ -107,7 +121,7 @@ export type ListTenantDestinationAttemptsRequest = { */ prev?: string | undefined; /** - * Fields to include in the response. Can be specified multiple times or comma-separated. + * Fields to include in the response. Use bracket notation for multiple values (e.g., `include[0]=event&include[1]=response_data`). * * @remarks * - `event`: Include event summary (id, topic, time, eligible_for_retry, metadata) @@ -125,6 +139,48 @@ export type ListTenantDestinationAttemptsRequest = { dir?: ListTenantDestinationAttemptsDir | undefined; }; +export type ListTenantDestinationAttemptsResponse = { + result: components.AttemptPaginatedResult; +}; + +/** @internal */ +export const ListTenantDestinationAttemptsEventId$inboundSchema: z.ZodType< + ListTenantDestinationAttemptsEventId, + z.ZodTypeDef, + unknown +> = z.union([z.string(), z.array(z.string())]); +/** @internal */ +export type ListTenantDestinationAttemptsEventId$Outbound = + | string + | Array; + +/** @internal */ +export const ListTenantDestinationAttemptsEventId$outboundSchema: z.ZodType< + ListTenantDestinationAttemptsEventId$Outbound, + z.ZodTypeDef, + ListTenantDestinationAttemptsEventId +> = z.union([z.string(), z.array(z.string())]); + +export function listTenantDestinationAttemptsEventIdToJSON( + listTenantDestinationAttemptsEventId: ListTenantDestinationAttemptsEventId, +): string { + return JSON.stringify( + ListTenantDestinationAttemptsEventId$outboundSchema.parse( + listTenantDestinationAttemptsEventId, + ), + ); +} +export function listTenantDestinationAttemptsEventIdFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => + ListTenantDestinationAttemptsEventId$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListTenantDestinationAttemptsEventId' from JSON`, + ); +} + /** @internal */ export const ListTenantDestinationAttemptsStatus$inboundSchema: z.ZodNativeEnum< typeof ListTenantDestinationAttemptsStatus @@ -237,13 +293,17 @@ export const ListTenantDestinationAttemptsRequest$inboundSchema: z.ZodType< > = z.object({ tenant_id: z.string(), destination_id: z.string(), - event_id: z.string().optional(), + event_id: z.union([z.string(), z.array(z.string())]).optional(), status: ListTenantDestinationAttemptsStatus$inboundSchema.optional(), topic: z.union([z.string(), z.array(z.string())]).optional(), "time[gte]": z.string().datetime({ offset: true }).transform(v => new Date(v)) .optional(), "time[lte]": z.string().datetime({ offset: true }).transform(v => new Date(v)) .optional(), + "time[gt]": z.string().datetime({ offset: true }).transform(v => new Date(v)) + .optional(), + "time[lt]": z.string().datetime({ offset: true }).transform(v => new Date(v)) + .optional(), limit: z.number().int().default(100), next: z.string().optional(), prev: z.string().optional(), @@ -257,6 +317,8 @@ export const ListTenantDestinationAttemptsRequest$inboundSchema: z.ZodType< "event_id": "eventId", "time[gte]": "timeGte", "time[lte]": "timeLte", + "time[gt]": "timeGt", + "time[lt]": "timeLt", "order_by": "orderBy", }); }); @@ -264,11 +326,13 @@ export const ListTenantDestinationAttemptsRequest$inboundSchema: z.ZodType< export type ListTenantDestinationAttemptsRequest$Outbound = { tenant_id: string; destination_id: string; - event_id?: string | undefined; + event_id?: string | Array | undefined; status?: string | undefined; topic?: string | Array | undefined; "time[gte]"?: string | undefined; "time[lte]"?: string | undefined; + "time[gt]"?: string | undefined; + "time[lt]"?: string | undefined; limit: number; next?: string | undefined; prev?: string | undefined; @@ -285,11 +349,13 @@ export const ListTenantDestinationAttemptsRequest$outboundSchema: z.ZodType< > = z.object({ tenantId: z.string(), destinationId: z.string(), - eventId: z.string().optional(), + eventId: z.union([z.string(), z.array(z.string())]).optional(), status: ListTenantDestinationAttemptsStatus$outboundSchema.optional(), topic: z.union([z.string(), z.array(z.string())]).optional(), timeGte: z.date().transform(v => v.toISOString()).optional(), timeLte: z.date().transform(v => v.toISOString()).optional(), + timeGt: z.date().transform(v => v.toISOString()).optional(), + timeLt: z.date().transform(v => v.toISOString()).optional(), limit: z.number().int().default(100), next: z.string().optional(), prev: z.string().optional(), @@ -303,6 +369,8 @@ export const ListTenantDestinationAttemptsRequest$outboundSchema: z.ZodType< eventId: "event_id", timeGte: "time[gte]", timeLte: "time[lte]", + timeGt: "time[gt]", + timeLt: "time[lt]", orderBy: "order_by", }); }); @@ -326,3 +394,53 @@ export function listTenantDestinationAttemptsRequestFromJSON( `Failed to parse 'ListTenantDestinationAttemptsRequest' from JSON`, ); } + +/** @internal */ +export const ListTenantDestinationAttemptsResponse$inboundSchema: z.ZodType< + ListTenantDestinationAttemptsResponse, + z.ZodTypeDef, + unknown +> = z.object({ + Result: components.AttemptPaginatedResult$inboundSchema, +}).transform((v) => { + return remap$(v, { + "Result": "result", + }); +}); +/** @internal */ +export type ListTenantDestinationAttemptsResponse$Outbound = { + Result: components.AttemptPaginatedResult$Outbound; +}; + +/** @internal */ +export const ListTenantDestinationAttemptsResponse$outboundSchema: z.ZodType< + ListTenantDestinationAttemptsResponse$Outbound, + z.ZodTypeDef, + ListTenantDestinationAttemptsResponse +> = z.object({ + result: components.AttemptPaginatedResult$outboundSchema, +}).transform((v) => { + return remap$(v, { + result: "Result", + }); +}); + +export function listTenantDestinationAttemptsResponseToJSON( + listTenantDestinationAttemptsResponse: ListTenantDestinationAttemptsResponse, +): string { + return JSON.stringify( + ListTenantDestinationAttemptsResponse$outboundSchema.parse( + listTenantDestinationAttemptsResponse, + ), + ); +} +export function listTenantDestinationAttemptsResponseFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => + ListTenantDestinationAttemptsResponse$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListTenantDestinationAttemptsResponse' from JSON`, + ); +} diff --git a/sdks/outpost-typescript/src/models/operations/listtenantdestinations.ts b/sdks/outpost-typescript/src/models/operations/listtenantdestinations.ts index e6c70551..53ebc32b 100644 --- a/sdks/outpost-typescript/src/models/operations/listtenantdestinations.ts +++ b/sdks/outpost-typescript/src/models/operations/listtenantdestinations.ts @@ -10,14 +10,14 @@ import * as components from "../components/index.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** - * Filter destinations by type(s). + * Filter destinations by type(s). Use bracket notation for multiple values (e.g., `type[0]=webhook&type[1]=aws_sqs`). */ export type ListTenantDestinationsType = | components.DestinationType | Array; /** - * Filter destinations by supported topic(s). + * Filter destinations by supported topic(s). Use bracket notation for multiple values (e.g., `topics[0]=user.created&topics[1]=user.deleted`). */ export type Topics = string | Array; @@ -27,14 +27,14 @@ export type ListTenantDestinationsRequest = { */ tenantId: string; /** - * Filter destinations by type(s). + * Filter destinations by type(s). Use bracket notation for multiple values (e.g., `type[0]=webhook&type[1]=aws_sqs`). */ type?: | components.DestinationType | Array | undefined; /** - * Filter destinations by supported topic(s). + * Filter destinations by supported topic(s). Use bracket notation for multiple values (e.g., `topics[0]=user.created&topics[1]=user.deleted`). */ topics?: string | Array | undefined; }; diff --git a/sdks/outpost-typescript/src/models/operations/listtenants.ts b/sdks/outpost-typescript/src/models/operations/listtenants.ts index d4e627ac..8b919695 100644 --- a/sdks/outpost-typescript/src/models/operations/listtenants.ts +++ b/sdks/outpost-typescript/src/models/operations/listtenants.ts @@ -3,11 +3,18 @@ */ import * as z from "zod/v3"; +import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; +import * as components from "../components/index.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; +/** + * Filter tenants by ID(s). Use bracket notation for multiple values (e.g., `id[0]=t1&id[1]=t2` or `id[]=t1&id[]=t2`). + */ +export type ListTenantsId = string | Array; + /** * Sort direction. */ @@ -21,6 +28,10 @@ export const ListTenantsDir = { export type ListTenantsDir = ClosedEnum; export type ListTenantsRequest = { + /** + * Filter tenants by ID(s). Use bracket notation for multiple values (e.g., `id[0]=t1&id[1]=t2` or `id[]=t1&id[]=t2`). + */ + id?: string | Array | undefined; /** * Number of tenants to return per page (1-100, default 20). */ @@ -39,6 +50,39 @@ export type ListTenantsRequest = { prev?: string | undefined; }; +export type ListTenantsResponse = { + result: components.TenantPaginatedResult; +}; + +/** @internal */ +export const ListTenantsId$inboundSchema: z.ZodType< + ListTenantsId, + z.ZodTypeDef, + unknown +> = z.union([z.string(), z.array(z.string())]); +/** @internal */ +export type ListTenantsId$Outbound = string | Array; + +/** @internal */ +export const ListTenantsId$outboundSchema: z.ZodType< + ListTenantsId$Outbound, + z.ZodTypeDef, + ListTenantsId +> = z.union([z.string(), z.array(z.string())]); + +export function listTenantsIdToJSON(listTenantsId: ListTenantsId): string { + return JSON.stringify(ListTenantsId$outboundSchema.parse(listTenantsId)); +} +export function listTenantsIdFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListTenantsId$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListTenantsId' from JSON`, + ); +} + /** @internal */ export const ListTenantsDir$inboundSchema: z.ZodNativeEnum< typeof ListTenantsDir @@ -54,6 +98,7 @@ export const ListTenantsRequest$inboundSchema: z.ZodType< z.ZodTypeDef, unknown > = z.object({ + id: z.union([z.string(), z.array(z.string())]).optional(), limit: z.number().int().default(20), dir: ListTenantsDir$inboundSchema.default("desc"), next: z.string().optional(), @@ -61,6 +106,7 @@ export const ListTenantsRequest$inboundSchema: z.ZodType< }); /** @internal */ export type ListTenantsRequest$Outbound = { + id?: string | Array | undefined; limit: number; dir: string; next?: string | undefined; @@ -73,6 +119,7 @@ export const ListTenantsRequest$outboundSchema: z.ZodType< z.ZodTypeDef, ListTenantsRequest > = z.object({ + id: z.union([z.string(), z.array(z.string())]).optional(), limit: z.number().int().default(20), dir: ListTenantsDir$outboundSchema.default("desc"), next: z.string().optional(), @@ -95,3 +142,50 @@ export function listTenantsRequestFromJSON( `Failed to parse 'ListTenantsRequest' from JSON`, ); } + +/** @internal */ +export const ListTenantsResponse$inboundSchema: z.ZodType< + ListTenantsResponse, + z.ZodTypeDef, + unknown +> = z.object({ + Result: components.TenantPaginatedResult$inboundSchema, +}).transform((v) => { + return remap$(v, { + "Result": "result", + }); +}); +/** @internal */ +export type ListTenantsResponse$Outbound = { + Result: components.TenantPaginatedResult$Outbound; +}; + +/** @internal */ +export const ListTenantsResponse$outboundSchema: z.ZodType< + ListTenantsResponse$Outbound, + z.ZodTypeDef, + ListTenantsResponse +> = z.object({ + result: components.TenantPaginatedResult$outboundSchema, +}).transform((v) => { + return remap$(v, { + result: "Result", + }); +}); + +export function listTenantsResponseToJSON( + listTenantsResponse: ListTenantsResponse, +): string { + return JSON.stringify( + ListTenantsResponse$outboundSchema.parse(listTenantsResponse), + ); +} +export function listTenantsResponseFromJSON( + jsonString: string, +): SafeParseResult { + return safeParse( + jsonString, + (x) => ListTenantsResponse$inboundSchema.parse(JSON.parse(x)), + `Failed to parse 'ListTenantsResponse' from JSON`, + ); +} diff --git a/sdks/outpost-typescript/src/models/operations/updatetenantdestination.ts b/sdks/outpost-typescript/src/models/operations/updatetenantdestination.ts index f309d454..2f26c4ed 100644 --- a/sdks/outpost-typescript/src/models/operations/updatetenantdestination.ts +++ b/sdks/outpost-typescript/src/models/operations/updatetenantdestination.ts @@ -18,7 +18,7 @@ export type UpdateTenantDestinationRequest = { * The ID of the destination. */ destinationId: string; - params: components.DestinationUpdate; + body: components.DestinationUpdate; }; /** @@ -34,7 +34,7 @@ export const UpdateTenantDestinationRequest$inboundSchema: z.ZodType< > = z.object({ tenant_id: z.string(), destination_id: z.string(), - params: components.DestinationUpdate$inboundSchema, + body: components.DestinationUpdate$inboundSchema, }).transform((v) => { return remap$(v, { "tenant_id": "tenantId", @@ -45,7 +45,7 @@ export const UpdateTenantDestinationRequest$inboundSchema: z.ZodType< export type UpdateTenantDestinationRequest$Outbound = { tenant_id: string; destination_id: string; - params: components.DestinationUpdate$Outbound; + body: components.DestinationUpdate$Outbound; }; /** @internal */ @@ -56,7 +56,7 @@ export const UpdateTenantDestinationRequest$outboundSchema: z.ZodType< > = z.object({ tenantId: z.string(), destinationId: z.string(), - params: components.DestinationUpdate$outboundSchema, + body: components.DestinationUpdate$outboundSchema, }).transform((v) => { return remap$(v, { tenantId: "tenant_id", diff --git a/sdks/outpost-typescript/src/models/operations/upserttenant.ts b/sdks/outpost-typescript/src/models/operations/upserttenant.ts index e8f3d0a4..e8487d0c 100644 --- a/sdks/outpost-typescript/src/models/operations/upserttenant.ts +++ b/sdks/outpost-typescript/src/models/operations/upserttenant.ts @@ -17,7 +17,7 @@ export type UpsertTenantRequest = { /** * Optional tenant metadata */ - params?: components.TenantUpsert | undefined; + body?: components.TenantUpsert | undefined; }; /** @internal */ @@ -27,7 +27,7 @@ export const UpsertTenantRequest$inboundSchema: z.ZodType< unknown > = z.object({ tenant_id: z.string(), - params: components.TenantUpsert$inboundSchema.optional(), + body: components.TenantUpsert$inboundSchema.optional(), }).transform((v) => { return remap$(v, { "tenant_id": "tenantId", @@ -36,7 +36,7 @@ export const UpsertTenantRequest$inboundSchema: z.ZodType< /** @internal */ export type UpsertTenantRequest$Outbound = { tenant_id: string; - params?: components.TenantUpsert$Outbound | undefined; + body?: components.TenantUpsert$Outbound | undefined; }; /** @internal */ @@ -46,7 +46,7 @@ export const UpsertTenantRequest$outboundSchema: z.ZodType< UpsertTenantRequest > = z.object({ tenantId: z.string(), - params: components.TenantUpsert$outboundSchema.optional(), + body: components.TenantUpsert$outboundSchema.optional(), }).transform((v) => { return remap$(v, { tenantId: "tenant_id", diff --git a/sdks/outpost-typescript/src/sdk/attempts.ts b/sdks/outpost-typescript/src/sdk/attempts.ts index 70a935aa..334eaff8 100644 --- a/sdks/outpost-typescript/src/sdk/attempts.ts +++ b/sdks/outpost-typescript/src/sdk/attempts.ts @@ -9,6 +9,7 @@ import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; +import { PageIterator, unwrapResultIterator } from "../types/operations.js"; export class Attempts extends ClientSDK { /** @@ -23,8 +24,10 @@ export class Attempts extends ClientSDK { async list( request: operations.ListAttemptsRequest, options?: RequestOptions, - ): Promise { - return unwrapAsync(attemptsList( + ): Promise< + PageIterator + > { + return unwrapResultIterator(attemptsList( this, request, options, diff --git a/sdks/outpost-typescript/src/sdk/destinations.ts b/sdks/outpost-typescript/src/sdk/destinations.ts index 4f88de86..b980e301 100644 --- a/sdks/outpost-typescript/src/sdk/destinations.ts +++ b/sdks/outpost-typescript/src/sdk/destinations.ts @@ -15,6 +15,7 @@ import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; +import { PageIterator, unwrapResultIterator } from "../types/operations.js"; export class Destinations extends ClientSDK { /** @@ -46,13 +47,13 @@ export class Destinations extends ClientSDK { */ async create( tenantId: string, - params: components.DestinationCreate, + body: components.DestinationCreate, options?: RequestOptions, ): Promise { return unwrapAsync(destinationsCreate( this, tenantId, - params, + body, options, )); } @@ -85,14 +86,14 @@ export class Destinations extends ClientSDK { async update( tenantId: string, destinationId: string, - params: components.DestinationUpdate, + body: components.DestinationUpdate, options?: RequestOptions, ): Promise { return unwrapAsync(destinationsUpdate( this, tenantId, destinationId, - params, + body, options, )); } @@ -163,8 +164,13 @@ export class Destinations extends ClientSDK { async listAttempts( request: operations.ListTenantDestinationAttemptsRequest, options?: RequestOptions, - ): Promise { - return unwrapAsync(destinationsListAttempts( + ): Promise< + PageIterator< + operations.ListTenantDestinationAttemptsResponse, + { cursor: string } + > + > { + return unwrapResultIterator(destinationsListAttempts( this, request, options, diff --git a/sdks/outpost-typescript/src/sdk/events.ts b/sdks/outpost-typescript/src/sdk/events.ts index f13c571b..224dc00c 100644 --- a/sdks/outpost-typescript/src/sdk/events.ts +++ b/sdks/outpost-typescript/src/sdk/events.ts @@ -8,6 +8,7 @@ import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; +import { PageIterator, unwrapResultIterator } from "../types/operations.js"; export class Events extends ClientSDK { /** @@ -22,8 +23,8 @@ export class Events extends ClientSDK { async list( request: operations.ListEventsRequest, options?: RequestOptions, - ): Promise { - return unwrapAsync(eventsList( + ): Promise> { + return unwrapResultIterator(eventsList( this, request, options, diff --git a/sdks/outpost-typescript/src/sdk/tenants.ts b/sdks/outpost-typescript/src/sdk/tenants.ts index e3d88968..10b1325c 100644 --- a/sdks/outpost-typescript/src/sdk/tenants.ts +++ b/sdks/outpost-typescript/src/sdk/tenants.ts @@ -6,12 +6,13 @@ import { tenantsDelete } from "../funcs/tenantsDelete.js"; import { tenantsGet } from "../funcs/tenantsGet.js"; import { tenantsGetPortalUrl } from "../funcs/tenantsGetPortalUrl.js"; import { tenantsGetToken } from "../funcs/tenantsGetToken.js"; -import { tenantsListTenants } from "../funcs/tenantsListTenants.js"; +import { tenantsList } from "../funcs/tenantsList.js"; import { tenantsUpsert } from "../funcs/tenantsUpsert.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; +import { PageIterator, unwrapResultIterator } from "../types/operations.js"; export class Tenants extends ClientSDK { /** @@ -25,19 +26,13 @@ export class Tenants extends ClientSDK { * * When authenticated with a Tenant JWT, returns only the authenticated tenant. Pagination is not used in this case. */ - async listTenants( - limit?: number | undefined, - dir?: operations.ListTenantsDir | undefined, - next?: string | undefined, - prev?: string | undefined, + async list( + request: operations.ListTenantsRequest, options?: RequestOptions, - ): Promise { - return unwrapAsync(tenantsListTenants( + ): Promise> { + return unwrapResultIterator(tenantsList( this, - limit, - dir, - next, - prev, + request, options, )); } @@ -50,13 +45,13 @@ export class Tenants extends ClientSDK { */ async upsert( tenantId: string, - params?: components.TenantUpsert | undefined, + body?: components.TenantUpsert | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(tenantsUpsert( this, tenantId, - params, + body, options, )); }