API Referencesdks@platform/sdk-entitlements

@platform/sdk-entitlements

Typed TypeScript client for services/entitlements. The page is generated from the SDK package source plus its generated OpenAPI types.

Installation

npm install @platform/sdk-entitlements

You’ll also need the shared auth/client helpers:

npm install @platform/hosts @platform/sdk

Quick start

import { LoopClient } from "@platform/sdk";
import { platformHost, SERVICE_NAMES } from "@platform/hosts";
import { createEntitlementsClient } from "@platform/sdk-entitlements";
 
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 entitlements = createEntitlementsClient({
  baseUrl: platformHost({ service: SERVICE_NAMES.ENTITLEMENTS }),
  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

grantEntitlement

Underlying REST endpoint: POST /v1/admin/entitlements/grants

Parameters

  • input: GrantEntitlementInput

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/grants"]["post"]["responses"]["201"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.grantEntitlement({
  /* GrantEntitlementInput */
});

listGrants

Underlying REST endpoint: GET /v1/admin/entitlements/grants

Parameters

  • userId: string

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/grants"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.listGrants("<userId>");

previewEntitlements

Underlying REST endpoint: GET /v1/admin/entitlements/preview

Parameters

  • userId: string
  • brandId?: string

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/preview"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.previewEntitlements("<userId>", "<brandId>");

Endpoint calls

GET /health/deep

Underlying REST endpoint: GET /health/deep

Parameters

None

Return type

Promise<{
  data?: paths["/health/deep"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/health/deep");

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 entitlements.GET("/readyz");

GET /v1/admin/entitlements/beta-cohort

Underlying REST endpoint: GET /v1/admin/entitlements/beta-cohort

Parameters

None

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/beta-cohort"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/v1/admin/entitlements/beta-cohort");

POST /v1/admin/entitlements/beta-cohort

Underlying REST endpoint: POST /v1/admin/entitlements/beta-cohort

Parameters

  • body?: paths["/v1/admin/entitlements/beta-cohort"]["post"]["requestBody"]["content"]["application/json"]

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/beta-cohort"]["post"]["responses"]["201"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.POST("/v1/admin/entitlements/beta-cohort", {
  body: {
    /* paths["/v1/admin/entitlements/beta-cohort"]["post"]["requestBody"]["content"]["application/json"] */
  },
});

DELETE /v1/admin/entitlements/beta-cohort/{user_id}

Underlying REST endpoint: DELETE /v1/admin/entitlements/beta-cohort/\{user_id\}

Parameters

  • path: paths["/v1/admin/entitlements/beta-cohort/{user_id}"]["delete"]["parameters"]["path"]

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/beta-cohort/{user_id}"]["delete"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.DELETE("/v1/admin/entitlements/beta-cohort/{user_id}", {
  params: {
    path: {
      user_id: "<user_id>",
    },
  },
});

POST /v1/admin/entitlements/beta-cohort/bulk

Underlying REST endpoint: POST /v1/admin/entitlements/beta-cohort/bulk

Parameters

  • body?: paths["/v1/admin/entitlements/beta-cohort/bulk"]["post"]["requestBody"]["content"]["application/json"]

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/beta-cohort/bulk"]["post"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.POST("/v1/admin/entitlements/beta-cohort/bulk", {
  body: {
    /* paths["/v1/admin/entitlements/beta-cohort/bulk"]["post"]["requestBody"]["content"]["application/json"] */
  },
});

GET /v1/admin/entitlements/grants

Underlying REST endpoint: GET /v1/admin/entitlements/grants

Parameters

  • query: paths["/v1/admin/entitlements/grants"]["get"]["parameters"]["query"]

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/grants"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/v1/admin/entitlements/grants", {
  params: {
    query: {
      /* paths["/v1/admin/entitlements/grants"]["get"]["parameters"]["query"] */
    },
  },
});

POST /v1/admin/entitlements/grants

Underlying REST endpoint: POST /v1/admin/entitlements/grants

Parameters

  • body?: paths["/v1/admin/entitlements/grants"]["post"]["requestBody"]["content"]["application/json"]

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/grants"]["post"]["responses"]["201"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.POST("/v1/admin/entitlements/grants", {
  body: {
    /* paths["/v1/admin/entitlements/grants"]["post"]["requestBody"]["content"]["application/json"] */
  },
});

GET /v1/admin/entitlements/preview

Underlying REST endpoint: GET /v1/admin/entitlements/preview

Parameters

  • query: paths["/v1/admin/entitlements/preview"]["get"]["parameters"]["query"]

Return type

Promise<{
  data?: paths["/v1/admin/entitlements/preview"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/v1/admin/entitlements/preview", {
  params: {
    query: {
      /* paths["/v1/admin/entitlements/preview"]["get"]["parameters"]["query"] */
    },
  },
});

GET /v1/entitlements/beta-access

Underlying REST endpoint: GET /v1/entitlements/beta-access

Parameters

  • query: paths["/v1/entitlements/beta-access"]["get"]["parameters"]["query"]

Return type

Promise<{
  data?: paths["/v1/entitlements/beta-access"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/v1/entitlements/beta-access", {
  params: {
    query: {
      /* paths["/v1/entitlements/beta-access"]["get"]["parameters"]["query"] */
    },
  },
});

GET /v1/entitlements/check

Underlying REST endpoint: GET /v1/entitlements/check

Parameters

  • query: paths["/v1/entitlements/check"]["get"]["parameters"]["query"]

Return type

Promise<{
  data?: paths["/v1/entitlements/check"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/v1/entitlements/check", {
  params: {
    query: {
      /* paths["/v1/entitlements/check"]["get"]["parameters"]["query"] */
    },
  },
});

GET /v1/entitlements/cohort-membership

Underlying REST endpoint: GET /v1/entitlements/cohort-membership

Parameters

  • query: paths["/v1/entitlements/cohort-membership"]["get"]["parameters"]["query"]

Return type

Promise<{
  data?: paths["/v1/entitlements/cohort-membership"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/v1/entitlements/cohort-membership", {
  params: {
    query: {
      /* paths["/v1/entitlements/cohort-membership"]["get"]["parameters"]["query"] */
    },
  },
});

POST /v1/entitlements/overrides

Underlying REST endpoint: POST /v1/entitlements/overrides

Parameters

  • body?: paths["/v1/entitlements/overrides"]["post"]["requestBody"]["content"]["application/json"]

Return type

Promise<{
  data?: paths["/v1/entitlements/overrides"]["post"]["responses"]["201"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.POST("/v1/entitlements/overrides", {
  body: {
    /* paths["/v1/entitlements/overrides"]["post"]["requestBody"]["content"]["application/json"] */
  },
});

GET /v1/entitlements/user/{id}

Underlying REST endpoint: GET /v1/entitlements/user/\{id\}

Parameters

  • path: paths["/v1/entitlements/user/{id}"]["get"]["parameters"]["path"]
  • query: paths["/v1/entitlements/user/{id}"]["get"]["parameters"]["query"]

Return type

Promise<{
  data?: paths["/v1/entitlements/user/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
  error?: unknown;
  response: Response;
}>

Example

const result = await entitlements.GET("/v1/entitlements/user/{id}", {
  params: {
    path: {
      id: "<id>",
    },
    query: {
      /* paths["/v1/entitlements/user/{id}"]["get"]["parameters"]["query"] */
    },
  },
});