schemas
schemas: {
EndConditionIterations: { condition: "iterations"; count: number };
EndConditionTime: { condition: "time"; datetime: string };
FilterRule: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
};
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?: { date?: string; n_runs?: number };
};
JobInactiveReason: {
cause: "user"
| "globus_auth_requirements";
detail?: Record<string, unknown>;
};
JobRead: {
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;
};
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 };
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;
};
V2TimerCreate: {
timer: {
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: {
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: {
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
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
Optional
type?: "file" | "dir"
HTTPValidationError: { detail?: { loc: (string | number)[]; msg: string; type: string }[] }
Optional
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?: { date?: string; n_runs?: number };
}
callback_body: Record<string, unknown>
callback_url: string
Optional
interval?: number
Optional
name?: string
Optional
refresh_token?: string
Optional
scope?: string
start: string
Optional
stop_after?: { date?: string; n_runs?: number }
Optional
date?: string
Optional
n_runs?: number
JobInactiveReason: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
cause: "user" | "globus_auth_requirements"
Optional
detail?: Record<string, unknown>
JobRead: {
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;
}
callback_body: Record<string, unknown>
callback_url: string
Optional
inactive_reason?: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
cause: "user" | "globus_auth_requirements"
Optional
detail?: Record<string, unknown>
Optional
interval?: number
job_id: string
Optional
last_ran_at?: string
n_errors: number
n_runs: number
Optional
name?: string
Optional
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;
}
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;
}[]
Optional
page_next?: string
schedule:
| { datetime?: string; type: "once" }
| {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
Optional
scope?: string
start: string
status: string
Optional
stop_after?: { date?: string; n_runs?: number }
Optional
date?: string
Optional
n_runs?: number
submitted_at: string
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;
}
Optional
data?: Record<string, unknown>
Optional
end_timestamp?: string
Optional
errors?: Record<string, unknown>
Optional
http_status_polled?: number
Optional
http_status_submission?: number
Optional
last_check_timestamp?: string
Optional
next_check_timestamp?: string
ran_at: string
Optional
resource_id?: string
run_status: string
start_timestamp: string
Optional
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;
}
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;
}[]
Optional
page_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" }
Optional
datetime?: string
type: "once"
RecurringSchedule: {
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string };
interval_seconds: number;
start?: string;
type: "recurring";
}
Optional
end?:
| { condition: "iterations"; count: number }
| { condition: "time"; datetime: string }
interval_seconds: number
Optional
start?: string
type: "recurring"
StopAfter: { date?: string; n_runs?: number }
Optional
date?: string
Optional
n_runs?: number
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"
Optional
deadline?: string
delete_destination_extra: boolean
destination_endpoint: string
Optional
destination_local_user?: string
encrypt_data: boolean
fail_on_quota_errors: boolean
Optional
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
Optional
label?: string
notify_on_failed: boolean
notify_on_inactive: boolean
notify_on_succeeded: boolean
preserve_timestamp: boolean
skip_source_errors: boolean
source_endpoint: string
Optional
source_local_user?: string
store_base_path_info: boolean
Optional
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;
}
Optional
checksum_algorithm?: string
DATA_TYPE: "transfer_item"
destination_path: string
Optional
external_checksum?: string
Optional
recursive?: boolean
source_path: string
V2TimerCreate: {
timer: {
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: {
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"
Optional
deadline?: string
delete_destination_extra: boolean
destination_endpoint: string
Optional
destination_local_user?: string
encrypt_data: boolean
fail_on_quota_errors: boolean
Optional
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
Optional
label?: string
notify_on_failed: boolean
notify_on_inactive: boolean
notify_on_succeeded: boolean
preserve_timestamp: boolean
skip_source_errors: boolean
source_endpoint: string
Optional
source_local_user?: string
store_base_path_info: boolean
Optional
sync_level?: 0 | 2 | 1 | 3
verify_checksum: boolean
Optional
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: {
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: {
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";
}
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"
Optional
deadline?: string
delete_destination_extra: boolean
destination_endpoint: string
Optional
destination_local_user?: string
encrypt_data: boolean
fail_on_quota_errors: boolean
Optional
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
Optional
label?: string
notify_on_failed: boolean
notify_on_inactive: boolean
notify_on_succeeded: boolean
preserve_timestamp: boolean
skip_source_errors: boolean
source_endpoint: string
Optional
source_local_user?: string
store_base_path_info: boolean
Optional
sync_level?: 0 | 2 | 1 | 3
verify_checksum: boolean
Optional
inactive_reason?: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
cause: "user" | "globus_auth_requirements"
Optional
detail?: Record<string, unknown>
job_id: string
Optional
last_ran_at?: string
Optional
name?: string
Optional
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"
Optional
deadline?: string
delete_destination_extra: boolean
destination_endpoint: string
Optional
destination_local_user?: string
encrypt_data: boolean
fail_on_quota_errors: boolean
Optional
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
Optional
label?: string
notify_on_failed: boolean
notify_on_inactive: boolean
notify_on_succeeded: boolean
preserve_timestamp: boolean
skip_source_errors: boolean
source_endpoint: string
Optional
source_local_user?: string
store_base_path_info: boolean
Optional
sync_level?: 0 | 2 | 1 | 3
verify_checksum: boolean
Optional
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: {
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";
}
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"
Optional
deadline?: string
delete_destination_extra: boolean
destination_endpoint: string
Optional
destination_local_user?: string
encrypt_data: boolean
fail_on_quota_errors: boolean
Optional
filter_rules?: {
DATA_TYPE: "filter_rule";
method: "include" | "exclude";
name: string;
type?: "file" | "dir";
}[]
Optional
label?: string
notify_on_failed: boolean
notify_on_inactive: boolean
notify_on_succeeded: boolean
preserve_timestamp: boolean
skip_source_errors: boolean
source_endpoint: string
Optional
source_local_user?: string
store_base_path_info: boolean
Optional
sync_level?: 0 | 2 | 1 | 3
verify_checksum: boolean
Optional
inactive_reason?: { cause: "user" | "globus_auth_requirements"; detail?: Record<string, unknown> }
cause: "user" | "globus_auth_requirements"
Optional
detail?: Record<string, unknown>
job_id: string
Optional
last_ran_at?: string
Optional
name?: string
Optional
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 }
loc: (string | number)[]
msg: string
type: string
EndConditionIterations