schemas
schemas: {
ApiTimerActivityAwaiting: {
code: "awaiting_next_run";
next_run: string;
};
ApiTimerActivityInProgress: {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
};
ApiTimerActivityPaused: {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
};
ApiTimerActivityRetrying: { code: "retrying"; start_timestamp: string };
EndConditionIterations: { condition: "iterations"; count: number };
EndConditionTime: { condition: "time"; datetime: string };
FilterRule: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
};
FlowStartDocument: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
FlowTimerRead: {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
flow_id: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
};
HTTPValidationError: {
detail?: { loc: (string | number)[]; msg: string; type: string }[];
};
JobCreate: {
callback_body: Record<string, unknown>;
callback_url: string;
interval?: number;
name?: string;
refresh_token?: string;
scope?: string;
start: string;
stop_after?: string | { date?: string; n_runs?: number };
stop_after_n?: number;
};
JobInactiveReason: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
JobListResponse: {
jobs: (
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
flow_id: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
)[];
};
JobRead: {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
};
JobResult: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
};
JobResultPage: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
JobResumeBehavior: {
action: "run_once_immediately"
| "wait_for_next_scheduled";
};
JobUpdate: { name?: string };
MessageResponse: { message: string };
OnceSchedule: { datetime?: string; type: "once" };
RecurringSchedule: {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
StopAfter: { date?: string; n_runs?: number };
SupportedTimerType: "transfer" | "generic" | "flow";
TransferTaskDocument: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
TransferTaskItem: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
};
V2FlowTimerCreate: {
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
name?: string;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "flow";
};
V2FlowTimerRead: {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "flow";
};
V2TimerCreate: {
timer: | {
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
name?: string;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "flow";
}
| {
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
name?: string;
resource_server: "transfer.api.globus.org";
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "transfer";
};
};
V2TimerRead: {
timer: | {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "flow";
}
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "transfer";
};
};
V2TransferTimerCreate: {
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
name?: string;
resource_server: "transfer.api.globus.org";
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "transfer";
};
V2TransferTimerRead: {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "transfer";
};
ValidationError: { loc: (string | number)[]; msg: string; type: string };
}
Type Declaration
-
ApiTimerActivityAwaiting: { code: "awaiting_next_run"; next_run: string }
-
code: "awaiting_next_run"
-
next_run: string
-
ApiTimerActivityInProgress: { code: "run_in_progress"; duration_seconds: number; start_timestamp: string }
-
code: "run_in_progress"
-
duration_seconds: number
-
start_timestamp: string
-
ApiTimerActivityPaused: { code: "paused"; reason: "other" | "user" | "globus_auth_requirements" }
-
code: "paused"
-
reason: "other" | "user" | "globus_auth_requirements"
-
ApiTimerActivityRetrying: { code: "retrying"; start_timestamp: string }
-
code: "retrying"
-
start_timestamp: string
-
EndConditionIterations: { condition: "iterations"; count: number }
-
condition: "iterations"
-
count: number
-
EndConditionTime: { condition: "time"; datetime: string }
-
condition: "time"
-
datetime: string
-
FilterRule: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}
-
DATA_TYPE: "filter_rule"
-
method: "include" | "exclude"
-
name: string
-
Optionaltype?: "file" | "dir"
-
FlowStartDocument: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
}
-
body: Record<string, unknown>
-
Optionalrun_managers?: string[]
-
Optionalrun_monitors?: string[]
-
Optionaltags?: string[]
-
FlowTimerRead: {
activity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
flow_id: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
-
Optionalactivity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| { code: "paused"; reason: "other"
| "user"
| "globus_auth_requirements" }
| { code: "retrying"; start_timestamp: string }
-
callback_body: Record<string, unknown>
-
callback_url: string
-
flow_id: string
-
Optionalinactive_reason?: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
-
cause: "user" | "globus_auth_requirements"
-
Optionaldetail?: Record<string, unknown>
-
Optionalinterval?: number
-
job_id: string
-
Optionallast_ran_at?: string
-
n_errors: number
-
n_runs: number
-
Optionalname?: string
-
Optionalnext_run?: string
-
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
}
-
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[]
-
Optionalpage_next?: string
-
schedule:
| { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
-
Optionalscope?: string
-
start: string
-
status: string
-
stop_after: { date?: string; n_runs?: number }
-
Optionaldate?: string
-
Optionaln_runs?: number
-
submitted_at: string
-
timer_type: "transfer" | "generic" | "flow"
-
HTTPValidationError: { detail?: { loc: (string | number)[]; msg: string; type: string }[] }
-
Optionaldetail?: { loc: (string | number)[]; msg: string; type: string }[]
-
JobCreate: {
callback_body: Record<string, unknown>;
callback_url: string;
interval?: number;
name?: string;
refresh_token?: string;
scope?: string;
start: string;
stop_after?: string | { date?: string; n_runs?: number };
stop_after_n?: number;
}
-
callback_body: Record<string, unknown>
-
callback_url: string
-
Optionalinterval?: number
-
Optionalname?: string
-
Optionalrefresh_token?: string
-
Optionalscope?: string
-
start: string
-
Optionalstop_after?: string | { date?: string; n_runs?: number }
-
Optionalstop_after_n?: number
-
JobInactiveReason: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
-
cause: "user" | "globus_auth_requirements"
-
Optionaldetail?: Record<string, unknown>
-
JobListResponse: {
jobs: (
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
flow_id: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
)[];
}
-
jobs: (
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
flow_id: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
)[]
-
JobRead: {
activity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
callback_body: Record<string, unknown>;
callback_url: string;
inactive_reason?: {
cause: "user" | "globus_auth_requirements";
detail?: Record<string, unknown>;
};
interval?: number;
job_id: string;
last_ran_at?: string;
n_errors: number;
n_runs: number;
name?: string;
next_run?: string;
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
};
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
scope?: string;
start: string;
status: string;
stop_after: { date?: string; n_runs?: number };
submitted_at: string;
timer_type: "transfer" | "generic" | "flow";
}
-
Optionalactivity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| { code: "paused"; reason: "other"
| "user"
| "globus_auth_requirements" }
| { code: "retrying"; start_timestamp: string }
-
callback_body: Record<string, unknown>
-
callback_url: string
-
Optionalinactive_reason?: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
-
cause: "user" | "globus_auth_requirements"
-
Optionaldetail?: Record<string, unknown>
-
Optionalinterval?: number
-
job_id: string
-
Optionallast_ran_at?: string
-
n_errors: number
-
n_runs: number
-
Optionalname?: string
-
Optionalnext_run?: string
-
results: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
}
-
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[]
-
Optionalpage_next?: string
-
schedule:
| { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
-
Optionalscope?: string
-
start: string
-
status: string
-
stop_after: { date?: string; n_runs?: number }
-
Optionaldate?: string
-
Optionaln_runs?: number
-
submitted_at: string
-
timer_type: "transfer" | "generic" | "flow"
-
JobResult: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}
-
Optionaldata?: Record<string, unknown>
-
Optionalend_timestamp?: string
-
Optionalerrors?: Record<string, unknown>
-
Optionalhttp_status_polled?: number
-
Optionalhttp_status_submission?: number
-
Optionallast_check_timestamp?: string
-
Optionalnext_check_timestamp?: string
-
ran_at: string
-
Optionalresource_id?: string
-
run_status: string
-
start_timestamp: string
-
Optionalstatus?: number
-
JobResultPage: {
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[];
page_next?: string;
}
-
data: {
data?: Record<string, unknown>;
end_timestamp?: string;
errors?: Record<string, unknown>;
http_status_polled?: number;
http_status_submission?: number;
last_check_timestamp?: string;
next_check_timestamp?: string;
ran_at: string;
resource_id?: string;
run_status: string;
start_timestamp: string;
status?: number;
}[]
-
Optionalpage_next?: string
-
JobResumeBehavior: { action: "run_once_immediately" | "wait_for_next_scheduled" }
-
action: "run_once_immediately" | "wait_for_next_scheduled"
-
JobUpdate: { name?: string }
-
MessageResponse: { message: string }
-
OnceSchedule: { datetime?: string; type: "once" }
-
Optionaldatetime?: string
-
type: "once"
-
RecurringSchedule: {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
-
Optionalend?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string }
-
interval_seconds: number
-
Optionalstart?: string
-
type: "recurring"
-
StopAfter: { date?: string; n_runs?: number }
-
Optionaldate?: string
-
Optionaln_runs?: number
-
SupportedTimerType: "transfer" | "generic" | "flow"
-
TransferTaskDocument: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
}
-
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[]
-
DATA_TYPE: "transfer"
-
Optionaldeadline?: string
-
delete_destination_extra: boolean
-
destination_endpoint: string
-
Optionaldestination_local_user?: string
-
encrypt_data: boolean
-
fail_on_quota_errors: boolean
-
Optionalfilter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
-
Optionallabel?: string
-
notify_on_failed: boolean
-
notify_on_inactive: boolean
-
notify_on_succeeded: boolean
-
preserve_timestamp: boolean
-
skip_source_errors: boolean
-
source_endpoint: string
-
Optionalsource_local_user?: string
-
store_base_path_info: boolean
-
Optionalsync_level?: 0 | 2 | 1 | 3
-
verify_checksum: boolean
-
TransferTaskItem: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}
-
Optionalchecksum_algorithm?: string
-
DATA_TYPE: "transfer_item"
-
destination_path: string
-
Optionalexternal_checksum?: string
-
Optionalrecursive?: boolean
-
source_path: string
-
V2FlowTimerCreate: {
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
name?: string;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "flow";
}
-
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
}
-
body: Record<string, unknown>
-
Optionalrun_managers?: string[]
-
Optionalrun_monitors?: string[]
-
Optionaltags?: string[]
-
flow_id: string
-
Optionalname?: string
-
schedule:
| { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
-
timer_type: "flow"
-
V2FlowTimerRead: {
activity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "flow";
}
-
Optionalactivity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| { code: "paused"; reason: "other"
| "user"
| "globus_auth_requirements" }
| { code: "retrying"; start_timestamp: string }
-
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
}
-
body: Record<string, unknown>
-
Optionalrun_managers?: string[]
-
Optionalrun_monitors?: string[]
-
Optionaltags?: string[]
-
flow_id: string
-
Optionalinactive_reason?: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
-
cause: "user" | "globus_auth_requirements"
-
Optionaldetail?: Record<string, unknown>
-
job_id: string
-
Optionallast_ran_at?: string
-
Optionalname?: string
-
Optionalnext_run?: string
-
number_of_errors: number
-
number_of_runs: number
-
schedule:
| { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
-
status: string
-
submitted_at: string
-
timer_type: "flow"
-
V2TimerCreate: {
timer:
| {
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
name?: string;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "flow";
}
| {
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
name?: string;
resource_server: "transfer.api.globus.org";
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "transfer";
};
}
-
timer:
| {
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
name?: string;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "flow";
}
| {
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
name?: string;
resource_server: "transfer.api.globus.org";
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "transfer";
}
-
V2TimerRead: {
timer:
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "flow";
}
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "transfer";
};
}
-
timer:
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
body: Record<string, unknown>;
run_managers?: string[];
run_monitors?: string[];
tags?: string[];
};
flow_id: string;
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "flow";
}
| {
activity?: | { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "transfer";
}
-
V2TransferTimerCreate: {
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
name?: string;
resource_server: "transfer.api.globus.org";
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
timer_type: "transfer";
}
-
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
}
-
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[]
-
DATA_TYPE: "transfer"
-
Optionaldeadline?: string
-
delete_destination_extra: boolean
-
destination_endpoint: string
-
Optionaldestination_local_user?: string
-
encrypt_data: boolean
-
fail_on_quota_errors: boolean
-
Optionalfilter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
-
Optionallabel?: string
-
notify_on_failed: boolean
-
notify_on_inactive: boolean
-
notify_on_succeeded: boolean
-
preserve_timestamp: boolean
-
skip_source_errors: boolean
-
source_endpoint: string
-
Optionalsource_local_user?: string
-
store_base_path_info: boolean
-
Optionalsync_level?: 0 | 2 | 1 | 3
-
verify_checksum: boolean
-
Optionalname?: string
-
resource_server: "transfer.api.globus.org"
-
schedule:
| { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
-
timer_type: "transfer"
-
V2TransferTimerRead: {
activity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| {
code: "paused";
reason: "other"
| "user"
| "globus_auth_requirements";
}
| { code: "retrying"; start_timestamp: string };
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
};
inactive_reason?: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
job_id: string;
last_ran_at?: string;
name?: string;
next_run?: string;
number_of_errors: number;
number_of_runs: number;
schedule: | { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
};
status: string;
submitted_at: string;
timer_type: "transfer";
}
-
Optionalactivity?:
| { code: "awaiting_next_run"; next_run: string }
| {
code: "run_in_progress";
duration_seconds: number;
start_timestamp: string;
}
| { code: "paused"; reason: "other"
| "user"
| "globus_auth_requirements" }
| { code: "retrying"; start_timestamp: string }
-
body: {
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[];
DATA_TYPE: "transfer";
deadline?: string;
delete_destination_extra: boolean;
destination_endpoint: string;
destination_local_user?: string;
encrypt_data: boolean;
fail_on_quota_errors: boolean;
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include"
| "exclude";
name: string;
type?: "file" | "dir";
}[];
label?: string;
notify_on_failed: boolean;
notify_on_inactive: boolean;
notify_on_succeeded: boolean;
preserve_timestamp: boolean;
skip_source_errors: boolean;
source_endpoint: string;
source_local_user?: string;
store_base_path_info: boolean;
sync_level?: 0
| 2
| 1
| 3;
verify_checksum: boolean;
}
-
DATA: {
checksum_algorithm?: string;
DATA_TYPE: "transfer_item";
destination_path: string;
external_checksum?: string;
recursive?: boolean;
source_path: string;
}[]
-
DATA_TYPE: "transfer"
-
Optionaldeadline?: string
-
delete_destination_extra: boolean
-
destination_endpoint: string
-
Optionaldestination_local_user?: string
-
encrypt_data: boolean
-
fail_on_quota_errors: boolean
-
Optionalfilter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
-
Optionallabel?: string
-
notify_on_failed: boolean
-
notify_on_inactive: boolean
-
notify_on_succeeded: boolean
-
preserve_timestamp: boolean
-
skip_source_errors: boolean
-
source_endpoint: string
-
Optionalsource_local_user?: string
-
store_base_path_info: boolean
-
Optionalsync_level?: 0 | 2 | 1 | 3
-
verify_checksum: boolean
-
Optionalinactive_reason?: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
-
cause: "user" | "globus_auth_requirements"
-
Optionaldetail?: Record<string, unknown>
-
job_id: string
-
Optionallast_ran_at?: string
-
Optionalname?: string
-
Optionalnext_run?: string
-
number_of_errors: number
-
number_of_runs: number
-
schedule:
| { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
-
status: string
-
submitted_at: string
-
timer_type: "transfer"
-
ValidationError: { loc: (string | number)[]; msg: string; type: string }
-
loc: (string | number)[]
-
msg: string
-
type: string
ApiTimerActivityAwaiting