@wodira/sdk
v0.1.0
Published
TypeScript SDK for the WODira organizer public API.
Maintainers
Readme
@wodira/sdk
SDK TypeScript publicable para la API externa de organizadores de WODira. Funciona en Bun, Node moderno y navegadores con fetch.
Importante: este paquete usa secret keys
wd_live_...y está pensado para backend/server. El cliente lanza error si detecta ejecución en navegador. Para frontends públicos usa@wodira/browsercon publishable keyswpk_live_....
Instalación
bun add @wodira/sdk
# o pnpm add @wodira/sdkUso rápido
import { createWodiraClient } from '@wodira/sdk';
const wodira = createWodiraClient({
apiKey: process.env.WODIRA_API_KEY!,
// baseUrl: 'https://api.wodira.app', // opcional
});
const events = await wodira.searchEvents({ status: 'PUBLISHED', limit: 20 });
const pricing = await wodira.getPricingCards(events.data[0].id);
const order = await wodira.createRegistration({
eventId: events.data[0].id,
categoryId: pricing.cards[0].id,
teamName: 'Mi equipo',
athletes: [
{
fullname: 'Ada Lovelace',
email: '[email protected]',
gender: 'FEMALE',
birthDate: '1990-01-01',
},
],
});API disponible
searchEvents({ search?, status?, limit?, offset? })getEvent(eventId)getPricingCards(eventId)createRegistration(input)searchRegistrations(filters)updateRegistration(ticketId, input)deleteRegistration(ticketId)
Errores
Las respuestas no-2xx lanzan WodiraApiError con status, statusText y payload.
import { WodiraApiError } from '@wodira/sdk';
try {
await wodira.getEvent('missing');
} catch (error) {
if (error instanceof WodiraApiError) {
console.error(error.status, error.payload);
}
}Desarrollo
bun test
bun run build