1.41.2 • Published 5 months ago

seatmap-stubs v1.41.2

Weekly downloads
-
License
ISC
Repository
-
Last release
5 months ago

Seatmap Stubs

Auto-generated TypeScript library for using the Seatmap API.

Installation

npm install seatmap-stubs

Usage

import { getEvents, getVenues, lock, sale, Options } from 'seatmap-stubs';
import { createClient, createConfig } from '@hey-api/client-fetch';

// Initialize a custom client (optional)
const client = createClient(createConfig({
  baseUrl: 'https://booking.seatmap.dev',
  headers: {
    Authorization: 'Bearer YOUR_API_TOKEN'
  }
}));

// Example: Get all events
async function fetchEvents() {
  try {
    const response = await getEvents({
      client // Optional: pass your custom client
    });
    console.log('Events:', response.data);
  } catch (error) {
    console.error('API call failed:', error);
  }
}

// Example: Lock a seat
async function lockSeat(seatId: string, schemaId: string) {
  try {
    const response = await lock({
      data: {
        seatId,
        schemaId
      },
      // You can also provide auth directly in the options
      headers: {
        Authorization: 'Bearer YOUR_API_TOKEN'
      }
    });
    console.log('Seat locked:', response.data);
    return response.data;
  } catch (error) {
    console.error('Failed to lock seat:', error);
    throw error;
  }
}

// Example: Complete a sale
async function completeSale(seatId: string, schemaId: string) {
  try {
    const response = await sale({
      data: {
        seatId,
        schemaId
      },
      headers: {
        Authorization: 'Bearer YOUR_API_TOKEN'
      }
    });
    console.log('Sale completed:', response.data);
    return response.data;
  } catch (error) {
    console.error('Sale failed:', error);
    throw error;
  }
}

Available API Methods

The library provides TypeScript bindings for all Seatmap API endpoints, including:

  • Event management: getEvents, addEvent, updateEvent, etc.
  • Venue management: getVenues, addVenue, updateVenue, etc.
  • Seat operations: lock, unLock, sale, revertSale, etc.
  • Pricing: getPrices, priceCreate, assignPrice, etc.
  • Schema management: geSchemas, updateSchema, cloneSchemaById, etc.

Development

Prerequisites

  • Node.js (v14 or later)
  • npm

Setup

  1. Clone the repository
  2. Install dependencies:
    npm install

Building the library

The library is auto-generated from the Seatmap API OpenAPI specification:

# Generate API client from OpenAPI spec
npm run generate-api

# Build the library
npm run build

License

ISC

1.41.2

5 months ago