@platform/sdk-integrations
Typed TypeScript client for services/integrations. The page is generated from the SDK package source plus its generated OpenAPI types.
Installation
npm install @platform/sdk-integrationsYou’ll also need the shared auth/client helpers:
npm install @platform/hosts @platform/sdkQuick start
import { LoopClient } from "@platform/sdk";
import { platformHost, SERVICE_NAMES } from "@platform/hosts";
import { createIntegrationsClient } from "@platform/sdk-integrations";
const loop = new LoopClient({
clientId: process.env.LOOP_CLIENT_ID!,
clientSecret: process.env.LOOP_CLIENT_SECRET!,
redirectUri: "https://your-app.example.com/auth/loop/callback",
});
const integrations = createIntegrationsClient({
baseUrl: platformHost({ service: SERVICE_NAMES.INTEGRATIONS }),
accessToken: tokens.access_token,
});Use the convenience helpers below when the SDK exposes them, or call the typed endpoint methods directly with GET / POST / PATCH / DELETE.
Convenience helpers
This SDK does not add convenience helpers beyond the typed endpoint calls below.
Endpoint calls
GET /readyz
Underlying REST endpoint: GET /readyz
Parameters
None
Return type
Promise<{
data?: paths["/readyz"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.GET("/readyz");POST /v1/admin/sync-all
Underlying REST endpoint: POST /v1/admin/sync-all
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/sync-all"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/admin/sync-all");POST /v1/admin/youtube/podcast/poll
Underlying REST endpoint: POST /v1/admin/youtube/podcast/poll
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/youtube/podcast/poll"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/admin/youtube/podcast/poll");GET /v1/connections
Underlying REST endpoint: GET /v1/connections
Parameters
query: paths["/v1/connections"]["get"]["parameters"]["query"]
Return type
Promise<{
data?: paths["/v1/connections"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.GET("/v1/connections", {
params: {
query: {
/* paths["/v1/connections"]["get"]["parameters"]["query"] */
},
},
});DELETE /v1/connections/{connectionId}
Underlying REST endpoint: DELETE /v1/connections/\{connectionId\}
Parameters
path: paths["/v1/connections/{connectionId}"]["delete"]["parameters"]["path"]query: paths["/v1/connections/{connectionId}"]["delete"]["parameters"]["query"]
Return type
Promise<{
data?: paths["/v1/connections/{connectionId}"]["delete"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.DELETE("/v1/connections/{connectionId}", {
params: {
path: {
connectionId: "<connectionId>",
},
query: {
/* paths["/v1/connections/{connectionId}"]["delete"]["parameters"]["query"] */
},
},
});POST /v1/connections/authorize
Underlying REST endpoint: POST /v1/connections/authorize
Parameters
body: paths["/v1/connections/authorize"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/connections/authorize"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/connections/authorize", {
body: {
/* paths["/v1/connections/authorize"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/connections/callback
Underlying REST endpoint: POST /v1/connections/callback
Parameters
body: paths["/v1/connections/callback"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/connections/callback"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/connections/callback", {
body: {
/* paths["/v1/connections/callback"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/labs/orders
Underlying REST endpoint: GET /v1/labs/orders
Parameters
None
Return type
Promise<{
data?: paths["/v1/labs/orders"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.GET("/v1/labs/orders");POST /v1/labs/orders
Underlying REST endpoint: POST /v1/labs/orders
Parameters
header: paths["/v1/labs/orders"]["post"]["parameters"]["header"]body: paths["/v1/labs/orders"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/labs/orders"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/labs/orders", {
params: {
header: {
/* paths["/v1/labs/orders"]["post"]["parameters"]["header"] */
},
},
body: {
/* paths["/v1/labs/orders"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/labs/orders/{id}
Underlying REST endpoint: GET /v1/labs/orders/\{id\}
Parameters
path: paths["/v1/labs/orders/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/labs/orders/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.GET("/v1/labs/orders/{id}", {
params: {
path: {
id: "<id>",
},
},
});GET /v1/providers
Underlying REST endpoint: GET /v1/providers
Parameters
None
Return type
Promise<{
data?: paths["/v1/providers"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.GET("/v1/providers");POST /v1/rimo/sso
Underlying REST endpoint: POST /v1/rimo/sso
Parameters
body: paths["/v1/rimo/sso"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/rimo/sso"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/rimo/sso", {
body: {
/* paths["/v1/rimo/sso"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/stream/webhooks
Underlying REST endpoint: POST /v1/stream/webhooks
Parameters
None
Return type
Promise<{
data?: paths["/v1/stream/webhooks"]["post"]["responses"]["202"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/stream/webhooks");POST /v1/sync/{connectionId}
Underlying REST endpoint: POST /v1/sync/\{connectionId\}
Parameters
path: paths["/v1/sync/{connectionId}"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/sync/{connectionId}"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await integrations.POST("/v1/sync/{connectionId}", {
params: {
path: {
connectionId: "<connectionId>",
},
},
});