Sage SDK
  • Getting Started
    • Installation
    • Frontend
    • Server
    • Error Handling
  • Channel
    • Create
    • Membership
    • Moderation
  • Post
  • Update
  • Invite
    • Creation
    • Deletion
  • Post
    • Comment
    • Like
  • User
    • Create
    • Membership
    • Post
    • Update
Powered by GitBook
On this page
  1. Invite

Creation

Querying for New Invite Events

import { EventId, SuiClient, getFullnodeUrl } from '@mysten/sui/client';
import { SageClient } from '@sage-app/sdk/client';

...

interface QueryInput {
  cursor?: EventId;
}

const network = 'mainnet' | 'testnet';
const suiClient = new SuiClient({ url: getFullnodeUrl(network) });
const sageClient = new SageClient({ network, suiClient });

...

const pollNewInvites = async ({ cursor }) => {
  const {
    eventCount,
    events,
    hasNextPage,
    nextCursor
  } = await sageClient.queryInviteCreateEvents({ cursor }: QueryInput);
  
  // do something with events
  
  setTimeout(() => pollNewInvites({ cursor: nextCursor }), 5000);
};

In this case events will take the shape of an array of InviteCreateEvent:

interface InviteCreateEvent {
  inviteCode: string;
  inviteKey: string;
  user: string;            // referring user's address
}  
PreviousUpdateNextDeletion

Last updated 9 months ago