diff --git a/src/gen/feeds/FeedsApi.ts b/src/gen/feeds/FeedsApi.ts index ea201e3..60ab1e3 100644 --- a/src/gen/feeds/FeedsApi.ts +++ b/src/gen/feeds/FeedsApi.ts @@ -25,6 +25,8 @@ import { CreateFeedViewResponse, CreateFeedsBatchRequest, CreateFeedsBatchResponse, + CreateMembershipLevelRequest, + CreateMembershipLevelResponse, DeleteActivitiesRequest, DeleteActivitiesResponse, DeleteActivityReactionResponse, @@ -1830,6 +1832,34 @@ export class FeedsApi { return { ...response.body, metadata: response.metadata }; } + async createMembershipLevel( + request: CreateMembershipLevelRequest, + ): Promise> { + const body = { + id: request?.id, + name: request?.name, + description: request?.description, + priority: request?.priority, + tags: request?.tags, + custom: request?.custom, + }; + + const response = await this.apiClient.sendRequest< + StreamResponse + >( + 'POST', + '/api/v2/feeds/membership_levels', + undefined, + undefined, + body, + 'application/json', + ); + + decoders.CreateMembershipLevelResponse?.(response.body); + + return { ...response.body, metadata: response.metadata }; + } + async unfollowBatch( request: UnfollowBatchRequest, ): Promise> { diff --git a/src/gen/model-decoders/decoders.ts b/src/gen/model-decoders/decoders.ts index 49ee5e5..1b79b2c 100644 --- a/src/gen/model-decoders/decoders.ts +++ b/src/gen/model-decoders/decoders.ts @@ -1656,6 +1656,13 @@ decoders.CreateImportResponse = (input?: Record) => { return decode(typeMappings, input); }; +decoders.CreateMembershipLevelResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + membership_level: { type: 'MembershipLevelResponse', isSingle: true }, + }; + return decode(typeMappings, input); +}; + decoders.CreateRoleResponse = (input?: Record) => { const typeMappings: TypeMapping = { role: { type: 'Role', isSingle: true }, @@ -2537,6 +2544,15 @@ decoders.MembersResponse = (input?: Record) => { return decode(typeMappings, input); }; +decoders.MembershipLevelResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + created_at: { type: 'DatetimeType', isSingle: true }, + + updated_at: { type: 'DatetimeType', isSingle: true }, + }; + return decode(typeMappings, input); +}; + decoders.Message = (input?: Record) => { const typeMappings: TypeMapping = { created_at: { type: 'DatetimeType', isSingle: true }, diff --git a/src/gen/models/index.ts b/src/gen/models/index.ts index 7df2e53..dfe2577 100644 --- a/src/gen/models/index.ts +++ b/src/gen/models/index.ts @@ -4154,6 +4154,26 @@ export interface CreateImportURLResponse { upload_url: string; } +export interface CreateMembershipLevelRequest { + id: string; + + name: string; + + description?: string; + + priority?: number; + + tags?: string[]; + + custom?: Record; +} + +export interface CreateMembershipLevelResponse { + duration: string; + + membership_level: MembershipLevelResponse; +} + export interface CreatePollOptionRequest { text: string; @@ -6926,6 +6946,24 @@ export interface MembersResponse { members: ChannelMember[]; } +export interface MembershipLevelResponse { + created_at: Date; + + id: string; + + name: string; + + priority: number; + + updated_at: Date; + + tags: string[]; + + description?: string; + + custom?: Record; +} + export interface Message { cid: string;