@heymantle/core-api-client 0.1.19 → 0.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +531 -1
- package/dist/index.d.ts +531 -1
- package/dist/index.js +221 -0
- package/dist/index.mjs +221 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1537,6 +1537,28 @@ interface UsageEventMetricsParams extends MetricsBaseParams {
|
|
|
1537
1537
|
interface UsageMetricParams extends MetricsBaseParams {
|
|
1538
1538
|
metricId: string;
|
|
1539
1539
|
}
|
|
1540
|
+
/**
|
|
1541
|
+
* Parameters for sales metrics request
|
|
1542
|
+
*/
|
|
1543
|
+
interface SalesMetricsParams {
|
|
1544
|
+
userId?: string;
|
|
1545
|
+
}
|
|
1546
|
+
/**
|
|
1547
|
+
* Sales metrics data
|
|
1548
|
+
*/
|
|
1549
|
+
interface SalesMetrics {
|
|
1550
|
+
attributedRevenue: number;
|
|
1551
|
+
activeDeals: number;
|
|
1552
|
+
activeDealsTotalAmount: number;
|
|
1553
|
+
winRate: number;
|
|
1554
|
+
avgDealSize: number;
|
|
1555
|
+
}
|
|
1556
|
+
/**
|
|
1557
|
+
* Response from sales metrics endpoint
|
|
1558
|
+
*/
|
|
1559
|
+
interface SalesMetricsResponse {
|
|
1560
|
+
metrics: SalesMetrics;
|
|
1561
|
+
}
|
|
1540
1562
|
|
|
1541
1563
|
/**
|
|
1542
1564
|
* Webhook topic types
|
|
@@ -2693,6 +2715,294 @@ interface AgentRunRetrieveResponse {
|
|
|
2693
2715
|
run: AgentRun;
|
|
2694
2716
|
}
|
|
2695
2717
|
|
|
2718
|
+
/**
|
|
2719
|
+
* Meeting attendee entity
|
|
2720
|
+
*/
|
|
2721
|
+
interface MeetingAttendee {
|
|
2722
|
+
id: string;
|
|
2723
|
+
/** External ID from the browser extension (e.g., "A", "B") */
|
|
2724
|
+
externalId?: string | null;
|
|
2725
|
+
name?: string | null;
|
|
2726
|
+
email?: string | null;
|
|
2727
|
+
/** Hex color for UI display */
|
|
2728
|
+
color?: string | null;
|
|
2729
|
+
/** Total talk time in milliseconds */
|
|
2730
|
+
talkTime?: number | null;
|
|
2731
|
+
/** Total word count */
|
|
2732
|
+
wordCount?: number | null;
|
|
2733
|
+
/** Associated Mantle user */
|
|
2734
|
+
user?: {
|
|
2735
|
+
id: string;
|
|
2736
|
+
name?: string;
|
|
2737
|
+
email?: string;
|
|
2738
|
+
} | null;
|
|
2739
|
+
/** Associated Mantle contact */
|
|
2740
|
+
contact?: {
|
|
2741
|
+
id: string;
|
|
2742
|
+
name?: string;
|
|
2743
|
+
email?: string;
|
|
2744
|
+
} | null;
|
|
2745
|
+
}
|
|
2746
|
+
/**
|
|
2747
|
+
* Meeting transcript utterance (a single spoken segment)
|
|
2748
|
+
*/
|
|
2749
|
+
interface MeetingUtterance {
|
|
2750
|
+
id: string;
|
|
2751
|
+
attendeeId?: string | null;
|
|
2752
|
+
attendee?: {
|
|
2753
|
+
id: string;
|
|
2754
|
+
name?: string;
|
|
2755
|
+
email?: string;
|
|
2756
|
+
} | null;
|
|
2757
|
+
text: string;
|
|
2758
|
+
/** Start time in milliseconds from meeting start */
|
|
2759
|
+
startTime: number;
|
|
2760
|
+
/** End time in milliseconds from meeting start */
|
|
2761
|
+
endTime: number;
|
|
2762
|
+
/** Sequence number for ordering */
|
|
2763
|
+
sequence: number;
|
|
2764
|
+
/** Transcription confidence score */
|
|
2765
|
+
confidence?: number | null;
|
|
2766
|
+
/** Word-level timing data */
|
|
2767
|
+
words?: Array<{
|
|
2768
|
+
text: string;
|
|
2769
|
+
startTime: number;
|
|
2770
|
+
endTime: number;
|
|
2771
|
+
confidence?: number;
|
|
2772
|
+
}> | null;
|
|
2773
|
+
}
|
|
2774
|
+
/**
|
|
2775
|
+
* Meeting transcript entity
|
|
2776
|
+
*/
|
|
2777
|
+
interface MeetingTranscript {
|
|
2778
|
+
id: string;
|
|
2779
|
+
/** Language code (e.g., "en") */
|
|
2780
|
+
language?: string | null;
|
|
2781
|
+
/** Transcript status: pending, processing, completed, failed */
|
|
2782
|
+
status?: string | null;
|
|
2783
|
+
/** Full text of the transcript */
|
|
2784
|
+
fullText?: string | null;
|
|
2785
|
+
/** External transcript ID (e.g., AssemblyAI) */
|
|
2786
|
+
externalId?: string | null;
|
|
2787
|
+
/** Individual utterances with speaker attribution */
|
|
2788
|
+
utterances?: MeetingUtterance[];
|
|
2789
|
+
createdAt?: string | null;
|
|
2790
|
+
updatedAt?: string | null;
|
|
2791
|
+
}
|
|
2792
|
+
/**
|
|
2793
|
+
* Meeting entity
|
|
2794
|
+
*/
|
|
2795
|
+
interface Meeting {
|
|
2796
|
+
id: string;
|
|
2797
|
+
/** External ID from the browser extension */
|
|
2798
|
+
externalId?: string | null;
|
|
2799
|
+
title?: string | null;
|
|
2800
|
+
/** AI-generated or manual summary */
|
|
2801
|
+
summary?: string | null;
|
|
2802
|
+
/** Meeting platform: google_meet, zoom, teams */
|
|
2803
|
+
platform?: string | null;
|
|
2804
|
+
/** Platform-specific meeting ID */
|
|
2805
|
+
platformMeetingId?: string | null;
|
|
2806
|
+
/** URL to join the meeting */
|
|
2807
|
+
meetingUrl?: string | null;
|
|
2808
|
+
startTime?: string | null;
|
|
2809
|
+
endTime?: string | null;
|
|
2810
|
+
/** Duration in seconds */
|
|
2811
|
+
duration?: number | null;
|
|
2812
|
+
/** URL to the recording (e.g., S3/CDN URL) */
|
|
2813
|
+
recordingUrl?: string | null;
|
|
2814
|
+
/** Recording status: pending, processing, ready, failed */
|
|
2815
|
+
recordingStatus?: string | null;
|
|
2816
|
+
deal?: {
|
|
2817
|
+
id: string;
|
|
2818
|
+
name?: string;
|
|
2819
|
+
} | null;
|
|
2820
|
+
customer?: {
|
|
2821
|
+
id: string;
|
|
2822
|
+
name?: string;
|
|
2823
|
+
email?: string;
|
|
2824
|
+
} | null;
|
|
2825
|
+
createdBy?: {
|
|
2826
|
+
id: string;
|
|
2827
|
+
name?: string;
|
|
2828
|
+
email?: string;
|
|
2829
|
+
} | null;
|
|
2830
|
+
attendees?: MeetingAttendee[];
|
|
2831
|
+
transcript?: MeetingTranscript | null;
|
|
2832
|
+
createdAt?: string | null;
|
|
2833
|
+
updatedAt?: string | null;
|
|
2834
|
+
}
|
|
2835
|
+
/**
|
|
2836
|
+
* Parameters for listing meetings
|
|
2837
|
+
*/
|
|
2838
|
+
interface MeetingListParams extends ListParams {
|
|
2839
|
+
/** Filter by deal ID */
|
|
2840
|
+
dealId?: string;
|
|
2841
|
+
/** Filter by customer ID */
|
|
2842
|
+
customerId?: string;
|
|
2843
|
+
/** Filter by platform (google_meet, zoom, teams) */
|
|
2844
|
+
platform?: string;
|
|
2845
|
+
/** Filter meetings starting from this date */
|
|
2846
|
+
startTimeFrom?: string;
|
|
2847
|
+
/** Filter meetings starting before this date */
|
|
2848
|
+
startTimeTo?: string;
|
|
2849
|
+
/** Search meetings by title or transcript content */
|
|
2850
|
+
search?: string;
|
|
2851
|
+
/** Include archived (soft-deleted) meetings */
|
|
2852
|
+
includeArchived?: boolean;
|
|
2853
|
+
}
|
|
2854
|
+
/**
|
|
2855
|
+
* Response from listing meetings
|
|
2856
|
+
*/
|
|
2857
|
+
interface MeetingListResponse extends PaginatedResponse {
|
|
2858
|
+
meetings: Meeting[];
|
|
2859
|
+
/** Current page number (0-indexed) */
|
|
2860
|
+
page?: number;
|
|
2861
|
+
/** Total number of pages */
|
|
2862
|
+
totalPages?: number;
|
|
2863
|
+
}
|
|
2864
|
+
/**
|
|
2865
|
+
* Attendee input for creating/updating meetings
|
|
2866
|
+
*/
|
|
2867
|
+
interface MeetingAttendeeInput {
|
|
2868
|
+
/** External ID from the browser extension (e.g., "A", "B") */
|
|
2869
|
+
externalId?: string;
|
|
2870
|
+
name?: string;
|
|
2871
|
+
email?: string;
|
|
2872
|
+
/** Hex color for UI display */
|
|
2873
|
+
color?: string;
|
|
2874
|
+
/** Total talk time in milliseconds */
|
|
2875
|
+
talkTime?: number;
|
|
2876
|
+
/** Total word count */
|
|
2877
|
+
wordCount?: number;
|
|
2878
|
+
/** Link to existing Mantle user */
|
|
2879
|
+
userId?: string;
|
|
2880
|
+
/** Link to existing Mantle contact */
|
|
2881
|
+
contactId?: string;
|
|
2882
|
+
}
|
|
2883
|
+
/**
|
|
2884
|
+
* Utterance input for creating/updating transcripts
|
|
2885
|
+
*/
|
|
2886
|
+
interface MeetingUtteranceInput {
|
|
2887
|
+
/** Attendee external ID (e.g., "A", "B") to link to attendee */
|
|
2888
|
+
attendeeId?: string;
|
|
2889
|
+
text: string;
|
|
2890
|
+
/** Start time in milliseconds from meeting start */
|
|
2891
|
+
startTime: number;
|
|
2892
|
+
/** End time in milliseconds from meeting start */
|
|
2893
|
+
endTime: number;
|
|
2894
|
+
/** Sequence number for ordering */
|
|
2895
|
+
sequence?: number;
|
|
2896
|
+
/** Transcription confidence score */
|
|
2897
|
+
confidence?: number;
|
|
2898
|
+
/** Word-level timing data */
|
|
2899
|
+
words?: Array<{
|
|
2900
|
+
text: string;
|
|
2901
|
+
startTime: number;
|
|
2902
|
+
endTime: number;
|
|
2903
|
+
confidence?: number;
|
|
2904
|
+
}>;
|
|
2905
|
+
}
|
|
2906
|
+
/**
|
|
2907
|
+
* Transcript input for creating/updating meetings
|
|
2908
|
+
*/
|
|
2909
|
+
interface MeetingTranscriptInput {
|
|
2910
|
+
/** Language code (default: "en") */
|
|
2911
|
+
language?: string;
|
|
2912
|
+
/** Transcript status (default: "completed") */
|
|
2913
|
+
status?: string;
|
|
2914
|
+
/** Full text of the transcript */
|
|
2915
|
+
fullText?: string;
|
|
2916
|
+
/** External transcript ID (e.g., AssemblyAI) */
|
|
2917
|
+
externalId?: string;
|
|
2918
|
+
/** Individual utterances */
|
|
2919
|
+
utterances?: MeetingUtteranceInput[];
|
|
2920
|
+
}
|
|
2921
|
+
/**
|
|
2922
|
+
* Parameters for creating a meeting
|
|
2923
|
+
*/
|
|
2924
|
+
interface MeetingCreateParams {
|
|
2925
|
+
/** Meeting data */
|
|
2926
|
+
meetingData?: {
|
|
2927
|
+
/** External ID from the browser extension */
|
|
2928
|
+
externalId?: string;
|
|
2929
|
+
title?: string;
|
|
2930
|
+
summary?: string;
|
|
2931
|
+
/** Meeting platform: google_meet, zoom, teams */
|
|
2932
|
+
platform?: string;
|
|
2933
|
+
/** Platform-specific meeting ID */
|
|
2934
|
+
platformMeetingId?: string;
|
|
2935
|
+
/** URL to join the meeting */
|
|
2936
|
+
meetingUrl?: string;
|
|
2937
|
+
startTime?: string;
|
|
2938
|
+
endTime?: string;
|
|
2939
|
+
/** Duration in seconds */
|
|
2940
|
+
duration?: number;
|
|
2941
|
+
/** URL to the recording */
|
|
2942
|
+
recordingUrl?: string;
|
|
2943
|
+
/** Recording status: pending, processing, ready, failed */
|
|
2944
|
+
recordingStatus?: string;
|
|
2945
|
+
/** Associate with a deal */
|
|
2946
|
+
dealId?: string;
|
|
2947
|
+
/** Associate with a customer */
|
|
2948
|
+
customerId?: string;
|
|
2949
|
+
};
|
|
2950
|
+
/** Optional transcript data */
|
|
2951
|
+
transcript?: MeetingTranscriptInput;
|
|
2952
|
+
/** Optional attendee data */
|
|
2953
|
+
attendees?: MeetingAttendeeInput[];
|
|
2954
|
+
}
|
|
2955
|
+
/**
|
|
2956
|
+
* Parameters for updating a meeting
|
|
2957
|
+
*/
|
|
2958
|
+
interface MeetingUpdateParams {
|
|
2959
|
+
title?: string;
|
|
2960
|
+
summary?: string;
|
|
2961
|
+
platform?: string;
|
|
2962
|
+
platformMeetingId?: string;
|
|
2963
|
+
meetingUrl?: string;
|
|
2964
|
+
startTime?: string;
|
|
2965
|
+
endTime?: string;
|
|
2966
|
+
duration?: number;
|
|
2967
|
+
recordingUrl?: string;
|
|
2968
|
+
recordingStatus?: string;
|
|
2969
|
+
dealId?: string | null;
|
|
2970
|
+
customerId?: string | null;
|
|
2971
|
+
}
|
|
2972
|
+
/**
|
|
2973
|
+
* Response from getting a signed upload URL
|
|
2974
|
+
*/
|
|
2975
|
+
interface MeetingUploadUrlResponse {
|
|
2976
|
+
/** Pre-signed S3 URL for uploading the recording */
|
|
2977
|
+
uploadUrl: string;
|
|
2978
|
+
/** S3 key for the recording (pass to /transcribe endpoint) */
|
|
2979
|
+
recordingKey: string;
|
|
2980
|
+
/** Time in seconds until the upload URL expires */
|
|
2981
|
+
expiresIn: number;
|
|
2982
|
+
}
|
|
2983
|
+
/**
|
|
2984
|
+
* Parameters for starting transcription
|
|
2985
|
+
*/
|
|
2986
|
+
interface MeetingTranscribeParams {
|
|
2987
|
+
/** S3 key for the recording (from upload URL response) */
|
|
2988
|
+
recordingKey: string;
|
|
2989
|
+
}
|
|
2990
|
+
/**
|
|
2991
|
+
* Response from getting transcription status
|
|
2992
|
+
*/
|
|
2993
|
+
interface MeetingTranscriptionStatusResponse {
|
|
2994
|
+
meetingId: string;
|
|
2995
|
+
/** Recording status: pending, processing, ready, failed */
|
|
2996
|
+
recordingStatus?: string | null;
|
|
2997
|
+
transcript?: {
|
|
2998
|
+
id: string;
|
|
2999
|
+
/** Transcript status: pending, processing, completed, failed */
|
|
3000
|
+
status?: string;
|
|
3001
|
+
/** AssemblyAI transcript ID */
|
|
3002
|
+
externalId?: string;
|
|
3003
|
+
} | null;
|
|
3004
|
+
}
|
|
3005
|
+
|
|
2696
3006
|
/**
|
|
2697
3007
|
* Resource for managing customers
|
|
2698
3008
|
*/
|
|
@@ -3703,6 +4013,10 @@ declare class MetricsResource extends BaseResource {
|
|
|
3703
4013
|
* Get usage metric data
|
|
3704
4014
|
*/
|
|
3705
4015
|
usageMetric(params: UsageMetricParams): Promise<MetricsResponse>;
|
|
4016
|
+
/**
|
|
4017
|
+
* Get key sales metrics
|
|
4018
|
+
*/
|
|
4019
|
+
sales(params?: SalesMetricsParams): Promise<SalesMetricsResponse>;
|
|
3706
4020
|
}
|
|
3707
4021
|
|
|
3708
4022
|
/**
|
|
@@ -4145,6 +4459,221 @@ declare class AiAgentRunsResource extends BaseResource {
|
|
|
4145
4459
|
}): Promise<AgentRun>;
|
|
4146
4460
|
}
|
|
4147
4461
|
|
|
4462
|
+
/**
|
|
4463
|
+
* Resource for managing meetings and their transcriptions
|
|
4464
|
+
*
|
|
4465
|
+
* Meetings capture video call recordings and their transcriptions with speaker
|
|
4466
|
+
* attribution. They can be associated with deals and customers.
|
|
4467
|
+
*
|
|
4468
|
+
* @example
|
|
4469
|
+
* ```typescript
|
|
4470
|
+
* // Create a meeting when recording starts
|
|
4471
|
+
* const { meeting } = await client.meetings.create({
|
|
4472
|
+
* meetingData: {
|
|
4473
|
+
* platform: 'google_meet',
|
|
4474
|
+
* title: 'Sales Call with Acme Corp',
|
|
4475
|
+
* meetingUrl: 'https://meet.google.com/abc-defg-hij',
|
|
4476
|
+
* startTime: new Date().toISOString(),
|
|
4477
|
+
* }
|
|
4478
|
+
* });
|
|
4479
|
+
*
|
|
4480
|
+
* // Get a signed URL to upload the recording
|
|
4481
|
+
* const { uploadUrl, recordingKey } = await client.meetings.getUploadUrl(meeting.id);
|
|
4482
|
+
*
|
|
4483
|
+
* // Upload the recording directly to S3
|
|
4484
|
+
* await fetch(uploadUrl, { method: 'PUT', body: recordingBlob });
|
|
4485
|
+
*
|
|
4486
|
+
* // Start server-side transcription
|
|
4487
|
+
* await client.meetings.startTranscription(meeting.id, { recordingKey });
|
|
4488
|
+
*
|
|
4489
|
+
* // Poll for transcription completion
|
|
4490
|
+
* const status = await client.meetings.getTranscriptionStatus(meeting.id);
|
|
4491
|
+
* ```
|
|
4492
|
+
*/
|
|
4493
|
+
declare class MeetingsResource extends BaseResource {
|
|
4494
|
+
/**
|
|
4495
|
+
* List meetings with optional filters and pagination
|
|
4496
|
+
*
|
|
4497
|
+
* @param params - Filter and pagination parameters
|
|
4498
|
+
* @returns Paginated list of meetings
|
|
4499
|
+
*
|
|
4500
|
+
* @example
|
|
4501
|
+
* ```typescript
|
|
4502
|
+
* // List all meetings
|
|
4503
|
+
* const { meetings } = await client.meetings.list();
|
|
4504
|
+
*
|
|
4505
|
+
* // List meetings for a specific deal
|
|
4506
|
+
* const { meetings } = await client.meetings.list({ dealId: 'deal_123' });
|
|
4507
|
+
*
|
|
4508
|
+
* // List meetings from Google Meet
|
|
4509
|
+
* const { meetings } = await client.meetings.list({ platform: 'google_meet' });
|
|
4510
|
+
* ```
|
|
4511
|
+
*/
|
|
4512
|
+
list(params?: MeetingListParams): Promise<MeetingListResponse>;
|
|
4513
|
+
/**
|
|
4514
|
+
* Retrieve a single meeting by ID with full transcript and attendee data
|
|
4515
|
+
*
|
|
4516
|
+
* @param meetingId - The meeting ID
|
|
4517
|
+
* @returns The meeting with all related data
|
|
4518
|
+
*
|
|
4519
|
+
* @example
|
|
4520
|
+
* ```typescript
|
|
4521
|
+
* const { meeting } = await client.meetings.retrieve('meeting_123');
|
|
4522
|
+
* console.log(meeting.transcript?.fullText);
|
|
4523
|
+
* ```
|
|
4524
|
+
*/
|
|
4525
|
+
retrieve(meetingId: string): Promise<Meeting>;
|
|
4526
|
+
/**
|
|
4527
|
+
* Create a new meeting
|
|
4528
|
+
*
|
|
4529
|
+
* Typically called when a recording starts in the browser extension.
|
|
4530
|
+
* The meeting can be created with optional transcript and attendee data,
|
|
4531
|
+
* or these can be added later via transcription.
|
|
4532
|
+
*
|
|
4533
|
+
* @param data - Meeting creation parameters
|
|
4534
|
+
* @returns The created meeting
|
|
4535
|
+
*
|
|
4536
|
+
* @example
|
|
4537
|
+
* ```typescript
|
|
4538
|
+
* // Create meeting when recording starts
|
|
4539
|
+
* const meeting = await client.meetings.create({
|
|
4540
|
+
* meetingData: {
|
|
4541
|
+
* platform: 'zoom',
|
|
4542
|
+
* title: 'Weekly Sync',
|
|
4543
|
+
* meetingUrl: 'https://zoom.us/j/123456789',
|
|
4544
|
+
* startTime: new Date().toISOString(),
|
|
4545
|
+
* recordingStatus: 'pending',
|
|
4546
|
+
* }
|
|
4547
|
+
* });
|
|
4548
|
+
*
|
|
4549
|
+
* // Create meeting with transcript (from local transcription)
|
|
4550
|
+
* const meeting = await client.meetings.create({
|
|
4551
|
+
* meetingData: { ... },
|
|
4552
|
+
* transcript: {
|
|
4553
|
+
* fullText: 'Hello, this is the transcript...',
|
|
4554
|
+
* utterances: [
|
|
4555
|
+
* { attendeeId: 'A', text: 'Hello', startTime: 0, endTime: 500 },
|
|
4556
|
+
* ],
|
|
4557
|
+
* },
|
|
4558
|
+
* attendees: [
|
|
4559
|
+
* { externalId: 'A', name: 'John Doe', email: 'john@example.com' },
|
|
4560
|
+
* ],
|
|
4561
|
+
* });
|
|
4562
|
+
* ```
|
|
4563
|
+
*/
|
|
4564
|
+
create(data: MeetingCreateParams): Promise<Meeting>;
|
|
4565
|
+
/**
|
|
4566
|
+
* Update an existing meeting
|
|
4567
|
+
*
|
|
4568
|
+
* @param meetingId - The meeting ID
|
|
4569
|
+
* @param data - Fields to update
|
|
4570
|
+
* @returns The updated meeting
|
|
4571
|
+
*
|
|
4572
|
+
* @example
|
|
4573
|
+
* ```typescript
|
|
4574
|
+
* // Update meeting title and link to a deal
|
|
4575
|
+
* const meeting = await client.meetings.update('meeting_123', {
|
|
4576
|
+
* title: 'Updated Meeting Title',
|
|
4577
|
+
* dealId: 'deal_456',
|
|
4578
|
+
* });
|
|
4579
|
+
* ```
|
|
4580
|
+
*/
|
|
4581
|
+
update(meetingId: string, data: MeetingUpdateParams): Promise<Meeting>;
|
|
4582
|
+
/**
|
|
4583
|
+
* Archive (soft delete) a meeting
|
|
4584
|
+
*
|
|
4585
|
+
* @param meetingId - The meeting ID
|
|
4586
|
+
* @returns Success response
|
|
4587
|
+
*
|
|
4588
|
+
* @example
|
|
4589
|
+
* ```typescript
|
|
4590
|
+
* await client.meetings.del('meeting_123');
|
|
4591
|
+
* ```
|
|
4592
|
+
*/
|
|
4593
|
+
del(meetingId: string): Promise<DeleteResponse>;
|
|
4594
|
+
/**
|
|
4595
|
+
* Get a signed URL to upload a meeting recording
|
|
4596
|
+
*
|
|
4597
|
+
* Returns a pre-signed S3 URL that can be used to upload the recording
|
|
4598
|
+
* directly from the client. After uploading, call `startTranscription`
|
|
4599
|
+
* to begin server-side transcription.
|
|
4600
|
+
*
|
|
4601
|
+
* @param meetingId - The meeting ID
|
|
4602
|
+
* @param filename - Optional filename (default: "recording.webm")
|
|
4603
|
+
* @returns Upload URL and recording key
|
|
4604
|
+
*
|
|
4605
|
+
* @example
|
|
4606
|
+
* ```typescript
|
|
4607
|
+
* const { uploadUrl, recordingKey } = await client.meetings.getUploadUrl('meeting_123');
|
|
4608
|
+
*
|
|
4609
|
+
* // Upload the recording blob directly to S3
|
|
4610
|
+
* const response = await fetch(uploadUrl, {
|
|
4611
|
+
* method: 'PUT',
|
|
4612
|
+
* body: recordingBlob,
|
|
4613
|
+
* headers: { 'Content-Type': 'audio/webm' },
|
|
4614
|
+
* });
|
|
4615
|
+
*
|
|
4616
|
+
* // Then start transcription
|
|
4617
|
+
* await client.meetings.startTranscription('meeting_123', { recordingKey });
|
|
4618
|
+
* ```
|
|
4619
|
+
*/
|
|
4620
|
+
getUploadUrl(meetingId: string, filename?: string): Promise<MeetingUploadUrlResponse>;
|
|
4621
|
+
/**
|
|
4622
|
+
* Start server-side transcription for a meeting
|
|
4623
|
+
*
|
|
4624
|
+
* The recording must first be uploaded using the URL from `getUploadUrl`.
|
|
4625
|
+
* Transcription is processed asynchronously - poll `getTranscriptionStatus`
|
|
4626
|
+
* or retrieve the meeting to check for completion.
|
|
4627
|
+
*
|
|
4628
|
+
* @param meetingId - The meeting ID
|
|
4629
|
+
* @param params - Transcription parameters including the recording key
|
|
4630
|
+
* @returns The meeting with pending transcription status
|
|
4631
|
+
*
|
|
4632
|
+
* @example
|
|
4633
|
+
* ```typescript
|
|
4634
|
+
* // Start transcription after uploading
|
|
4635
|
+
* const meeting = await client.meetings.startTranscription('meeting_123', {
|
|
4636
|
+
* recordingKey: 'meeting-recordings/org-id/meeting-123/uuid/recording.webm',
|
|
4637
|
+
* });
|
|
4638
|
+
*
|
|
4639
|
+
* // meeting.recordingStatus will be 'pending' or 'processing'
|
|
4640
|
+
* ```
|
|
4641
|
+
*/
|
|
4642
|
+
startTranscription(meetingId: string, params: MeetingTranscribeParams): Promise<Meeting>;
|
|
4643
|
+
/**
|
|
4644
|
+
* Get the current transcription status for a meeting
|
|
4645
|
+
*
|
|
4646
|
+
* Use this to poll for transcription completion after calling
|
|
4647
|
+
* `startTranscription`.
|
|
4648
|
+
*
|
|
4649
|
+
* @param meetingId - The meeting ID
|
|
4650
|
+
* @returns Current transcription status
|
|
4651
|
+
*
|
|
4652
|
+
* @example
|
|
4653
|
+
* ```typescript
|
|
4654
|
+
* // Poll for completion
|
|
4655
|
+
* const poll = async () => {
|
|
4656
|
+
* const status = await client.meetings.getTranscriptionStatus('meeting_123');
|
|
4657
|
+
*
|
|
4658
|
+
* if (status.recordingStatus === 'ready') {
|
|
4659
|
+
* // Transcription complete - fetch the full meeting
|
|
4660
|
+
* const meeting = await client.meetings.retrieve('meeting_123');
|
|
4661
|
+
* return meeting;
|
|
4662
|
+
* }
|
|
4663
|
+
*
|
|
4664
|
+
* if (status.recordingStatus === 'failed') {
|
|
4665
|
+
* throw new Error('Transcription failed');
|
|
4666
|
+
* }
|
|
4667
|
+
*
|
|
4668
|
+
* // Still processing - wait and retry
|
|
4669
|
+
* await new Promise(r => setTimeout(r, 5000));
|
|
4670
|
+
* return poll();
|
|
4671
|
+
* };
|
|
4672
|
+
* ```
|
|
4673
|
+
*/
|
|
4674
|
+
getTranscriptionStatus(meetingId: string): Promise<MeetingTranscriptionStatusResponse>;
|
|
4675
|
+
}
|
|
4676
|
+
|
|
4148
4677
|
/**
|
|
4149
4678
|
* Mantle Core API Client
|
|
4150
4679
|
*
|
|
@@ -4206,6 +4735,7 @@ declare class MantleCoreClient {
|
|
|
4206
4735
|
readonly emailUnsubscribeGroups: EmailUnsubscribeGroupsResource;
|
|
4207
4736
|
readonly flowExtensions: FlowExtensionsResource;
|
|
4208
4737
|
readonly aiAgentRuns: AiAgentRunsResource;
|
|
4738
|
+
readonly meetings: MeetingsResource;
|
|
4209
4739
|
constructor(config: MantleCoreClientConfig);
|
|
4210
4740
|
/**
|
|
4211
4741
|
* Register a middleware function
|
|
@@ -4494,4 +5024,4 @@ interface RateLimitOptions {
|
|
|
4494
5024
|
*/
|
|
4495
5025
|
declare function createRateLimitMiddleware(options?: RateLimitOptions): Middleware;
|
|
4496
5026
|
|
|
4497
|
-
export { type AccountOwner, type AccountOwnersListResponse, type Affiliate, type AffiliateCommission, type AffiliateCommissionListParams, type AffiliateCommissionListResponse, AffiliateCommissionsResource, type AffiliateListParams, type AffiliateListResponse, type AffiliatePayout, type AffiliatePayoutListParams, type AffiliatePayoutListResponse, AffiliatePayoutsResource, type AffiliateProgram, type AffiliateProgramCreateParams, type AffiliateProgramUpdateParams, AffiliateProgramsResource, type AffiliateReferral, type AffiliateReferralListParams, type AffiliateReferralListResponse, AffiliateReferralsResource, type AffiliateUpdateParams, AffiliatesResource, type Agent, type AgentCreateParams, type AgentListResponse, type AgentResponse, type AgentRun, type AgentRunCreateParams, type AgentRunCreateResponse, type AgentRunRetrieveResponse, type AgentRunStatus, type AgentRunTokenUsage, AgentsResource, type App, type AppEvent, type AppEventListParams, type AppEventListResponse, type AppInstallation, type AppInstallationParams, type AppListParams, AppsResource, type AuthRefreshOptions, BaseResource, type Channel, type ChannelCreateParams, type ChannelListParams, ChannelsResource, type Charge, type ChargeListParams, type ChargeListResponse, ChargesResource, CompaniesResource, type Company, type CompanyCreateParams, type CompanyListParams, type CompanyListResponse, type CompanyUpdateParams, type Contact, type ContactCreateParams, type ContactCreateResponse, type ContactEntity, type ContactListParams, type ContactListResponse, type ContactUpdateParams, ContactsResource, type CustomDataDeleteParams, type CustomDataGetParams, CustomDataResource, type CustomDataResourceType, type CustomDataResponse, type CustomDataSetParams, type CustomField, type CustomFieldCreateParams, type CustomFieldUpdateParams, type Customer, type CustomerCreateParams, type CustomerEntity, type CustomerListParams, type CustomerListResponse, type CustomerRetrieveParams, type CustomerSegment, type CustomerSegmentListParams, type CustomerSegmentListResponse, CustomerSegmentsResource, type CustomerUpdateParams, CustomersResource, type DateRangeType, type Deal, DealActivitiesResource, type DealActivity, type DealActivityCreateParams, type DealActivityUpdateParams, type DealContactInput, type DealCreateParams, type DealCustomerInput, type DealEvent, type DealEventCreateParams, type DealEventCreateResponse, type DealEventListResponse, type DealFlow, type DealFlowCreateParams, type DealFlowUpdateParams, DealFlowsResource, type DealListParams, type DealListResponse, type DealProgression, type DealStage, type DealUpdateParams, DealsResource, type DeleteResponse, type DocCollection, type DocCollectionCreateParams, type DocCollectionUpdateParams, type DocGroup, type DocGroupCreateParams, type DocGroupUpdateParams, type DocPage, type DocPageCreateParams, type DocPageListParams, type DocPageListResponse, type DocPageStatus, type DocPageUpdateParams, type DocRepository, type DocRepositoryCollection, type DocRepositoryListParams, type DocRepositoryListResponse, type DocRepositoryLocale, type DocRepositoryRetrieveParams, type DocTreeNode, type DocTreeResponse, DocsResource, type EmailUnsubscribeGroup, type EmailUnsubscribeGroupAddMembersParams, type EmailUnsubscribeGroupAddMembersResponse, type EmailUnsubscribeGroupListParams, type EmailUnsubscribeGroupListResponse, type EmailUnsubscribeGroupMember, type EmailUnsubscribeGroupMemberListParams, type EmailUnsubscribeGroupMemberListResponse, type EmailUnsubscribeGroupRemoveMembersParams, type EmailUnsubscribeGroupRemoveMembersResponse, EntitiesResource, type EntitiesSearchParams, type EntitiesSearchResponse, type Entity, type EntityType, type Feature, type FeatureCreateParams, type FeatureUpdateParams, type Flow, type FlowActionRun, type FlowActionRunStatus, type FlowActionRunUpdateParams, type FlowCreateParams, type FlowExtensionAction, type FlowExtensionActionCreateParams, type FlowExtensionActionListParams, type FlowExtensionActionListResponse, type FlowExtensionActionUpdateParams, type FlowListParams, type FlowListResponse, type FlowStatus, type FlowUpdateParams, FlowsResource, type HttpMethod, type JournalEntry, type JournalEntryCreateParams, type JournalEntryFile, type JournalEntryListParams, type JournalEntryListResponse, type JournalEntryUpdateParams, type List, type ListAddEntitiesParams, type ListAddEntitiesResponse, type ListCreateParams, type ListEntity, type ListListParams, type ListListResponse, type ListParams, type ListRemoveEntitiesParams, type ListRemoveEntitiesResponse, type ListRetrieveParams, type ListRetrieveResponse, type ListUpdateParams, MantleAPIError, MantleAuthenticationError, MantleCoreClient, type MantleCoreClientConfig, MantleNotFoundError, MantlePermissionError, MantleRateLimitError, MantleValidationError, MeResource, type MeResponse, type MessageAttachment, type MetricDataPoint, type MetricType, type MetricsBaseParams, type MetricsGetParams, MetricsResource, type MetricsResponse, type Middleware, type MiddlewareContext, MiddlewareManager, type MiddlewareOptions, type MiddlewareRequest, type MiddlewareResponse, type NextFunction, type Organization, OrganizationResource, type PaginatedResponse, type Plan, type PlanCreateParams, type PlanFeature, type PlanListParams, type PlanListResponse, type PlanUpdateParams, type PlanUsageCharge, type RateLimitOptions, type RequestOptions, type Review, type ReviewCreateParams, type ReviewUpdateParams, type SocialProfile, type SocialProfileType, type Subscription, type SubscriptionListParams, type SubscriptionListResponse, SubscriptionsResource, type Task, type TaskCreateParams, type TaskListParams, type TaskListResponse, type TaskPriority, type TaskStatus, type TaskUpdateParams, type TaskUpdateResponse, TasksResource, type Ticket, type TicketContactData, type TicketCreateParams, type TicketListParams, type TicketListResponse, type TicketMessage, type TicketMessageCreateParams, type TicketMessageUpdateParams, type TicketUpdateParams, TicketsResource, type TimelineComment, type TimelineCommentAttachment, type TimelineCommentAttachmentInput, type TimelineCommentCreateParams, type TimelineCommentCreateResponse, type TimelineCommentListParams, type TimelineCommentListResponse, type TimelineCommentTaggedUser, type TimelineCommentTaggedUserInput, type TimelineCommentUpdateParams, type TimelineCommentUpdateResponse, type TimelineCommentUser, type TimelineEvent, type TimelineListParams, type TimelineListResponse, type TodoItem, type TodoItemCreateParams, type TodoItemInput, type TodoItemListResponse, type TodoItemUpdateParams, type Transaction, type TransactionListParams, type TransactionListResponse, TransactionsResource, type UsageEvent, type UsageEventCreateData, type UsageEventCreateParams, type UsageEventCreateResponse, type UsageEventListParams, type UsageEventListResponse, type UsageEventMetricsParams, UsageEventsResource, type UsageMetric, type UsageMetricCreateParams, type UsageMetricParams, type UsageMetricUpdateParams, type User, type UserListParams, type UserListResponse, UsersResource, type Webhook, type WebhookCreateParams, type WebhookFilter, type WebhookListResponse, type WebhookTopic, type WebhookUpdateParams, WebhooksResource, createAuthRefreshMiddleware, createRateLimitMiddleware };
|
|
5027
|
+
export { type AccountOwner, type AccountOwnersListResponse, type Affiliate, type AffiliateCommission, type AffiliateCommissionListParams, type AffiliateCommissionListResponse, AffiliateCommissionsResource, type AffiliateListParams, type AffiliateListResponse, type AffiliatePayout, type AffiliatePayoutListParams, type AffiliatePayoutListResponse, AffiliatePayoutsResource, type AffiliateProgram, type AffiliateProgramCreateParams, type AffiliateProgramUpdateParams, AffiliateProgramsResource, type AffiliateReferral, type AffiliateReferralListParams, type AffiliateReferralListResponse, AffiliateReferralsResource, type AffiliateUpdateParams, AffiliatesResource, type Agent, type AgentCreateParams, type AgentListResponse, type AgentResponse, type AgentRun, type AgentRunCreateParams, type AgentRunCreateResponse, type AgentRunRetrieveResponse, type AgentRunStatus, type AgentRunTokenUsage, AgentsResource, type App, type AppEvent, type AppEventListParams, type AppEventListResponse, type AppInstallation, type AppInstallationParams, type AppListParams, AppsResource, type AuthRefreshOptions, BaseResource, type Channel, type ChannelCreateParams, type ChannelListParams, ChannelsResource, type Charge, type ChargeListParams, type ChargeListResponse, ChargesResource, CompaniesResource, type Company, type CompanyCreateParams, type CompanyListParams, type CompanyListResponse, type CompanyUpdateParams, type Contact, type ContactCreateParams, type ContactCreateResponse, type ContactEntity, type ContactListParams, type ContactListResponse, type ContactUpdateParams, ContactsResource, type CustomDataDeleteParams, type CustomDataGetParams, CustomDataResource, type CustomDataResourceType, type CustomDataResponse, type CustomDataSetParams, type CustomField, type CustomFieldCreateParams, type CustomFieldUpdateParams, type Customer, type CustomerCreateParams, type CustomerEntity, type CustomerListParams, type CustomerListResponse, type CustomerRetrieveParams, type CustomerSegment, type CustomerSegmentListParams, type CustomerSegmentListResponse, CustomerSegmentsResource, type CustomerUpdateParams, CustomersResource, type DateRangeType, type Deal, DealActivitiesResource, type DealActivity, type DealActivityCreateParams, type DealActivityUpdateParams, type DealContactInput, type DealCreateParams, type DealCustomerInput, type DealEvent, type DealEventCreateParams, type DealEventCreateResponse, type DealEventListResponse, type DealFlow, type DealFlowCreateParams, type DealFlowUpdateParams, DealFlowsResource, type DealListParams, type DealListResponse, type DealProgression, type DealStage, type DealUpdateParams, DealsResource, type DeleteResponse, type DocCollection, type DocCollectionCreateParams, type DocCollectionUpdateParams, type DocGroup, type DocGroupCreateParams, type DocGroupUpdateParams, type DocPage, type DocPageCreateParams, type DocPageListParams, type DocPageListResponse, type DocPageStatus, type DocPageUpdateParams, type DocRepository, type DocRepositoryCollection, type DocRepositoryListParams, type DocRepositoryListResponse, type DocRepositoryLocale, type DocRepositoryRetrieveParams, type DocTreeNode, type DocTreeResponse, DocsResource, type EmailUnsubscribeGroup, type EmailUnsubscribeGroupAddMembersParams, type EmailUnsubscribeGroupAddMembersResponse, type EmailUnsubscribeGroupListParams, type EmailUnsubscribeGroupListResponse, type EmailUnsubscribeGroupMember, type EmailUnsubscribeGroupMemberListParams, type EmailUnsubscribeGroupMemberListResponse, type EmailUnsubscribeGroupRemoveMembersParams, type EmailUnsubscribeGroupRemoveMembersResponse, EntitiesResource, type EntitiesSearchParams, type EntitiesSearchResponse, type Entity, type EntityType, type Feature, type FeatureCreateParams, type FeatureUpdateParams, type Flow, type FlowActionRun, type FlowActionRunStatus, type FlowActionRunUpdateParams, type FlowCreateParams, type FlowExtensionAction, type FlowExtensionActionCreateParams, type FlowExtensionActionListParams, type FlowExtensionActionListResponse, type FlowExtensionActionUpdateParams, type FlowListParams, type FlowListResponse, type FlowStatus, type FlowUpdateParams, FlowsResource, type HttpMethod, type JournalEntry, type JournalEntryCreateParams, type JournalEntryFile, type JournalEntryListParams, type JournalEntryListResponse, type JournalEntryUpdateParams, type List, type ListAddEntitiesParams, type ListAddEntitiesResponse, type ListCreateParams, type ListEntity, type ListListParams, type ListListResponse, type ListParams, type ListRemoveEntitiesParams, type ListRemoveEntitiesResponse, type ListRetrieveParams, type ListRetrieveResponse, type ListUpdateParams, MantleAPIError, MantleAuthenticationError, MantleCoreClient, type MantleCoreClientConfig, MantleNotFoundError, MantlePermissionError, MantleRateLimitError, MantleValidationError, MeResource, type MeResponse, type Meeting, type MeetingAttendee, type MeetingAttendeeInput, type MeetingCreateParams, type MeetingListParams, type MeetingListResponse, type MeetingTranscribeParams, type MeetingTranscript, type MeetingTranscriptInput, type MeetingTranscriptionStatusResponse, type MeetingUpdateParams, type MeetingUploadUrlResponse, type MeetingUtterance, type MeetingUtteranceInput, type MessageAttachment, type MetricDataPoint, type MetricType, type MetricsBaseParams, type MetricsGetParams, MetricsResource, type MetricsResponse, type Middleware, type MiddlewareContext, MiddlewareManager, type MiddlewareOptions, type MiddlewareRequest, type MiddlewareResponse, type NextFunction, type Organization, OrganizationResource, type PaginatedResponse, type Plan, type PlanCreateParams, type PlanFeature, type PlanListParams, type PlanListResponse, type PlanUpdateParams, type PlanUsageCharge, type RateLimitOptions, type RequestOptions, type Review, type ReviewCreateParams, type ReviewUpdateParams, type SalesMetrics, type SalesMetricsParams, type SalesMetricsResponse, type SocialProfile, type SocialProfileType, type Subscription, type SubscriptionListParams, type SubscriptionListResponse, SubscriptionsResource, type Task, type TaskCreateParams, type TaskListParams, type TaskListResponse, type TaskPriority, type TaskStatus, type TaskUpdateParams, type TaskUpdateResponse, TasksResource, type Ticket, type TicketContactData, type TicketCreateParams, type TicketListParams, type TicketListResponse, type TicketMessage, type TicketMessageCreateParams, type TicketMessageUpdateParams, type TicketUpdateParams, TicketsResource, type TimelineComment, type TimelineCommentAttachment, type TimelineCommentAttachmentInput, type TimelineCommentCreateParams, type TimelineCommentCreateResponse, type TimelineCommentListParams, type TimelineCommentListResponse, type TimelineCommentTaggedUser, type TimelineCommentTaggedUserInput, type TimelineCommentUpdateParams, type TimelineCommentUpdateResponse, type TimelineCommentUser, type TimelineEvent, type TimelineListParams, type TimelineListResponse, type TodoItem, type TodoItemCreateParams, type TodoItemInput, type TodoItemListResponse, type TodoItemUpdateParams, type Transaction, type TransactionListParams, type TransactionListResponse, TransactionsResource, type UsageEvent, type UsageEventCreateData, type UsageEventCreateParams, type UsageEventCreateResponse, type UsageEventListParams, type UsageEventListResponse, type UsageEventMetricsParams, UsageEventsResource, type UsageMetric, type UsageMetricCreateParams, type UsageMetricParams, type UsageMetricUpdateParams, type User, type UserListParams, type UserListResponse, UsersResource, type Webhook, type WebhookCreateParams, type WebhookFilter, type WebhookListResponse, type WebhookTopic, type WebhookUpdateParams, WebhooksResource, createAuthRefreshMiddleware, createRateLimitMiddleware };
|