@culturekit/culturekit-js
TypeScript icon, indicating that this package has built-in type declarations

0.1.69 • Public • Published

culturekit-js

JavaScript client for CultureKit.

Usage

First of all, you need to install the package:

npm install @culturekit/culturekit-js

Then you'll be able to import the package and create a client:

import { createClient } from '@culturekit/culturekit-js';

// Creates a singleton CultureKit client which you can use to interact with CultureKit
const culturekit = createClient({
  apiUrl: 'https://api.xyz.com',
});

UMD

You can use plain <script>s to import culturekit-js from CDNs:

<script src="https://cdn.jsdelivr.net/npm/@culturekit/culturekit-js"></script>

or even:

<script src="https://unpkg.com/@culturekit/culturekit-js"></script>

Note: Please make sure to pin the used version to prevent breaking.

Then you can use it from a global culturekit variable:

<script>
  const { createClient } = culturekit;
  const _culturekit = createClient({
    apiUrl: 'https://api.xyz.com',
  });

  console.log('CultureKit Instance: ', _culturekit);
  // ...
</script>

ESM

You can use type="module" <script>s to import culturekit-js from CDNs:

<script type="module">
  import { createClient } from 'https://cdn.jsdelivr.net/npm/@culturekit/culturekit-js/+esm';
  const culturekit = createClient({
    apiUrl: 'https://api.xyz.com',
  });

  console.log('CultureKit Instance: ', culturekit);
  // ...
</script>

Note: Please make sure to pin the used version to prevent breaking.

General

Set locale (optional)

const locale = 'nl'; // ISO 639-1 string
culturekit.setLocale(locale);

Or alternatively, you can set the locale through query params.

const locale = 'nl'; // ISO 639-1 string
culturekit.schedule.productions.list({ locale });

Authentication (optional)

A bearer token is used to make authenticated requests against the API:

const accessToken = 'eyJhbGciOiJSUzI1NiIsImtpZCI6'; // Without 'Bearer '
cultureKitclient.setAccessToken(token.access_token);

Set it to null to stop using authentication:

cultureKitclient.setAccessToken(null);

Collections

Collections

Create a collection

const inputData = {}
const { rawData, error } = await culturekit.schedule.collections.create(
  inputData
);

Retrieve a collection

const query = {};
const { rawData, error } = await culturekit.schedule.collections.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve collections list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.collections.list(query);

Add item to collection

const inputData = {}
const { rawData, error } =
  await culturekit.schedule.collections.addItem(
    inputData
  );

Remove item from collection

const inputData = {}
const { rawData, error } =
  await culturekit.schedule.collections.removeItem(
    inputData
  );

Collection groups

Create a collection group

const inputData = {}
const { rawData, error } = await culturekit.schedule.collectionGroups.create(
  inputData
);

Retrieve a collection group

const query = {};
const { rawData, error } = await culturekit.schedule.collectionGroups.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve collection groups list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.collectionGroups.list(query);

Customers

Customers

Retrieve logged in customer

const { rawData, error } =
  await culturekit.customers.customers.getLoggedInCustomer();

Retrieve a customer

const query = {};
const { rawData, error } = await culturekit.customers.customers.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve customers list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.customers.customers.list(query);

Cards

Retrieve cards for customer

const query = {};
const { rawData, error, previous, next } =
  await culturekit.customers.cards.listForCustomer(
    'de21ad60-6b14-4432-b87e-8f728d5d7007',
    query
  );

Reservations

Retrieve reservations for customer

const query = {};
const { rawData, error, previous, next } =
  await culturekit.customers.reservations.listForCustomer(
    'de21ad60-6b14-4432-b87e-8f728d5d7007',
    query
  );

Visits

Retrieve visits for customer

const query = {};
const { rawData, error, previous, next } =
  await culturekit.customers.visits.listForCustomer(
    'de21ad60-6b14-4432-b87e-8f728d5d7007',
    query
  );

Invoices

Retrieve invoices for customer

const query = {};
const { rawData, error, previous, next } =
  await culturekit.customers.invoices.listForCustomer(
    'de21ad60-6b14-4432-b87e-8f728d5d7007',
    query
  );

Subscriptions

Retrieve subscriptions for customer

const query = {};
const { rawData, error, previous, next } =
  await culturekit.customers.subscriptions.listForCustomer(
    'de21ad60-6b14-4432-b87e-8f728d5d7007',
    query
  );

Invoices

Invoices

Download an invoice

const inputData = {};
const { rawData, error } =
  await culturekit.invoices.invoices.download(
    inputData
  );

Retrieve a invoice

const query = {};
const { rawData, error } = await culturekit.invoices.invoices.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve invoices list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.invoices.invoices.list(query);

Ordering

Look up address

const inputData = {};
const { rawData, error } =
  await culturekit.ordering.lookupAddress(
    inputData
  );

Order forms

Create an order form

const inputData = {}
const { rawData, error } = await culturekit.schedule.orderForms.create(
  inputData
);

Update an order form

const inputData = {}
const query = {};
const { rawData, error } = await culturekit.schedule.orderForms.update(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  inputData,
  query
);

Retrieve an order form

const query = {};
const { rawData, error } = await culturekit.schedule.orderForms.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve order forms list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.orderForms.list(query);

Product

Retrieve a product

const query = {};
const { rawData, error } = await culturekit.ordering.products.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve products list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.ordering.products.list(query);

Order

Create a order

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.create(
  inputData
);

Update a order

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.update(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  inputData,
);

Retrieve a order

const { rawData, error } = await culturekit.ordering.orders.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
);

(Deprecated) Retrieve available products for order

const { rawData, error } = await culturekit.ordering.orders.getAvailableProductsForOrder(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
);

Upload photo for order

const photo = new File();
const { rawData, error } = await culturekit.ordering.orders.uploadPhotoForOrder(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  photo
);

Retrieve payment methods for order

const { rawData, error } = await culturekit.ordering.orders.getPaymentMethodsForOrder(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
);

(Deprecated) Start payment method for order

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.startPaymentForOrder(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  inputData
);

Confirm order

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.confirm(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  inputData
);

Add voucher to order

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.addVoucherToOrder(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  inputData
);

Add line item to order

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.addLineItemToOrder(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  inputData
);

Update line item to order

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.updateLineItemToOrder(
  'de21ad60-6b14-4432-b87e-8f728d5d7007', //orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  'cb78ad60-6b14-4432-b87e-8f728m2e4503', //lineItemId
  inputData
);

Retrieve product option information

const inputData = {}
const { rawData, error } = await culturekit.ordering.orders.getProductOptionInformation(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',//orderId
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //sessionId
  'cb78ad60-6b14-4432-b87e-8f728m2e4503', //productId
);

Schedule

Productions

Create a production

const inputData = {}
const { rawData, error } = await culturekit.schedule.productions.create(
  inputData
);

Update a production

const inputData = {}
const query = {};
const { rawData, error } = await culturekit.schedule.productions.update(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  inputData,
  query
);

Retrieve a production

const query = {};
const { rawData, error } = await culturekit.schedule.productions.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve productions list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.productions.list(query);

Retrieve collections for a production

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.productions.getCollections(
    'de21ad60-6b14-4432-b87e-8f728d5d7007', 
    query
  );

Retrieve assets for a production

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.productions.getAssets(
    'de21ad60-6b14-4432-b87e-8f728d5d7007', 
    query
  );

Upload asset for a production

const inputData = {}
const { rawData, error } = await culturekit.schedule.productions.uploadAsset(
  inputData
);

Delete asset for a production

const inputData = {}
const { rawData, error } = await culturekit.schedule.productions.deleteAsset(
  'ab85ad60-6b14-4432-b87e-8f728r7r1009' //assetId
);

Events

Create an event

const inputData = {}
const { rawData, error } = await culturekit.schedule.events.create(
  inputData
);

Update an event

const inputData = {}
const query = {};
const { rawData, error } = await culturekit.schedule.events.update(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  inputData,
  query
);

Retrieve an event

const query = {};
const { rawData, error } = await culturekit.schedule.events.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Patch an event

const inputData = {}
const query = {};
const { rawData, error } = await culturekit.schedule.events.patch(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  inputData,
  query
);

Retrieve events list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.events.list(query);

Retrieve collections for an event

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.events.getCollections(
    'de21ad60-6b14-4432-b87e-8f728d5d7007', 
    query
  );

Venues

Create a venue

const inputData = {}
const { rawData, error } = await culturekit.schedule.venues.create(
  inputData
);

Update a venue

const inputData = {}
const query = {};
const { rawData, error } = await culturekit.schedule.venues.update(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  inputData,
  query
);

Retrieve a venue

const query = {};
const { rawData, error } = await culturekit.schedule.venues.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve venues list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.venues.list(query);

Retrieve collections for a venue

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.venues.getCollections(
    'de21ad60-6b14-4432-b87e-8f728d5d7007', 
    query
  );

Retrieve assets for a venue

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.venues.getAssets(
    'de21ad60-6b14-4432-b87e-8f728d5d7007', 
    query
  );

Upload asset for a venue

const inputData = {}
const { rawData, error } = await culturekit.schedule.venues.uploadAsset(
  inputData
);

Delete asset for a venue

const inputData = {}
const { rawData, error } = await culturekit.schedule.venues.uploadAsset(
  'ab85ad60-6b14-4432-b87e-8f728r7r1009'
);

Production types

Retrieve a production type

const query = {};
const { rawData, error } = await culturekit.schedule.productionTypes.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve product types list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.schedule.productionTypes.list(query);

Users

Users

Retrieve logged in user

const { rawData, error } =
  await culturekit.users.users.getLoggedInuser();

Retrieve a user

const query = {};
const { rawData, error } = await culturekit.users.users.get(
  'de21ad60-6b14-4432-b87e-8f728d5d7007',
  query
);

Retrieve users list

const query = {};
const { rawData, error, previous, next } =
  await culturekit.users.users.list(query);

Readme

Keywords

none

Package Sidebar

Install

npm i @culturekit/culturekit-js

Weekly Downloads

47

Version

0.1.69

License

MIT

Unpacked Size

2.2 MB

Total Files

417

Last publish

Collaborators

  • milanvanschaik
  • joeri-cineville