Compare commits

..

1 Commits

Author SHA1 Message Date
c388932271 Add storage usage readiness fields 2026-06-26 11:36:02 -07:00
4 changed files with 6 additions and 545 deletions

View File

@@ -300,7 +300,6 @@ export type DeployedConfigGql = {
firebase: Scalars["Boolean"]["output"];
minimumAllowedAppVersion: Scalars["String"]["output"];
quotaEnforcementEnabled: Scalars["Boolean"]["output"];
storageLimitEnforcementEnabled: Scalars["Boolean"]["output"];
subscriptionGatingEnabled: Scalars["Boolean"]["output"];
};
@@ -2288,7 +2287,7 @@ export type GetShotsResult = {
export type GetUploadLinkErrors = {
__typename?: "GetUploadLinkErrors";
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr;
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr;
};
export type GetUploadLinkReturn = {
@@ -2392,14 +2391,13 @@ export type MustHaveSetForUploadLinkErr = {
resolution?: Maybe<Scalars["Boolean"]["output"]>;
};
export type MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr =
export type MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr =
| InitUploadAlreadyCompletedErr
| MustHaveSetForUploadLinkErr
| NoInitForChunkedUploadErr
| ProcessingFailedErr
| SegmentAlreadyUploadedErr
| StorageLimitExceededErr
| TooManyInitUploadsErr
| TooManyProfileImageUploadsErr;
@@ -2422,7 +2420,6 @@ export type Mutation = {
deleteUser: Scalars["Boolean"]["output"];
deleteVideo: Scalars["Boolean"]["output"];
dismissChallenge: Scalars["Boolean"]["output"];
dismissVideoExport: Scalars["Boolean"]["output"];
editComment: Scalars["Boolean"]["output"];
editProfileImageUri: UserGql;
editShot: EditShotReturn;
@@ -2443,7 +2440,6 @@ export type Mutation = {
reactToVideo: Scalars["Boolean"]["output"];
recalculateChallengeEntry: ChallengeEntry;
reportContent: Scalars["Boolean"]["output"];
requestVideoExport: VideoExportJobGql;
respondToChallengeInvitation: ChallengeInvitation;
retireTags: Scalars["Boolean"]["output"];
revokeManualEntitlement: UserSubscriptionStatusGql;
@@ -2531,10 +2527,6 @@ export type MutationDismissChallengeArgs = {
challengeId: Scalars["ID"]["input"];
};
export type MutationDismissVideoExportArgs = {
jobId: Scalars["Int"]["input"];
};
export type MutationEditCommentArgs = {
commentId: Scalars["Int"]["input"];
newMessage: Scalars["String"]["input"];
@@ -2621,10 +2613,6 @@ export type MutationReportContentArgs = {
videoId: Scalars["Int"]["input"];
};
export type MutationRequestVideoExportArgs = {
input: RequestVideoExportInput;
};
export type MutationRespondToChallengeInvitationArgs = {
accept: Scalars["Boolean"]["input"];
invitationId: Scalars["ID"]["input"];
@@ -2718,7 +2706,6 @@ export enum NotificationTypeEnum {
ChallengeInvite = "CHALLENGE_INVITE",
Comment = "COMMENT",
CommentReply = "COMMENT_REPLY",
ExportReady = "EXPORT_READY",
Follow = "FOLLOW",
Reaction = "REACTION",
}
@@ -2890,11 +2877,9 @@ export type Query = {
myChallengeEntries: Array<ChallengeEntry>;
myChallengeInvitations: Array<ChallengeInvitation>;
myDismissedChallenges: Array<Challenge>;
myVideoExports: Array<VideoExportJobGql>;
notifications: NotificationConnection;
ruleSets: Array<RuleSet>;
unreadNotificationCount: Scalars["Int"]["output"];
videoExportJob?: Maybe<VideoExportJobGql>;
videoPlayerClusters: Array<PlayerClusterGql>;
waitFor: Scalars["Float"]["output"];
};
@@ -3071,21 +3056,12 @@ export type QueryIsChallengeDismissedArgs = {
challengeId: Scalars["ID"]["input"];
};
export type QueryMyVideoExportsArgs = {
limit?: Scalars["Int"]["input"];
offset?: Scalars["Int"]["input"];
};
export type QueryNotificationsArgs = {
filters?: InputMaybe<NotificationFilters>;
limit?: Scalars["Int"]["input"];
offset?: Scalars["Int"]["input"];
};
export type QueryVideoExportJobArgs = {
jobId: Scalars["Int"]["input"];
};
export type QueryVideoPlayerClustersArgs = {
videoId: Scalars["Int"]["input"];
};
@@ -3145,13 +3121,6 @@ export enum ReportReasonEnum {
Violence = "VIOLENCE",
}
export type RequestVideoExportInput = {
mode: VideoExportModeEnum;
runId?: InputMaybe<Scalars["Int"]["input"]>;
shotIds?: InputMaybe<Array<Scalars["Int"]["input"]>>;
videoId: Scalars["Int"]["input"];
};
export type RequestedMedalsGql = {
__typename?: "RequestedMedalsGQL";
dailyMakes50?: Maybe<MedalGql>;
@@ -3417,15 +3386,6 @@ export enum SpinTypeEnum {
Unknown = "UNKNOWN",
}
export type StorageLimitExceededErr = {
__typename?: "StorageLimitExceededErr";
reason: Scalars["String"]["output"];
remainingStorageBytes?: Maybe<Scalars["BigInt"]["output"]>;
retainedStorageLimitBytes?: Maybe<Scalars["BigInt"]["output"]>;
retainedStorageUsedBytes: Scalars["BigInt"]["output"];
tierName: Scalars["String"]["output"];
};
export type StorageStatusGql = {
__typename?: "StorageStatusGQL";
isNearLimit: Scalars["Boolean"]["output"];
@@ -3439,6 +3399,7 @@ export type StorageStatusGql = {
storageUsageRatio?: Maybe<Scalars["Float"]["output"]>;
tierName: Scalars["String"]["output"];
usageCalculated: Scalars["Boolean"]["output"];
usageEstimated: Scalars["Boolean"]["output"];
usageSource?: Maybe<Scalars["String"]["output"]>;
userId: Scalars["Int"]["output"];
};
@@ -3688,37 +3649,6 @@ export type UserSubscriptionStatusGql = {
validUntil?: Maybe<Scalars["DateTime"]["output"]>;
};
export type VideoExportJobGql = {
__typename?: "VideoExportJobGQL";
createdAt?: Maybe<Scalars["DateTime"]["output"]>;
downloadUrl?: Maybe<Scalars["String"]["output"]>;
expiresAt?: Maybe<Scalars["DateTime"]["output"]>;
fileSizeBytes?: Maybe<Scalars["Int"]["output"]>;
id: Scalars["Int"]["output"];
mode: VideoExportModeEnum;
runId?: Maybe<Scalars["Int"]["output"]>;
shotIds?: Maybe<Array<Scalars["Int"]["output"]>>;
status: VideoExportStatusEnum;
videoId: Scalars["Int"]["output"];
videoName?: Maybe<Scalars["String"]["output"]>;
videoThumbnailUri?: Maybe<Scalars["String"]["output"]>;
};
export enum VideoExportModeEnum {
FullSession = "FULL_SESSION",
Run = "RUN",
Shots = "SHOTS",
}
export enum VideoExportStatusEnum {
Created = "CREATED",
Expired = "EXPIRED",
Failed = "FAILED",
Queued = "QUEUED",
Running = "RUNNING",
Succeeded = "SUCCEEDED",
}
export type VideoFeedInputGql =
| {
allUsers: Scalars["Boolean"]["input"];
@@ -7086,101 +7016,6 @@ export type HomographyInfoFragment = {
};
};
export type VideoExportJobFieldsFragment = {
__typename?: "VideoExportJobGQL";
id: number;
videoId: number;
mode: VideoExportModeEnum;
status: VideoExportStatusEnum;
videoName?: string | null;
videoThumbnailUri?: string | null;
shotIds?: Array<number> | null;
runId?: number | null;
downloadUrl?: string | null;
fileSizeBytes?: number | null;
expiresAt?: any | null;
createdAt?: any | null;
};
export type RequestVideoExportMutationVariables = Exact<{
input: RequestVideoExportInput;
}>;
export type RequestVideoExportMutation = {
__typename?: "Mutation";
requestVideoExport: {
__typename?: "VideoExportJobGQL";
id: number;
videoId: number;
mode: VideoExportModeEnum;
status: VideoExportStatusEnum;
videoName?: string | null;
videoThumbnailUri?: string | null;
shotIds?: Array<number> | null;
runId?: number | null;
downloadUrl?: string | null;
fileSizeBytes?: number | null;
expiresAt?: any | null;
createdAt?: any | null;
};
};
export type DismissVideoExportMutationVariables = Exact<{
jobId: Scalars["Int"]["input"];
}>;
export type DismissVideoExportMutation = {
__typename?: "Mutation";
dismissVideoExport: boolean;
};
export type VideoExportJobQueryVariables = Exact<{
jobId: Scalars["Int"]["input"];
}>;
export type VideoExportJobQuery = {
__typename?: "Query";
videoExportJob?: {
__typename?: "VideoExportJobGQL";
id: number;
videoId: number;
mode: VideoExportModeEnum;
status: VideoExportStatusEnum;
videoName?: string | null;
videoThumbnailUri?: string | null;
shotIds?: Array<number> | null;
runId?: number | null;
downloadUrl?: string | null;
fileSizeBytes?: number | null;
expiresAt?: any | null;
createdAt?: any | null;
} | null;
};
export type MyVideoExportsQueryVariables = Exact<{
limit?: InputMaybe<Scalars["Int"]["input"]>;
offset?: InputMaybe<Scalars["Int"]["input"]>;
}>;
export type MyVideoExportsQuery = {
__typename?: "Query";
myVideoExports: Array<{
__typename?: "VideoExportJobGQL";
id: number;
videoId: number;
mode: VideoExportModeEnum;
status: VideoExportStatusEnum;
videoName?: string | null;
videoThumbnailUri?: string | null;
shotIds?: Array<number> | null;
runId?: number | null;
downloadUrl?: string | null;
fileSizeBytes?: number | null;
expiresAt?: any | null;
createdAt?: any | null;
}>;
};
export type CreateUploadStreamMutationVariables = Exact<{
videoMetadataInput: VideoMetadataInput;
expectedDurationSeconds?: InputMaybe<Scalars["Float"]["input"]>;
@@ -7226,7 +7061,6 @@ export type GetUploadLinkMutation = {
};
}
| { __typename?: "SegmentAlreadyUploadedErr"; segmentId: number }
| { __typename?: "StorageLimitExceededErr" }
| { __typename?: "TooManyInitUploadsErr" }
| { __typename?: "TooManyProfileImageUploadsErr" };
}
@@ -7269,14 +7103,6 @@ export type GetHlsInitUploadLinkMutation = {
}
| { __typename?: "ProcessingFailedErr" }
| { __typename?: "SegmentAlreadyUploadedErr" }
| {
__typename?: "StorageLimitExceededErr";
reason: string;
tierName: string;
retainedStorageUsedBytes: any;
retainedStorageLimitBytes?: any | null;
remainingStorageBytes?: any | null;
}
| { __typename?: "TooManyInitUploadsErr"; linksRequested: number }
| { __typename?: "TooManyProfileImageUploadsErr" };
}
@@ -7755,22 +7581,6 @@ export const HomographyInfoFragmentDoc = gql`
}
}
`;
export const VideoExportJobFieldsFragmentDoc = gql`
fragment VideoExportJobFields on VideoExportJobGQL {
id
videoId
mode
status
videoName
videoThumbnailUri
shotIds
runId
downloadUrl
fileSizeBytes
expiresAt
createdAt
}
`;
export const UploadStreamWithDetailsFragmentDoc = gql`
fragment UploadStreamWithDetails on VideoGQL {
id
@@ -15182,254 +14992,6 @@ export type FindPrerecordTableLayoutMutationOptions =
FindPrerecordTableLayoutMutation,
FindPrerecordTableLayoutMutationVariables
>;
export const RequestVideoExportDocument = gql`
mutation RequestVideoExport($input: RequestVideoExportInput!) {
requestVideoExport(input: $input) {
...VideoExportJobFields
}
}
${VideoExportJobFieldsFragmentDoc}
`;
export type RequestVideoExportMutationFn = Apollo.MutationFunction<
RequestVideoExportMutation,
RequestVideoExportMutationVariables
>;
/**
* __useRequestVideoExportMutation__
*
* To run a mutation, you first call `useRequestVideoExportMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useRequestVideoExportMutation` returns a tuple that includes:
* - A mutate function that you can call at any time to execute the mutation
* - An object with fields that represent the current status of the mutation's execution
*
* @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
*
* @example
* const [requestVideoExportMutation, { data, loading, error }] = useRequestVideoExportMutation({
* variables: {
* input: // value for 'input'
* },
* });
*/
export function useRequestVideoExportMutation(
baseOptions?: Apollo.MutationHookOptions<
RequestVideoExportMutation,
RequestVideoExportMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<
RequestVideoExportMutation,
RequestVideoExportMutationVariables
>(RequestVideoExportDocument, options);
}
export type RequestVideoExportMutationHookResult = ReturnType<
typeof useRequestVideoExportMutation
>;
export type RequestVideoExportMutationResult =
Apollo.MutationResult<RequestVideoExportMutation>;
export type RequestVideoExportMutationOptions = Apollo.BaseMutationOptions<
RequestVideoExportMutation,
RequestVideoExportMutationVariables
>;
export const DismissVideoExportDocument = gql`
mutation DismissVideoExport($jobId: Int!) {
dismissVideoExport(jobId: $jobId)
}
`;
export type DismissVideoExportMutationFn = Apollo.MutationFunction<
DismissVideoExportMutation,
DismissVideoExportMutationVariables
>;
/**
* __useDismissVideoExportMutation__
*
* To run a mutation, you first call `useDismissVideoExportMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useDismissVideoExportMutation` returns a tuple that includes:
* - A mutate function that you can call at any time to execute the mutation
* - An object with fields that represent the current status of the mutation's execution
*
* @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
*
* @example
* const [dismissVideoExportMutation, { data, loading, error }] = useDismissVideoExportMutation({
* variables: {
* jobId: // value for 'jobId'
* },
* });
*/
export function useDismissVideoExportMutation(
baseOptions?: Apollo.MutationHookOptions<
DismissVideoExportMutation,
DismissVideoExportMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<
DismissVideoExportMutation,
DismissVideoExportMutationVariables
>(DismissVideoExportDocument, options);
}
export type DismissVideoExportMutationHookResult = ReturnType<
typeof useDismissVideoExportMutation
>;
export type DismissVideoExportMutationResult =
Apollo.MutationResult<DismissVideoExportMutation>;
export type DismissVideoExportMutationOptions = Apollo.BaseMutationOptions<
DismissVideoExportMutation,
DismissVideoExportMutationVariables
>;
export const VideoExportJobDocument = gql`
query VideoExportJob($jobId: Int!) {
videoExportJob(jobId: $jobId) {
...VideoExportJobFields
}
}
${VideoExportJobFieldsFragmentDoc}
`;
/**
* __useVideoExportJobQuery__
*
* To run a query within a React component, call `useVideoExportJobQuery` and pass it any options that fit your needs.
* When your component renders, `useVideoExportJobQuery` returns an object from Apollo Client that contains loading, error, and data properties
* you can use to render your UI.
*
* @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
*
* @example
* const { data, loading, error } = useVideoExportJobQuery({
* variables: {
* jobId: // value for 'jobId'
* },
* });
*/
export function useVideoExportJobQuery(
baseOptions: Apollo.QueryHookOptions<
VideoExportJobQuery,
VideoExportJobQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<VideoExportJobQuery, VideoExportJobQueryVariables>(
VideoExportJobDocument,
options,
);
}
export function useVideoExportJobLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
VideoExportJobQuery,
VideoExportJobQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<VideoExportJobQuery, VideoExportJobQueryVariables>(
VideoExportJobDocument,
options,
);
}
export function useVideoExportJobSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
VideoExportJobQuery,
VideoExportJobQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<
VideoExportJobQuery,
VideoExportJobQueryVariables
>(VideoExportJobDocument, options);
}
export type VideoExportJobQueryHookResult = ReturnType<
typeof useVideoExportJobQuery
>;
export type VideoExportJobLazyQueryHookResult = ReturnType<
typeof useVideoExportJobLazyQuery
>;
export type VideoExportJobSuspenseQueryHookResult = ReturnType<
typeof useVideoExportJobSuspenseQuery
>;
export type VideoExportJobQueryResult = Apollo.QueryResult<
VideoExportJobQuery,
VideoExportJobQueryVariables
>;
export const MyVideoExportsDocument = gql`
query MyVideoExports($limit: Int = 30, $offset: Int = 0) {
myVideoExports(limit: $limit, offset: $offset) {
...VideoExportJobFields
}
}
${VideoExportJobFieldsFragmentDoc}
`;
/**
* __useMyVideoExportsQuery__
*
* To run a query within a React component, call `useMyVideoExportsQuery` and pass it any options that fit your needs.
* When your component renders, `useMyVideoExportsQuery` returns an object from Apollo Client that contains loading, error, and data properties
* you can use to render your UI.
*
* @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
*
* @example
* const { data, loading, error } = useMyVideoExportsQuery({
* variables: {
* limit: // value for 'limit'
* offset: // value for 'offset'
* },
* });
*/
export function useMyVideoExportsQuery(
baseOptions?: Apollo.QueryHookOptions<
MyVideoExportsQuery,
MyVideoExportsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<MyVideoExportsQuery, MyVideoExportsQueryVariables>(
MyVideoExportsDocument,
options,
);
}
export function useMyVideoExportsLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
MyVideoExportsQuery,
MyVideoExportsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<MyVideoExportsQuery, MyVideoExportsQueryVariables>(
MyVideoExportsDocument,
options,
);
}
export function useMyVideoExportsSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
MyVideoExportsQuery,
MyVideoExportsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<
MyVideoExportsQuery,
MyVideoExportsQueryVariables
>(MyVideoExportsDocument, options);
}
export type MyVideoExportsQueryHookResult = ReturnType<
typeof useMyVideoExportsQuery
>;
export type MyVideoExportsLazyQueryHookResult = ReturnType<
typeof useMyVideoExportsLazyQuery
>;
export type MyVideoExportsSuspenseQueryHookResult = ReturnType<
typeof useMyVideoExportsSuspenseQuery
>;
export type MyVideoExportsQueryResult = Apollo.QueryResult<
MyVideoExportsQuery,
MyVideoExportsQueryVariables
>;
export const CreateUploadStreamDocument = gql`
mutation CreateUploadStream(
$videoMetadataInput: VideoMetadataInput!
@@ -15590,13 +15152,6 @@ export const GetHlsInitUploadLinkDocument = gql`
... on TooManyInitUploadsErr {
linksRequested
}
... on StorageLimitExceededErr {
reason
tierName
retainedStorageUsedBytes
retainedStorageLimitBytes
remainingStorageBytes
}
}
}
}

View File

@@ -1,36 +0,0 @@
fragment VideoExportJobFields on VideoExportJobGQL {
id
videoId
mode
status
videoName
videoThumbnailUri
shotIds
runId
downloadUrl
fileSizeBytes
expiresAt
createdAt
}
mutation RequestVideoExport($input: RequestVideoExportInput!) {
requestVideoExport(input: $input) {
...VideoExportJobFields
}
}
mutation DismissVideoExport($jobId: Int!) {
dismissVideoExport(jobId: $jobId)
}
query VideoExportJob($jobId: Int!) {
videoExportJob(jobId: $jobId) {
...VideoExportJobFields
}
}
query MyVideoExports($limit: Int = 30, $offset: Int = 0) {
myVideoExports(limit: $limit, offset: $offset) {
...VideoExportJobFields
}
}

View File

@@ -67,13 +67,6 @@ mutation GetHlsInitUploadLink($videoId: Int!) {
... on TooManyInitUploadsErr {
linksRequested
}
... on StorageLimitExceededErr {
reason
tierName
retainedStorageUsedBytes
retainedStorageLimitBytes
remainingStorageBytes
}
}
}
}

View File

@@ -121,8 +121,6 @@ type Query {
): VideoHistoryGQL!
getUserTags(includeRetiredTags: Boolean = false): [TagGQL!]!
getGameTypeTagMetrics(input: GameTypeTagMetricsInput!): [GameTypeTagMetric!]!
videoExportJob(jobId: Int!): VideoExportJobGQL
myVideoExports(limit: Int! = 30, offset: Int! = 0): [VideoExportJobGQL!]!
getVideo(videoId: Int!, debuggingJson: JSON = null): VideoGQL!
getVideos(videoIds: [Int!]!): [VideoGQL!]!
}
@@ -714,7 +712,6 @@ type DeployedConfigGQL {
minimumAllowedAppVersion: String!
subscriptionGatingEnabled: Boolean!
quotaEnforcementEnabled: Boolean!
storageLimitEnforcementEnabled: Boolean!
bannerMessages: [BannerGQL!]!
defaultAndroidRecordingFormat: StreamSegmentTypeEnum!
bucketUrl: String!
@@ -867,7 +864,6 @@ enum NotificationTypeEnum {
REACTION
FOLLOW
CHALLENGE_INVITE
EXPORT_READY
}
input NotificationFilters {
@@ -1126,6 +1122,7 @@ type StorageStatusGQL {
usageCalculated: Boolean!
usageSource: String
lastCalculatedAt: DateTime
usageEstimated: Boolean!
}
"""
@@ -1168,36 +1165,6 @@ input GameTypeTagMetricsInput {
includePrivate: IncludePrivateEnum! = MINE
}
type VideoExportJobGQL {
id: Int!
videoId: Int!
mode: VideoExportModeEnum!
status: VideoExportStatusEnum!
videoName: String
videoThumbnailUri: String
shotIds: [Int!]
runId: Int
downloadUrl: String
fileSizeBytes: Int
expiresAt: DateTime
createdAt: DateTime
}
enum VideoExportModeEnum {
FULL_SESSION
SHOTS
RUN
}
enum VideoExportStatusEnum {
CREATED
QUEUED
RUNNING
SUCCEEDED
FAILED
EXPIRED
}
"""
The `JSON` scalar type represents JSON values as specified by [ECMA-404](https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf).
"""
@@ -1299,8 +1266,6 @@ type Mutation {
feedback: String = null
metadata: CancellationFeedbackMetadataInput = null
): Boolean!
requestVideoExport(input: RequestVideoExportInput!): VideoExportJobGQL!
dismissVideoExport(jobId: Int!): Boolean!
findPrerecordTableLayout(b64Image: String!, videoId: Int!): HomographyInfoGQL
createUploadStream(
videoMetadata: VideoMetadataInput!
@@ -1483,13 +1448,6 @@ input CancellationFeedbackMetadataInput {
platform: String = null
}
input RequestVideoExportInput {
videoId: Int!
mode: VideoExportModeEnum!
shotIds: [Int!] = null
runId: Int = null
}
type CreateUploadStreamReturn {
videoId: Int!
}
@@ -1529,10 +1487,10 @@ type GetUploadLinkReturn {
union UploadLinkGetUploadLinkErrors = UploadLink | GetUploadLinkErrors
type GetUploadLinkErrors {
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr!
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr!
}
union MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr =
union MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr =
MustHaveSetForUploadLinkErr
| SegmentAlreadyUploadedErr
| ProcessingFailedErr
@@ -1540,7 +1498,6 @@ union MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoI
| TooManyProfileImageUploadsErr
| InitUploadAlreadyCompletedErr
| TooManyInitUploadsErr
| StorageLimitExceededErr
type MustHaveSetForUploadLinkErr {
resolution: Boolean
@@ -1566,11 +1523,3 @@ type InitUploadAlreadyCompletedErr {
type TooManyInitUploadsErr {
linksRequested: Int!
}
type StorageLimitExceededErr {
reason: String!
tierName: String!
retainedStorageUsedBytes: BigInt!
retainedStorageLimitBytes: BigInt
remainingStorageBytes: BigInt
}