@seamapi/http 1.35.1 → 1.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -0
- package/dist/connect.cjs +6404 -1229
- package/dist/connect.cjs.map +1 -1
- package/dist/connect.d.cts +889 -2
- package/lib/seam/connect/options.d.ts +2 -1
- package/lib/seam/connect/options.js.map +1 -1
- package/lib/seam/connect/parse-options.d.ts +1 -1
- package/lib/seam/connect/parse-options.js +2 -0
- package/lib/seam/connect/parse-options.js.map +1 -1
- package/lib/seam/connect/routes/acs/access-groups/access-groups.d.ts +2 -0
- package/lib/seam/connect/routes/acs/access-groups/access-groups.js +4 -0
- package/lib/seam/connect/routes/acs/access-groups/access-groups.js.map +1 -1
- package/lib/seam/connect/routes/acs/access-groups/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/access-groups/index.js +1 -0
- package/lib/seam/connect/routes/acs/access-groups/index.js.map +1 -1
- package/lib/seam/connect/routes/acs/access-groups/unmanaged/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/access-groups/unmanaged/index.js +6 -0
- package/lib/seam/connect/routes/acs/access-groups/unmanaged/index.js.map +1 -0
- package/lib/seam/connect/routes/acs/access-groups/unmanaged/unmanaged.d.ts +29 -0
- package/lib/seam/connect/routes/acs/access-groups/unmanaged/unmanaged.js +112 -0
- package/lib/seam/connect/routes/acs/access-groups/unmanaged/unmanaged.js.map +1 -0
- package/lib/seam/connect/routes/acs/acs.d.ts +4 -0
- package/lib/seam/connect/routes/acs/acs.js +8 -0
- package/lib/seam/connect/routes/acs/acs.js.map +1 -1
- package/lib/seam/connect/routes/acs/credential-pools/credential-pools.d.ts +25 -0
- package/lib/seam/connect/routes/acs/credential-pools/credential-pools.js +101 -0
- package/lib/seam/connect/routes/acs/credential-pools/credential-pools.js.map +1 -0
- package/lib/seam/connect/routes/acs/credential-pools/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/credential-pools/index.js +6 -0
- package/lib/seam/connect/routes/acs/credential-pools/index.js.map +1 -0
- package/lib/seam/connect/routes/acs/credential-provisioning-automations/credential-provisioning-automations.d.ts +25 -0
- package/lib/seam/connect/routes/acs/credential-provisioning-automations/credential-provisioning-automations.js +101 -0
- package/lib/seam/connect/routes/acs/credential-provisioning-automations/credential-provisioning-automations.js.map +1 -0
- package/lib/seam/connect/routes/acs/credential-provisioning-automations/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/credential-provisioning-automations/index.js +6 -0
- package/lib/seam/connect/routes/acs/credential-provisioning-automations/index.js.map +1 -0
- package/lib/seam/connect/routes/acs/credentials/credentials.d.ts +6 -0
- package/lib/seam/connect/routes/acs/credentials/credentials.js +15 -0
- package/lib/seam/connect/routes/acs/credentials/credentials.js.map +1 -1
- package/lib/seam/connect/routes/acs/credentials/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/credentials/index.js +1 -0
- package/lib/seam/connect/routes/acs/credentials/index.js.map +1 -1
- package/lib/seam/connect/routes/acs/credentials/unmanaged/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/credentials/unmanaged/index.js +6 -0
- package/lib/seam/connect/routes/acs/credentials/unmanaged/index.js.map +1 -0
- package/lib/seam/connect/routes/acs/credentials/unmanaged/unmanaged.d.ts +29 -0
- package/lib/seam/connect/routes/acs/credentials/unmanaged/unmanaged.js +112 -0
- package/lib/seam/connect/routes/acs/credentials/unmanaged/unmanaged.js.map +1 -0
- package/lib/seam/connect/routes/acs/index.d.ts +2 -0
- package/lib/seam/connect/routes/acs/index.js +2 -0
- package/lib/seam/connect/routes/acs/index.js.map +1 -1
- package/lib/seam/connect/routes/acs/users/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/users/index.js +1 -0
- package/lib/seam/connect/routes/acs/users/index.js.map +1 -1
- package/lib/seam/connect/routes/acs/users/unmanaged/index.d.ts +1 -0
- package/lib/seam/connect/routes/acs/users/unmanaged/index.js +6 -0
- package/lib/seam/connect/routes/acs/users/unmanaged/index.js.map +1 -0
- package/lib/seam/connect/routes/acs/users/unmanaged/unmanaged.d.ts +29 -0
- package/lib/seam/connect/routes/acs/users/unmanaged/unmanaged.js +112 -0
- package/lib/seam/connect/routes/acs/users/unmanaged/unmanaged.js.map +1 -0
- package/lib/seam/connect/routes/acs/users/users.d.ts +2 -0
- package/lib/seam/connect/routes/acs/users/users.js +4 -0
- package/lib/seam/connect/routes/acs/users/users.js.map +1 -1
- package/lib/seam/connect/routes/bridges/bridges.d.ts +29 -0
- package/lib/seam/connect/routes/bridges/bridges.js +112 -0
- package/lib/seam/connect/routes/bridges/bridges.js.map +1 -0
- package/lib/seam/connect/routes/bridges/index.d.ts +1 -0
- package/lib/seam/connect/routes/bridges/index.js +6 -0
- package/lib/seam/connect/routes/bridges/index.js.map +1 -0
- package/lib/seam/connect/routes/devices/devices.d.ts +4 -0
- package/lib/seam/connect/routes/devices/devices.js +11 -0
- package/lib/seam/connect/routes/devices/devices.js.map +1 -1
- package/lib/seam/connect/routes/index.d.ts +8 -0
- package/lib/seam/connect/routes/index.js +8 -0
- package/lib/seam/connect/routes/index.js.map +1 -1
- package/lib/seam/connect/routes/locks/index.d.ts +1 -0
- package/lib/seam/connect/routes/locks/index.js +1 -0
- package/lib/seam/connect/routes/locks/index.js.map +1 -1
- package/lib/seam/connect/routes/locks/locks.d.ts +2 -0
- package/lib/seam/connect/routes/locks/locks.js +4 -0
- package/lib/seam/connect/routes/locks/locks.js.map +1 -1
- package/lib/seam/connect/routes/locks/simulate/index.d.ts +1 -0
- package/lib/seam/connect/routes/locks/simulate/index.js +6 -0
- package/lib/seam/connect/routes/locks/simulate/index.js.map +1 -0
- package/lib/seam/connect/routes/locks/simulate/simulate.d.ts +29 -0
- package/lib/seam/connect/routes/locks/simulate/simulate.js +114 -0
- package/lib/seam/connect/routes/locks/simulate/simulate.js.map +1 -0
- package/lib/seam/connect/routes/networks/index.d.ts +1 -0
- package/lib/seam/connect/routes/networks/index.js +6 -0
- package/lib/seam/connect/routes/networks/index.js.map +1 -0
- package/lib/seam/connect/routes/networks/networks.d.ts +29 -0
- package/lib/seam/connect/routes/networks/networks.js +112 -0
- package/lib/seam/connect/routes/networks/networks.js.map +1 -0
- package/lib/seam/connect/routes/seam/bridge/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/bridge/index.js +6 -0
- package/lib/seam/connect/routes/seam/bridge/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/bridge-client-sessions.d.ts +41 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/bridge-client-sessions.js +145 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/bridge-client-sessions.js.map +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/index.js +6 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/bridge-connected-systems.d.ts +25 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/bridge-connected-systems.js +101 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/bridge-connected-systems.js.map +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/index.js +6 -0
- package/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/index.d.ts +3 -0
- package/lib/seam/connect/routes/seam/bridge/v1/index.js +8 -0
- package/lib/seam/connect/routes/seam/bridge/v1/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/bridge/v1/v1.d.ts +23 -0
- package/lib/seam/connect/routes/seam/bridge/v1/v1.js +97 -0
- package/lib/seam/connect/routes/seam/bridge/v1/v1.js.map +1 -0
- package/lib/seam/connect/routes/seam/index.d.ts +4 -0
- package/lib/seam/connect/routes/seam/index.js +9 -0
- package/lib/seam/connect/routes/seam/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/instant-key/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/instant-key/index.js +6 -0
- package/lib/seam/connect/routes/seam/instant-key/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/client-sessions.d.ts +25 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/client-sessions.js +101 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/client-sessions.js.map +1 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/index.js +6 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/index.d.ts +2 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/index.js +7 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/v1.d.ts +21 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/v1.js +93 -0
- package/lib/seam/connect/routes/seam/instant-key/v1/v1.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/index.js +6 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/acs.d.ts +21 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/acs.js +93 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/acs.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/credentials.d.ts +25 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/credentials.js +101 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/credentials.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/index.js +6 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/index.d.ts +2 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/index.js +7 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/index.d.ts +3 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/index.js +8 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/index.js +6 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/phone-sessions.d.ts +25 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/phone-sessions.js +101 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/phone-sessions.js.map +1 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/v1.d.ts +23 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/v1.js +97 -0
- package/lib/seam/connect/routes/seam/mobile-sdk/v1/v1.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/partner/index.js +6 -0
- package/lib/seam/connect/routes/seam/partner/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/building-blocks.d.ts +21 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/building-blocks.js +93 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/building-blocks.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/index.d.ts +2 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/index.js +7 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/index.js +6 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/spaces.d.ts +25 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/spaces.js +101 -0
- package/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/spaces.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/index.d.ts +3 -0
- package/lib/seam/connect/routes/seam/partner/v1/index.js +8 -0
- package/lib/seam/connect/routes/seam/partner/v1/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/resources/index.d.ts +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/resources/index.js +6 -0
- package/lib/seam/connect/routes/seam/partner/v1/resources/index.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/resources/resources.d.ts +25 -0
- package/lib/seam/connect/routes/seam/partner/v1/resources/resources.js +101 -0
- package/lib/seam/connect/routes/seam/partner/v1/resources/resources.js.map +1 -0
- package/lib/seam/connect/routes/seam/partner/v1/v1.d.ts +23 -0
- package/lib/seam/connect/routes/seam/partner/v1/v1.js +97 -0
- package/lib/seam/connect/routes/seam/partner/v1/v1.js.map +1 -0
- package/lib/seam/connect/routes/seam-http-endpoints.d.ts +293 -0
- package/lib/seam/connect/routes/seam-http-endpoints.js +1820 -0
- package/lib/seam/connect/routes/seam-http-endpoints.js.map +1 -0
- package/lib/seam/connect/routes/seam-http.d.ts +12 -0
- package/lib/seam/connect/routes/seam-http.js +24 -0
- package/lib/seam/connect/routes/seam-http.js.map +1 -1
- package/lib/seam/connect/routes/thermostats/thermostats.d.ts +4 -0
- package/lib/seam/connect/routes/thermostats/thermostats.js +11 -0
- package/lib/seam/connect/routes/thermostats/thermostats.js.map +1 -1
- package/lib/seam/connect/routes/unstable-access-grants/index.d.ts +1 -0
- package/lib/seam/connect/routes/unstable-access-grants/index.js +6 -0
- package/lib/seam/connect/routes/unstable-access-grants/index.js.map +1 -0
- package/lib/seam/connect/routes/unstable-access-grants/unstable-access-grants.d.ts +37 -0
- package/lib/seam/connect/routes/unstable-access-grants/unstable-access-grants.js +134 -0
- package/lib/seam/connect/routes/unstable-access-grants/unstable-access-grants.js.map +1 -0
- package/lib/seam/connect/routes/unstable-access-methods/index.d.ts +1 -0
- package/lib/seam/connect/routes/unstable-access-methods/index.js +6 -0
- package/lib/seam/connect/routes/unstable-access-methods/index.js.map +1 -0
- package/lib/seam/connect/routes/unstable-access-methods/unstable-access-methods.d.ts +33 -0
- package/lib/seam/connect/routes/unstable-access-methods/unstable-access-methods.js +123 -0
- package/lib/seam/connect/routes/unstable-access-methods/unstable-access-methods.js.map +1 -0
- package/lib/seam/connect/routes/unstable-locations/index.d.ts +1 -0
- package/lib/seam/connect/routes/unstable-locations/index.js +6 -0
- package/lib/seam/connect/routes/unstable-locations/index.js.map +1 -0
- package/lib/seam/connect/routes/unstable-locations/unstable-locations.d.ts +57 -0
- package/lib/seam/connect/routes/unstable-locations/unstable-locations.js +189 -0
- package/lib/seam/connect/routes/unstable-locations/unstable-locations.js.map +1 -0
- package/lib/seam/connect/routes/unstable-partner/building-blocks/building-blocks.d.ts +37 -0
- package/lib/seam/connect/routes/unstable-partner/building-blocks/building-blocks.js +134 -0
- package/lib/seam/connect/routes/unstable-partner/building-blocks/building-blocks.js.map +1 -0
- package/lib/seam/connect/routes/unstable-partner/building-blocks/index.d.ts +1 -0
- package/lib/seam/connect/routes/unstable-partner/building-blocks/index.js +6 -0
- package/lib/seam/connect/routes/unstable-partner/building-blocks/index.js.map +1 -0
- package/lib/seam/connect/routes/unstable-partner/index.d.ts +3 -0
- package/lib/seam/connect/routes/unstable-partner/index.js +8 -0
- package/lib/seam/connect/routes/unstable-partner/index.js.map +1 -0
- package/lib/seam/connect/routes/unstable-partner/resources/index.d.ts +1 -0
- package/lib/seam/connect/routes/unstable-partner/resources/index.js +6 -0
- package/lib/seam/connect/routes/unstable-partner/resources/index.js.map +1 -0
- package/lib/seam/connect/routes/unstable-partner/resources/resources.d.ts +25 -0
- package/lib/seam/connect/routes/unstable-partner/resources/resources.js +101 -0
- package/lib/seam/connect/routes/unstable-partner/resources/resources.js.map +1 -0
- package/lib/seam/connect/routes/unstable-partner/unstable-partner.d.ts +23 -0
- package/lib/seam/connect/routes/unstable-partner/unstable-partner.js +97 -0
- package/lib/seam/connect/routes/unstable-partner/unstable-partner.js.map +1 -0
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +1 -1
- package/src/lib/seam/connect/options.ts +2 -1
- package/src/lib/seam/connect/parse-options.ts +2 -0
- package/src/lib/seam/connect/routes/acs/access-groups/access-groups.ts +9 -0
- package/src/lib/seam/connect/routes/acs/access-groups/index.ts +1 -0
- package/src/lib/seam/connect/routes/acs/access-groups/unmanaged/index.ts +6 -0
- package/src/lib/seam/connect/routes/acs/access-groups/unmanaged/unmanaged.ts +226 -0
- package/src/lib/seam/connect/routes/acs/acs.ts +13 -0
- package/src/lib/seam/connect/routes/acs/credential-pools/credential-pools.ts +195 -0
- package/src/lib/seam/connect/routes/acs/credential-pools/index.ts +6 -0
- package/src/lib/seam/connect/routes/acs/credential-provisioning-automations/credential-provisioning-automations.ts +201 -0
- package/src/lib/seam/connect/routes/acs/credential-provisioning-automations/index.ts +6 -0
- package/src/lib/seam/connect/routes/acs/credentials/credentials.ts +37 -0
- package/src/lib/seam/connect/routes/acs/credentials/index.ts +1 -0
- package/src/lib/seam/connect/routes/acs/credentials/unmanaged/index.ts +6 -0
- package/src/lib/seam/connect/routes/acs/credentials/unmanaged/unmanaged.ts +227 -0
- package/src/lib/seam/connect/routes/acs/index.ts +2 -0
- package/src/lib/seam/connect/routes/acs/users/index.ts +1 -0
- package/src/lib/seam/connect/routes/acs/users/unmanaged/index.ts +6 -0
- package/src/lib/seam/connect/routes/acs/users/unmanaged/unmanaged.ts +220 -0
- package/src/lib/seam/connect/routes/acs/users/users.ts +6 -0
- package/src/lib/seam/connect/routes/bridges/bridges.ts +218 -0
- package/src/lib/seam/connect/routes/bridges/index.ts +6 -0
- package/src/lib/seam/connect/routes/devices/devices.ts +22 -0
- package/src/lib/seam/connect/routes/index.ts +8 -0
- package/src/lib/seam/connect/routes/locks/index.ts +1 -0
- package/src/lib/seam/connect/routes/locks/locks.ts +6 -0
- package/src/lib/seam/connect/routes/locks/simulate/index.ts +6 -0
- package/src/lib/seam/connect/routes/locks/simulate/simulate.ts +233 -0
- package/src/lib/seam/connect/routes/networks/index.ts +6 -0
- package/src/lib/seam/connect/routes/networks/networks.ts +218 -0
- package/src/lib/seam/connect/routes/seam/bridge/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/bridge-client-sessions.ts +325 -0
- package/src/lib/seam/connect/routes/seam/bridge/v1/bridge-client-sessions/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/bridge-connected-systems.ts +201 -0
- package/src/lib/seam/connect/routes/seam/bridge/v1/bridge-connected-systems/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/bridge/v1/index.ts +8 -0
- package/src/lib/seam/connect/routes/seam/bridge/v1/v1.ts +184 -0
- package/src/lib/seam/connect/routes/seam/index.ts +9 -0
- package/src/lib/seam/connect/routes/seam/instant-key/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/client-sessions.ts +204 -0
- package/src/lib/seam/connect/routes/seam/instant-key/v1/client-sessions/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/instant-key/v1/index.ts +7 -0
- package/src/lib/seam/connect/routes/seam/instant-key/v1/v1.ts +176 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/acs.ts +176 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/credentials.ts +201 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/credentials/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/acs/index.ts +7 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/index.ts +8 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/phone-sessions/phone-sessions.ts +201 -0
- package/src/lib/seam/connect/routes/seam/mobile-sdk/v1/v1.ts +181 -0
- package/src/lib/seam/connect/routes/seam/partner/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/building-blocks/building-blocks.ts +179 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/building-blocks/index.ts +7 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/building-blocks/spaces/spaces.ts +201 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/index.ts +8 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/resources/index.ts +6 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/resources/resources.ts +195 -0
- package/src/lib/seam/connect/routes/seam/partner/v1/v1.ts +181 -0
- package/src/lib/seam/connect/routes/seam-http-endpoints.ts +2764 -0
- package/src/lib/seam/connect/routes/seam-http.ts +30 -0
- package/src/lib/seam/connect/routes/thermostats/thermostats.ts +24 -0
- package/src/lib/seam/connect/routes/unstable-access-grants/index.ts +6 -0
- package/src/lib/seam/connect/routes/unstable-access-grants/unstable-access-grants.ts +270 -0
- package/src/lib/seam/connect/routes/unstable-access-methods/index.ts +6 -0
- package/src/lib/seam/connect/routes/unstable-access-methods/unstable-access-methods.ts +245 -0
- package/src/lib/seam/connect/routes/unstable-locations/index.ts +6 -0
- package/src/lib/seam/connect/routes/unstable-locations/unstable-locations.ts +399 -0
- package/src/lib/seam/connect/routes/unstable-partner/building-blocks/building-blocks.ts +292 -0
- package/src/lib/seam/connect/routes/unstable-partner/building-blocks/index.ts +6 -0
- package/src/lib/seam/connect/routes/unstable-partner/index.ts +8 -0
- package/src/lib/seam/connect/routes/unstable-partner/resources/index.ts +6 -0
- package/src/lib/seam/connect/routes/unstable-partner/resources/resources.ts +198 -0
- package/src/lib/seam/connect/routes/unstable-partner/unstable-partner.ts +184 -0
- package/src/lib/version.ts +1 -1
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Automatically generated by codegen/smith.ts.
|
|
3
|
+
* Do not edit this file or add other files to this directory.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect'
|
|
7
|
+
|
|
8
|
+
import { seamApiLtsVersion } from 'lib/lts-version.js'
|
|
9
|
+
import {
|
|
10
|
+
getAuthHeadersForClientSessionToken,
|
|
11
|
+
warnOnInsecureuserIdentifierKey,
|
|
12
|
+
} from 'lib/seam/connect/auth.js'
|
|
13
|
+
import { type Client, createClient } from 'lib/seam/connect/client.js'
|
|
14
|
+
import {
|
|
15
|
+
isSeamHttpOptionsWithApiKey,
|
|
16
|
+
isSeamHttpOptionsWithClient,
|
|
17
|
+
isSeamHttpOptionsWithClientSessionToken,
|
|
18
|
+
isSeamHttpOptionsWithConsoleSessionToken,
|
|
19
|
+
isSeamHttpOptionsWithPersonalAccessToken,
|
|
20
|
+
type SeamHttpFromPublishableKeyOptions,
|
|
21
|
+
SeamHttpInvalidOptionsError,
|
|
22
|
+
type SeamHttpOptions,
|
|
23
|
+
type SeamHttpOptionsWithApiKey,
|
|
24
|
+
type SeamHttpOptionsWithClient,
|
|
25
|
+
type SeamHttpOptionsWithClientSessionToken,
|
|
26
|
+
type SeamHttpOptionsWithConsoleSessionToken,
|
|
27
|
+
type SeamHttpOptionsWithPersonalAccessToken,
|
|
28
|
+
type SeamHttpRequestOptions,
|
|
29
|
+
} from 'lib/seam/connect/options.js'
|
|
30
|
+
import {
|
|
31
|
+
limitToSeamHttpRequestOptions,
|
|
32
|
+
parseOptions,
|
|
33
|
+
} from 'lib/seam/connect/parse-options.js'
|
|
34
|
+
import { SeamHttpClientSessions } from 'lib/seam/connect/routes/client-sessions/index.js'
|
|
35
|
+
import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
|
|
36
|
+
import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
|
|
37
|
+
import type { SetNonNullable } from 'lib/types.js'
|
|
38
|
+
|
|
39
|
+
export class SeamHttpBridges {
|
|
40
|
+
client: Client
|
|
41
|
+
readonly defaults: Required<SeamHttpRequestOptions>
|
|
42
|
+
readonly ltsVersion = seamApiLtsVersion
|
|
43
|
+
static ltsVersion = seamApiLtsVersion
|
|
44
|
+
|
|
45
|
+
constructor(apiKeyOrOptions: string | SeamHttpOptions = {}) {
|
|
46
|
+
const options = parseOptions(apiKeyOrOptions)
|
|
47
|
+
if (!options.isUndocumentedApiEnabled) {
|
|
48
|
+
throw new Error(
|
|
49
|
+
'Cannot use undocumented API without isUndocumentedApiEnabled',
|
|
50
|
+
)
|
|
51
|
+
}
|
|
52
|
+
this.client = 'client' in options ? options.client : createClient(options)
|
|
53
|
+
this.defaults = limitToSeamHttpRequestOptions(options)
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
static fromClient(
|
|
57
|
+
client: SeamHttpOptionsWithClient['client'],
|
|
58
|
+
options: Omit<SeamHttpOptionsWithClient, 'client'> = {},
|
|
59
|
+
): SeamHttpBridges {
|
|
60
|
+
const constructorOptions = { ...options, client }
|
|
61
|
+
if (!isSeamHttpOptionsWithClient(constructorOptions)) {
|
|
62
|
+
throw new SeamHttpInvalidOptionsError('Missing client')
|
|
63
|
+
}
|
|
64
|
+
return new SeamHttpBridges(constructorOptions)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
static fromApiKey(
|
|
68
|
+
apiKey: SeamHttpOptionsWithApiKey['apiKey'],
|
|
69
|
+
options: Omit<SeamHttpOptionsWithApiKey, 'apiKey'> = {},
|
|
70
|
+
): SeamHttpBridges {
|
|
71
|
+
const constructorOptions = { ...options, apiKey }
|
|
72
|
+
if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
|
|
73
|
+
throw new SeamHttpInvalidOptionsError('Missing apiKey')
|
|
74
|
+
}
|
|
75
|
+
return new SeamHttpBridges(constructorOptions)
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
static fromClientSessionToken(
|
|
79
|
+
clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'],
|
|
80
|
+
options: Omit<
|
|
81
|
+
SeamHttpOptionsWithClientSessionToken,
|
|
82
|
+
'clientSessionToken'
|
|
83
|
+
> = {},
|
|
84
|
+
): SeamHttpBridges {
|
|
85
|
+
const constructorOptions = { ...options, clientSessionToken }
|
|
86
|
+
if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
|
|
87
|
+
throw new SeamHttpInvalidOptionsError('Missing clientSessionToken')
|
|
88
|
+
}
|
|
89
|
+
return new SeamHttpBridges(constructorOptions)
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
static async fromPublishableKey(
|
|
93
|
+
publishableKey: string,
|
|
94
|
+
userIdentifierKey: string,
|
|
95
|
+
options: SeamHttpFromPublishableKeyOptions = {},
|
|
96
|
+
): Promise<SeamHttpBridges> {
|
|
97
|
+
warnOnInsecureuserIdentifierKey(userIdentifierKey)
|
|
98
|
+
const clientOptions = parseOptions({ ...options, publishableKey })
|
|
99
|
+
if (isSeamHttpOptionsWithClient(clientOptions)) {
|
|
100
|
+
throw new SeamHttpInvalidOptionsError(
|
|
101
|
+
'The client option cannot be used with SeamHttpBridges.fromPublishableKey',
|
|
102
|
+
)
|
|
103
|
+
}
|
|
104
|
+
const client = createClient(clientOptions)
|
|
105
|
+
const clientSessions = SeamHttpClientSessions.fromClient(client)
|
|
106
|
+
const { token } = await clientSessions.getOrCreate({
|
|
107
|
+
user_identifier_key: userIdentifierKey,
|
|
108
|
+
})
|
|
109
|
+
return SeamHttpBridges.fromClientSessionToken(token, options)
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
static fromConsoleSessionToken(
|
|
113
|
+
consoleSessionToken: SeamHttpOptionsWithConsoleSessionToken['consoleSessionToken'],
|
|
114
|
+
workspaceId: SeamHttpOptionsWithConsoleSessionToken['workspaceId'],
|
|
115
|
+
options: Omit<
|
|
116
|
+
SeamHttpOptionsWithConsoleSessionToken,
|
|
117
|
+
'consoleSessionToken' | 'workspaceId'
|
|
118
|
+
> = {},
|
|
119
|
+
): SeamHttpBridges {
|
|
120
|
+
const constructorOptions = { ...options, consoleSessionToken, workspaceId }
|
|
121
|
+
if (!isSeamHttpOptionsWithConsoleSessionToken(constructorOptions)) {
|
|
122
|
+
throw new SeamHttpInvalidOptionsError(
|
|
123
|
+
'Missing consoleSessionToken or workspaceId',
|
|
124
|
+
)
|
|
125
|
+
}
|
|
126
|
+
return new SeamHttpBridges(constructorOptions)
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
static fromPersonalAccessToken(
|
|
130
|
+
personalAccessToken: SeamHttpOptionsWithPersonalAccessToken['personalAccessToken'],
|
|
131
|
+
workspaceId: SeamHttpOptionsWithPersonalAccessToken['workspaceId'],
|
|
132
|
+
options: Omit<
|
|
133
|
+
SeamHttpOptionsWithPersonalAccessToken,
|
|
134
|
+
'personalAccessToken' | 'workspaceId'
|
|
135
|
+
> = {},
|
|
136
|
+
): SeamHttpBridges {
|
|
137
|
+
const constructorOptions = { ...options, personalAccessToken, workspaceId }
|
|
138
|
+
if (!isSeamHttpOptionsWithPersonalAccessToken(constructorOptions)) {
|
|
139
|
+
throw new SeamHttpInvalidOptionsError(
|
|
140
|
+
'Missing personalAccessToken or workspaceId',
|
|
141
|
+
)
|
|
142
|
+
}
|
|
143
|
+
return new SeamHttpBridges(constructorOptions)
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
createPaginator<const TResponse, const TResponseKey extends keyof TResponse>(
|
|
147
|
+
request: SeamHttpRequest<TResponse, TResponseKey>,
|
|
148
|
+
): SeamPaginator<TResponse, TResponseKey> {
|
|
149
|
+
return new SeamPaginator<TResponse, TResponseKey>(this, request)
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
async updateClientSessionToken(
|
|
153
|
+
clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'],
|
|
154
|
+
): Promise<void> {
|
|
155
|
+
const { headers } = this.client.defaults
|
|
156
|
+
const authHeaders = getAuthHeadersForClientSessionToken({
|
|
157
|
+
clientSessionToken,
|
|
158
|
+
})
|
|
159
|
+
for (const key of Object.keys(authHeaders)) {
|
|
160
|
+
if (headers[key] == null) {
|
|
161
|
+
throw new Error(
|
|
162
|
+
'Cannot update a clientSessionToken on a client created without a clientSessionToken',
|
|
163
|
+
)
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
this.client.defaults.headers = { ...headers, ...authHeaders }
|
|
167
|
+
const clientSessions = SeamHttpClientSessions.fromClient(this.client)
|
|
168
|
+
await clientSessions.get()
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
get(
|
|
172
|
+
params?: BridgesGetParams,
|
|
173
|
+
): SeamHttpRequest<BridgesGetResponse, 'bridge'> {
|
|
174
|
+
if (!this.defaults.isUndocumentedApiEnabled) {
|
|
175
|
+
throw new Error(
|
|
176
|
+
'Cannot use undocumented API without isUndocumentedApiEnabled',
|
|
177
|
+
)
|
|
178
|
+
}
|
|
179
|
+
return new SeamHttpRequest(this, {
|
|
180
|
+
pathname: '/bridges/get',
|
|
181
|
+
method: 'POST',
|
|
182
|
+
body: params,
|
|
183
|
+
responseKey: 'bridge',
|
|
184
|
+
})
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
list(
|
|
188
|
+
params?: BridgesListParams,
|
|
189
|
+
): SeamHttpRequest<BridgesListResponse, 'bridges'> {
|
|
190
|
+
if (!this.defaults.isUndocumentedApiEnabled) {
|
|
191
|
+
throw new Error(
|
|
192
|
+
'Cannot use undocumented API without isUndocumentedApiEnabled',
|
|
193
|
+
)
|
|
194
|
+
}
|
|
195
|
+
return new SeamHttpRequest(this, {
|
|
196
|
+
pathname: '/bridges/list',
|
|
197
|
+
method: 'POST',
|
|
198
|
+
body: params,
|
|
199
|
+
responseKey: 'bridges',
|
|
200
|
+
})
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
export type BridgesGetParams = RouteRequestBody<'/bridges/get'>
|
|
205
|
+
|
|
206
|
+
export type BridgesGetResponse = SetNonNullable<
|
|
207
|
+
Required<RouteResponse<'/bridges/get'>>
|
|
208
|
+
>
|
|
209
|
+
|
|
210
|
+
export type BridgesGetOptions = never
|
|
211
|
+
|
|
212
|
+
export type BridgesListParams = RouteRequestBody<'/bridges/list'>
|
|
213
|
+
|
|
214
|
+
export type BridgesListResponse = SetNonNullable<
|
|
215
|
+
Required<RouteResponse<'/bridges/list'>>
|
|
216
|
+
>
|
|
217
|
+
|
|
218
|
+
export type BridgesListOptions = never
|
|
@@ -174,6 +174,20 @@ export class SeamHttpDevices {
|
|
|
174
174
|
return SeamHttpDevicesUnmanaged.fromClient(this.client, this.defaults)
|
|
175
175
|
}
|
|
176
176
|
|
|
177
|
+
delete(params?: DevicesDeleteParams): SeamHttpRequest<void, undefined> {
|
|
178
|
+
if (!this.defaults.isUndocumentedApiEnabled) {
|
|
179
|
+
throw new Error(
|
|
180
|
+
'Cannot use undocumented API without isUndocumentedApiEnabled',
|
|
181
|
+
)
|
|
182
|
+
}
|
|
183
|
+
return new SeamHttpRequest(this, {
|
|
184
|
+
pathname: '/devices/delete',
|
|
185
|
+
method: 'POST',
|
|
186
|
+
body: params,
|
|
187
|
+
responseKey: undefined,
|
|
188
|
+
})
|
|
189
|
+
}
|
|
190
|
+
|
|
177
191
|
get(
|
|
178
192
|
params?: DevicesGetParams,
|
|
179
193
|
): SeamHttpRequest<DevicesGetResponse, 'device'> {
|
|
@@ -217,6 +231,14 @@ export class SeamHttpDevices {
|
|
|
217
231
|
}
|
|
218
232
|
}
|
|
219
233
|
|
|
234
|
+
export type DevicesDeleteParams = RouteRequestBody<'/devices/delete'>
|
|
235
|
+
|
|
236
|
+
export type DevicesDeleteResponse = SetNonNullable<
|
|
237
|
+
Required<RouteResponse<'/devices/delete'>>
|
|
238
|
+
>
|
|
239
|
+
|
|
240
|
+
export type DevicesDeleteOptions = never
|
|
241
|
+
|
|
220
242
|
export type DevicesGetParams = RouteRequestBody<'/devices/get'>
|
|
221
243
|
|
|
222
244
|
export type DevicesGetResponse = SetNonNullable<
|
|
@@ -8,17 +8,25 @@ export * from './access-grants/index.js'
|
|
|
8
8
|
export * from './access-methods/index.js'
|
|
9
9
|
export * from './acs/index.js'
|
|
10
10
|
export * from './action-attempts/index.js'
|
|
11
|
+
export * from './bridges/index.js'
|
|
11
12
|
export * from './client-sessions/index.js'
|
|
12
13
|
export * from './connect-webviews/index.js'
|
|
13
14
|
export * from './connected-accounts/index.js'
|
|
14
15
|
export * from './devices/index.js'
|
|
15
16
|
export * from './events/index.js'
|
|
16
17
|
export * from './locks/index.js'
|
|
18
|
+
export * from './networks/index.js'
|
|
17
19
|
export * from './noise-sensors/index.js'
|
|
18
20
|
export * from './phones/index.js'
|
|
21
|
+
export * from './seam/index.js'
|
|
19
22
|
export * from './seam-http.js'
|
|
23
|
+
export * from './seam-http-endpoints.js'
|
|
20
24
|
export * from './spaces/index.js'
|
|
21
25
|
export * from './thermostats/index.js'
|
|
26
|
+
export * from './unstable-access-grants/index.js'
|
|
27
|
+
export * from './unstable-access-methods/index.js'
|
|
28
|
+
export * from './unstable-locations/index.js'
|
|
29
|
+
export * from './unstable-partner/index.js'
|
|
22
30
|
export * from './user-identities/index.js'
|
|
23
31
|
export * from './webhooks/index.js'
|
|
24
32
|
export * from './workspaces/index.js'
|
|
@@ -36,6 +36,8 @@ import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
|
|
|
36
36
|
import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
|
|
37
37
|
import type { SetNonNullable } from 'lib/types.js'
|
|
38
38
|
|
|
39
|
+
import { SeamHttpLocksSimulate } from './simulate/index.js'
|
|
40
|
+
|
|
39
41
|
export class SeamHttpLocks {
|
|
40
42
|
client: Client
|
|
41
43
|
readonly defaults: Required<SeamHttpRequestOptions>
|
|
@@ -163,6 +165,10 @@ export class SeamHttpLocks {
|
|
|
163
165
|
await clientSessions.get()
|
|
164
166
|
}
|
|
165
167
|
|
|
168
|
+
get simulate(): SeamHttpLocksSimulate {
|
|
169
|
+
return SeamHttpLocksSimulate.fromClient(this.client, this.defaults)
|
|
170
|
+
}
|
|
171
|
+
|
|
166
172
|
get(params?: LocksGetParams): SeamHttpRequest<LocksGetResponse, 'device'> {
|
|
167
173
|
return new SeamHttpRequest(this, {
|
|
168
174
|
pathname: '/locks/get',
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Automatically generated by codegen/smith.ts.
|
|
3
|
+
* Do not edit this file or add other files to this directory.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect'
|
|
7
|
+
|
|
8
|
+
import { seamApiLtsVersion } from 'lib/lts-version.js'
|
|
9
|
+
import {
|
|
10
|
+
getAuthHeadersForClientSessionToken,
|
|
11
|
+
warnOnInsecureuserIdentifierKey,
|
|
12
|
+
} from 'lib/seam/connect/auth.js'
|
|
13
|
+
import { type Client, createClient } from 'lib/seam/connect/client.js'
|
|
14
|
+
import {
|
|
15
|
+
isSeamHttpOptionsWithApiKey,
|
|
16
|
+
isSeamHttpOptionsWithClient,
|
|
17
|
+
isSeamHttpOptionsWithClientSessionToken,
|
|
18
|
+
isSeamHttpOptionsWithConsoleSessionToken,
|
|
19
|
+
isSeamHttpOptionsWithPersonalAccessToken,
|
|
20
|
+
type SeamHttpFromPublishableKeyOptions,
|
|
21
|
+
SeamHttpInvalidOptionsError,
|
|
22
|
+
type SeamHttpOptions,
|
|
23
|
+
type SeamHttpOptionsWithApiKey,
|
|
24
|
+
type SeamHttpOptionsWithClient,
|
|
25
|
+
type SeamHttpOptionsWithClientSessionToken,
|
|
26
|
+
type SeamHttpOptionsWithConsoleSessionToken,
|
|
27
|
+
type SeamHttpOptionsWithPersonalAccessToken,
|
|
28
|
+
type SeamHttpRequestOptions,
|
|
29
|
+
} from 'lib/seam/connect/options.js'
|
|
30
|
+
import {
|
|
31
|
+
limitToSeamHttpRequestOptions,
|
|
32
|
+
parseOptions,
|
|
33
|
+
} from 'lib/seam/connect/parse-options.js'
|
|
34
|
+
import { SeamHttpClientSessions } from 'lib/seam/connect/routes/client-sessions/index.js'
|
|
35
|
+
import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
|
|
36
|
+
import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
|
|
37
|
+
import type { SetNonNullable } from 'lib/types.js'
|
|
38
|
+
|
|
39
|
+
export class SeamHttpLocksSimulate {
|
|
40
|
+
client: Client
|
|
41
|
+
readonly defaults: Required<SeamHttpRequestOptions>
|
|
42
|
+
readonly ltsVersion = seamApiLtsVersion
|
|
43
|
+
static ltsVersion = seamApiLtsVersion
|
|
44
|
+
|
|
45
|
+
constructor(apiKeyOrOptions: string | SeamHttpOptions = {}) {
|
|
46
|
+
const options = parseOptions(apiKeyOrOptions)
|
|
47
|
+
if (!options.isUndocumentedApiEnabled) {
|
|
48
|
+
throw new Error(
|
|
49
|
+
'Cannot use undocumented API without isUndocumentedApiEnabled',
|
|
50
|
+
)
|
|
51
|
+
}
|
|
52
|
+
this.client = 'client' in options ? options.client : createClient(options)
|
|
53
|
+
this.defaults = limitToSeamHttpRequestOptions(options)
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
static fromClient(
|
|
57
|
+
client: SeamHttpOptionsWithClient['client'],
|
|
58
|
+
options: Omit<SeamHttpOptionsWithClient, 'client'> = {},
|
|
59
|
+
): SeamHttpLocksSimulate {
|
|
60
|
+
const constructorOptions = { ...options, client }
|
|
61
|
+
if (!isSeamHttpOptionsWithClient(constructorOptions)) {
|
|
62
|
+
throw new SeamHttpInvalidOptionsError('Missing client')
|
|
63
|
+
}
|
|
64
|
+
return new SeamHttpLocksSimulate(constructorOptions)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
static fromApiKey(
|
|
68
|
+
apiKey: SeamHttpOptionsWithApiKey['apiKey'],
|
|
69
|
+
options: Omit<SeamHttpOptionsWithApiKey, 'apiKey'> = {},
|
|
70
|
+
): SeamHttpLocksSimulate {
|
|
71
|
+
const constructorOptions = { ...options, apiKey }
|
|
72
|
+
if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
|
|
73
|
+
throw new SeamHttpInvalidOptionsError('Missing apiKey')
|
|
74
|
+
}
|
|
75
|
+
return new SeamHttpLocksSimulate(constructorOptions)
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
static fromClientSessionToken(
|
|
79
|
+
clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'],
|
|
80
|
+
options: Omit<
|
|
81
|
+
SeamHttpOptionsWithClientSessionToken,
|
|
82
|
+
'clientSessionToken'
|
|
83
|
+
> = {},
|
|
84
|
+
): SeamHttpLocksSimulate {
|
|
85
|
+
const constructorOptions = { ...options, clientSessionToken }
|
|
86
|
+
if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
|
|
87
|
+
throw new SeamHttpInvalidOptionsError('Missing clientSessionToken')
|
|
88
|
+
}
|
|
89
|
+
return new SeamHttpLocksSimulate(constructorOptions)
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
static async fromPublishableKey(
|
|
93
|
+
publishableKey: string,
|
|
94
|
+
userIdentifierKey: string,
|
|
95
|
+
options: SeamHttpFromPublishableKeyOptions = {},
|
|
96
|
+
): Promise<SeamHttpLocksSimulate> {
|
|
97
|
+
warnOnInsecureuserIdentifierKey(userIdentifierKey)
|
|
98
|
+
const clientOptions = parseOptions({ ...options, publishableKey })
|
|
99
|
+
if (isSeamHttpOptionsWithClient(clientOptions)) {
|
|
100
|
+
throw new SeamHttpInvalidOptionsError(
|
|
101
|
+
'The client option cannot be used with SeamHttpLocksSimulate.fromPublishableKey',
|
|
102
|
+
)
|
|
103
|
+
}
|
|
104
|
+
const client = createClient(clientOptions)
|
|
105
|
+
const clientSessions = SeamHttpClientSessions.fromClient(client)
|
|
106
|
+
const { token } = await clientSessions.getOrCreate({
|
|
107
|
+
user_identifier_key: userIdentifierKey,
|
|
108
|
+
})
|
|
109
|
+
return SeamHttpLocksSimulate.fromClientSessionToken(token, options)
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
static fromConsoleSessionToken(
|
|
113
|
+
consoleSessionToken: SeamHttpOptionsWithConsoleSessionToken['consoleSessionToken'],
|
|
114
|
+
workspaceId: SeamHttpOptionsWithConsoleSessionToken['workspaceId'],
|
|
115
|
+
options: Omit<
|
|
116
|
+
SeamHttpOptionsWithConsoleSessionToken,
|
|
117
|
+
'consoleSessionToken' | 'workspaceId'
|
|
118
|
+
> = {},
|
|
119
|
+
): SeamHttpLocksSimulate {
|
|
120
|
+
const constructorOptions = { ...options, consoleSessionToken, workspaceId }
|
|
121
|
+
if (!isSeamHttpOptionsWithConsoleSessionToken(constructorOptions)) {
|
|
122
|
+
throw new SeamHttpInvalidOptionsError(
|
|
123
|
+
'Missing consoleSessionToken or workspaceId',
|
|
124
|
+
)
|
|
125
|
+
}
|
|
126
|
+
return new SeamHttpLocksSimulate(constructorOptions)
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
static fromPersonalAccessToken(
|
|
130
|
+
personalAccessToken: SeamHttpOptionsWithPersonalAccessToken['personalAccessToken'],
|
|
131
|
+
workspaceId: SeamHttpOptionsWithPersonalAccessToken['workspaceId'],
|
|
132
|
+
options: Omit<
|
|
133
|
+
SeamHttpOptionsWithPersonalAccessToken,
|
|
134
|
+
'personalAccessToken' | 'workspaceId'
|
|
135
|
+
> = {},
|
|
136
|
+
): SeamHttpLocksSimulate {
|
|
137
|
+
const constructorOptions = { ...options, personalAccessToken, workspaceId }
|
|
138
|
+
if (!isSeamHttpOptionsWithPersonalAccessToken(constructorOptions)) {
|
|
139
|
+
throw new SeamHttpInvalidOptionsError(
|
|
140
|
+
'Missing personalAccessToken or workspaceId',
|
|
141
|
+
)
|
|
142
|
+
}
|
|
143
|
+
return new SeamHttpLocksSimulate(constructorOptions)
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
createPaginator<const TResponse, const TResponseKey extends keyof TResponse>(
|
|
147
|
+
request: SeamHttpRequest<TResponse, TResponseKey>,
|
|
148
|
+
): SeamPaginator<TResponse, TResponseKey> {
|
|
149
|
+
return new SeamPaginator<TResponse, TResponseKey>(this, request)
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
async updateClientSessionToken(
|
|
153
|
+
clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'],
|
|
154
|
+
): Promise<void> {
|
|
155
|
+
const { headers } = this.client.defaults
|
|
156
|
+
const authHeaders = getAuthHeadersForClientSessionToken({
|
|
157
|
+
clientSessionToken,
|
|
158
|
+
})
|
|
159
|
+
for (const key of Object.keys(authHeaders)) {
|
|
160
|
+
if (headers[key] == null) {
|
|
161
|
+
throw new Error(
|
|
162
|
+
'Cannot update a clientSessionToken on a client created without a clientSessionToken',
|
|
163
|
+
)
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
this.client.defaults.headers = { ...headers, ...authHeaders }
|
|
167
|
+
const clientSessions = SeamHttpClientSessions.fromClient(this.client)
|
|
168
|
+
await clientSessions.get()
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
keypadCodeEntry(
|
|
172
|
+
body?: LocksSimulateKeypadCodeEntryBody,
|
|
173
|
+
options: LocksSimulateKeypadCodeEntryOptions = {},
|
|
174
|
+
): SeamHttpRequest<LocksSimulateKeypadCodeEntryResponse, 'action_attempt'> {
|
|
175
|
+
if (!this.defaults.isUndocumentedApiEnabled) {
|
|
176
|
+
throw new Error(
|
|
177
|
+
'Cannot use undocumented API without isUndocumentedApiEnabled',
|
|
178
|
+
)
|
|
179
|
+
}
|
|
180
|
+
return new SeamHttpRequest(this, {
|
|
181
|
+
pathname: '/locks/simulate/keypad_code_entry',
|
|
182
|
+
method: 'POST',
|
|
183
|
+
body,
|
|
184
|
+
responseKey: 'action_attempt',
|
|
185
|
+
options,
|
|
186
|
+
})
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
manualLockViaKeypad(
|
|
190
|
+
body?: LocksSimulateManualLockViaKeypadBody,
|
|
191
|
+
options: LocksSimulateManualLockViaKeypadOptions = {},
|
|
192
|
+
): SeamHttpRequest<
|
|
193
|
+
LocksSimulateManualLockViaKeypadResponse,
|
|
194
|
+
'action_attempt'
|
|
195
|
+
> {
|
|
196
|
+
if (!this.defaults.isUndocumentedApiEnabled) {
|
|
197
|
+
throw new Error(
|
|
198
|
+
'Cannot use undocumented API without isUndocumentedApiEnabled',
|
|
199
|
+
)
|
|
200
|
+
}
|
|
201
|
+
return new SeamHttpRequest(this, {
|
|
202
|
+
pathname: '/locks/simulate/manual_lock_via_keypad',
|
|
203
|
+
method: 'POST',
|
|
204
|
+
body,
|
|
205
|
+
responseKey: 'action_attempt',
|
|
206
|
+
options,
|
|
207
|
+
})
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
export type LocksSimulateKeypadCodeEntryBody =
|
|
212
|
+
RouteRequestBody<'/locks/simulate/keypad_code_entry'>
|
|
213
|
+
|
|
214
|
+
export type LocksSimulateKeypadCodeEntryResponse = SetNonNullable<
|
|
215
|
+
Required<RouteResponse<'/locks/simulate/keypad_code_entry'>>
|
|
216
|
+
>
|
|
217
|
+
|
|
218
|
+
export type LocksSimulateKeypadCodeEntryOptions = Pick<
|
|
219
|
+
SeamHttpRequestOptions,
|
|
220
|
+
'waitForActionAttempt'
|
|
221
|
+
>
|
|
222
|
+
|
|
223
|
+
export type LocksSimulateManualLockViaKeypadBody =
|
|
224
|
+
RouteRequestBody<'/locks/simulate/manual_lock_via_keypad'>
|
|
225
|
+
|
|
226
|
+
export type LocksSimulateManualLockViaKeypadResponse = SetNonNullable<
|
|
227
|
+
Required<RouteResponse<'/locks/simulate/manual_lock_via_keypad'>>
|
|
228
|
+
>
|
|
229
|
+
|
|
230
|
+
export type LocksSimulateManualLockViaKeypadOptions = Pick<
|
|
231
|
+
SeamHttpRequestOptions,
|
|
232
|
+
'waitForActionAttempt'
|
|
233
|
+
>
|