Skip to content
Docs
Reference

BackstageClient.signup

BackstageClient.signup in @ticketlayer/backstage.

@ticketlayer/backstage


@ticketlayer/backstage / BackstageClient / signup

signup: {
  signUp: (request: {
     organisationName: string;
     templateName?: "venue" | "platform" | "developer";
   }, requestOptions?: RequestOptions) => Promise<{
     account: {
        id: string;
        name: string;
     };
     organisation: {
        apiVersion: string;
        id: string;
        name: string;
        plan: string;
        slug: string;
        template: string | null;
     };
     owner: {
        email: string;
        id: string;
     };
     sandbox: {
        channelId: string;
        channelSlug: string;
        eventId: string;
        eventOccurrenceId: string;
        feeProfileId: string;
        listingId: string;
        paymentProviderId: string;
        publishableKey: string;
     };
  }>;
};

Defined in: client.ts:1652

Signup methods

signUp()#

signUp: (request: {
  organisationName: string;
  templateName?: "venue" | "platform" | "developer";
}, requestOptions?: RequestOptions) => Promise<{
  account: {
     id: string;
     name: string;
  };
  organisation: {
     apiVersion: string;
     id: string;
     name: string;
     plan: string;
     slug: string;
     template: string | null;
  };
  owner: {
     email: string;
     id: string;
  };
  sandbox: {
     channelId: string;
     channelSlug: string;
     eventId: string;
     eventOccurrenceId: string;
     feeProfileId: string;
     listingId: string;
     paymentProviderId: string;
     publishableKey: string;
  };
}>;

Sign up Creates the first organisation for a person who has just registered with Ticketlayer's identity provider, and everything it takes to sell something: a default account, a website channel with a publishable key, a fee profile, a buyable sample event listed on that channel, and the sandbox payment provider. The organisation starts in test mode and is pinned to the current dated API version. Authenticated by the identity provider's own bearer token and nothing else; the owner's identity and email come from that token, never from this body. Ask the person which templateName describes them rather than choosing one: it decides whether customers are shared across the organisation's accounts or owned by each, which is a data migration to change later. One organisation per account, and rate limited.

Parameters#

ParameterTypeDescription
request{ organisationName: string; templateName?: "venue" | "platform" | "developer"; }-
request.organisationNamestringDescription What to call the organisation. Its slug is derived from this. Example Acme Events
request.templateName?"venue" | "platform" | "developer"Description What shape of organisation this is, as the person signing up answered it. ASK THEM; do not pick one for them. venue: one seller, whose resident promoters may become accounts; one customer list. platform: a platform selling on behalf of unrelated clients, an account per client, and each account owns its own customers. developer: building against the API first; one customer list. It decides whether customer records are shared across the organisation's accounts or kept per account, which cannot be changed later without migrating customer data, so it is asked rather than inferred. Omitted, nothing is recorded as chosen: the organisation shares one customer list, as every organisation created before this question existed does. An unknown name is rejected. Example venue @enum {string}
requestOptions?RequestOptions-

Returns#

Promise<{ account: { id: string; name: string; }; organisation: { apiVersion: string; id: string; name: string; plan: string; slug: string; template: string | null; }; owner: { email: string; id: string; }; sandbox: { channelId: string; channelSlug: string; eventId: string; eventOccurrenceId: string; feeProfileId: string; listingId: string; paymentProviderId: string; publishableKey: string; }; }>

Operation Id#

signUp