Download OpenAPI specification:Download
Each resource can be accessed or modified using specially formed URLs and the standard HTTP methods:
GET to read
POST to create
PUT to update
DELETE to remove
We require that all requests are done over SSL. The API supports JSON formats. Rucio uses OAuth to authenticate all API requests. The method is to get an authentication token, and use it for the rest of the requests. Descriptions of the actions you may perform on each resource can be found below.
All dates returned are in UTC and are strings in the following format (RFC 1123, ex RFC 822):
Mon, 13 May 2013 10:23:03 UTC
In code format, which can be used in all programming languages that support strftime or strptime:
%a, %d %b %Y %H:%M:%S UTC
We require that all requests(except for the ping) are done over SSL.
The currently-available response format for all REST endpoints is the string-based format JavaScript Object Notation(JSON). The server answer can be one of the following content-type in the http Header:
Content-type: application/json
Content-Type: application/x-json-stream
In the last case, it corresponds to JSON objects delimited by newlines(streaming JSON for large answer), e.g.:
{ "id": 1, "foo": "bar" } { "id": 2, "foo": "baz" } ...
Errors are returned using standard HTTP error code syntax. Any additional info is included in the header of the return call, JSON-formatted with the parameters:
ExceptionClass ExceptionMessage
Where ExceptionClass refers to Rucio Exceptions
.
account required | string The account for the accountlimit. |
rse required | string The rse for the accountlimit. |
bytes required | integer The new limit in bytes. |
{- "bytes": 0
}
"Created"
account required | string The account for the accountlimit. |
rse required | string The rse for the accountlimit. |
curl --request DELETE \ --url http://undefinedundefined/accountlimits/local/{account}/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
account required | string The account for the accountlimit. |
rse_expression required | string The rse expression for the accountlimit. |
bytes required | integer The new limit in bytes. |
{- "bytes": 0
}
"Created"
account required | string The account for the accountlimit. |
rse_expression required | string The rse expression for the accountlimit. |
curl --request DELETE \ --url http://undefinedundefined/accountlimits/global/{account}/{rse_expression} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Create an attribute to an account.
account required | string The account identifier. |
key required | string The key of the account attribute. |
key | string The key of the attribute. This would override the key defined in path. |
value required | string The value of the attribute. |
{- "key": "string",
- "value": "string"
}
"Created"
Delete an attribute of an account.
account required | string The account identifier. |
key required | string The key of the account attribute to remove. |
curl --request DELETE \ --url http://undefinedundefined/accounts/{account}/attr/{key} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Creates a scopse with the given name for an account.
account required | string The account identifier. |
scope required | string The scope name. |
curl --request POST \ --url http://undefinedundefined/accounts/{account}/scopes/{scope} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
Get the current local limits for an account on a specific RSE.
account required | string The account identifier. |
rse required | string The rse identifier. |
curl --request GET \ --url http://undefinedundefined/accounts/{account}/limits/local/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{ }
Get the current global limits for an account on a specific RSE expression.
account required | string The account identifier. |
rse_expression required | string The rse identifier. |
curl --request GET \ --url http://undefinedundefined/accounts/{account}/limits/global/{rse_expression} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{ }
Grant an account identity access to an account.
account required | string The account identifier. |
identity required | string The identity. |
authtype required | string The authtype. |
email required | string The email. |
password | string Default: "none" The password. |
default | string Default: false Should this be the default account? |
{- "identity": "string",
- "authtype": "string",
- "email": "string",
- "password": "none",
- "default": false
}
"Created"
Delete an account identity.
account required | string The account identifier. |
identity required | string The identity. |
authtype required | string The authtype. |
{- "identity": "string",
- "authtype": "string"
}
Lists all identities for an account.
account required | string The account identifier. |
curl --request GET \ --url http://undefinedundefined/accounts/{account}/identities \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- [
- "string",
- "string"
]
]
Lists all rules for an account.
account required | string The account identifier. |
curl --request GET \ --url http://undefinedundefined/accounts/{account}/rules \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- "string"
]
Returns the account usage history.
account required | string The account identifier. |
rse required | string The rse identifier. |
curl --request GET \ --url http://undefinedundefined/accounts/{account}/usage/history/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "bytes": 0,
- "files": "string",
- "updated_at": "string"
}
]
Returns the local account usage.
account required | string The account identifier. |
rse required | string The rse identifier. |
curl --request GET \ --url http://undefinedundefined/accounts/{account}/usage/local/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "rse_id": "string",
- "bytes": 0,
- "bytes_limit": 0,
- "bytes_remaining": 0
}
]
Returns the local account usage.
account required | string The account identifier. |
rse_expression required | string The rse expression. |
curl --request GET \ --url http://undefinedundefined/accounts/{account}/usage/global/{rse_expression} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "rse_expression": "string",
- "bytes": 0,
- "bytes_limit": 0,
- "bytes_remaining": 0
}
]
Update a parameter for an account.
account required | string The account identifier. |
Json object with key-value pairs corresponding to the new values of the parameters.
{ }
Create an account.
account required | string The account identifier. |
type required | string Enum: "USER" "GROUP" "SERVICE" The account type. |
email required | string The email for the account. |
{- "type": "USER",
- "email": "string"
}
"Created"
Lists all parameters for an account.
account required | string The account identifier. |
curl --request GET \ --url http://undefinedundefined/accounts/{account} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "account": "string",
- "account_type": "string",
- "status": "string",
- "email": "string",
- "suspended_at": "string",
- "deleted_at": "string"
}
curl --request GET \ --url http://undefinedundefined/accounts \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "account": "string",
- "type": "string",
- "email": "string"
}
]
Authenticate a Rucio account temporarily via username and password.
X-Rucio-Account required | string Account identifier as a string. |
X-Rucio-Username required | string Username as a string. |
X-Rucio-Password required | string password as a text-plain string. |
X-Rucio-AppID | string Application identifier as a string. |
X-Forwarded-For | string The forward ip address. |
curl --request GET \ --url http://undefinedundefined/auth/userpass \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-AppID: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE' \ --header 'X-Rucio-Password: SOME_STRING_VALUE' \ --header 'X-Rucio-Username: SOME_STRING_VALUE'
Authenticate a Rucio account via GSS.
X-Rucio-Account required | string |
REMOTE_USER required | string |
X-Rucio-AppID | string |
X-Forwarded-For | string |
curl --request GET \ --url http://undefinedundefined/auth/gss \ --header 'REMOTE_USER: SOME_STRING_VALUE' \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-AppID: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via x509.
X-Rucio-Account required | string |
X-Rucio-AppID | string |
X-Forwarded-For | string |
X-Rucio-Allow-Return-Multiple-Accounts | boolean If set to true, a HTTP 206 response will be returned if the identity is associated with multiple accounts. |
curl --request GET \ --url http://undefinedundefined/auth/x509 \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-Allow-Return-Multiple-Accounts: SOME_BOOLEAN_VALUE' \ --header 'X-Rucio-AppID: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via SSH.
X-Rucio-Account required | string |
X-Rucio-SSH-Signature required | string |
X-Rucio-AppID | string |
X-Forwarded-For | string |
curl --request GET \ --url http://undefinedundefined/auth/ssh \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-AppID: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE' \ --header 'X-Rucio-SSH-Signature: SOME_STRING_VALUE'
SSHChallengeToken Allow cross-site scripting. Explicit for Authentication.
curl --request OPTIONS \ --url http://undefinedundefined/auth/ssh_challenge_token \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via SSHChallengeToken.
X-Rucio-Account required | string |
X-Rucio-AppID | string |
X-Forwarded-For | string |
curl --request GET \ --url http://undefinedundefined/auth/ssh_challenge_token \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-AppID: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via SAML.
X-Rucio-Account required | string |
X-Rucio-AppID | string |
X-Forwarded-For | string |
curl --request GET \ --url http://undefinedundefined/auth/saml \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-AppID: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Validate a Rucio auth token.
X-Rucio-Account required | string |
curl --request GET \ --url http://undefinedundefined/auth/validate \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via OIDC.
HTTP_X_RUCIO_ACCOUNT | string Account identifier as a string. |
HTTP_X_RUCIO_CLIENT_AUTHORIZE_SCOPE | string |
HTTP_X_RUCIO_CLIENT_AUTHORIZE_AUDIENCE | string |
HTTP_X_RUCIO_CLIENT_AUTHORIZE_AUTO | string |
HTTP_X_RUCIO_CLIENT_AUTHORIZE_ISSUER | string |
HTTP_X_RUCIO_CLIENT_AUTHORIZE_POLLING | string |
HTTP_X_RUCIO_CLIENT_AUTHORIZE_REFRESH_LIFETIME | string |
X-Forwarded-For | string |
curl --request GET \ --url http://undefinedundefined/auth/oidc \ --header 'HTTP_X_RUCIO_ACCOUNT: SOME_STRING_VALUE' \ --header 'HTTP_X_RUCIO_CLIENT_AUTHORIZE_AUDIENCE: SOME_STRING_VALUE' \ --header 'HTTP_X_RUCIO_CLIENT_AUTHORIZE_AUTO: SOME_STRING_VALUE' \ --header 'HTTP_X_RUCIO_CLIENT_AUTHORIZE_ISSUER: SOME_STRING_VALUE' \ --header 'HTTP_X_RUCIO_CLIENT_AUTHORIZE_POLLING: SOME_STRING_VALUE' \ --header 'HTTP_X_RUCIO_CLIENT_AUTHORIZE_REFRESH_LIFETIME: SOME_STRING_VALUE' \ --header 'HTTP_X_RUCIO_CLIENT_AUTHORIZE_SCOPE: SOME_STRING_VALUE' \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via TokenOIDC.
X-Forwarded-For | string |
curl --request GET \ --url http://undefinedundefined/auth/oidc_token \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via CodeOIDC.
X-Forwarded-For | string |
curl --request GET \ --url http://undefinedundefined/auth/oidc_code \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
RedirectOIDC Allow cross-site scripting. Explicit for Authentication.
curl --request OPTIONS \ --url http://undefinedundefined/auth/oidc_redirect \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Authenticate a Rucio account via RedirectOIDC.
X-Rucio-Client-Fetch-Token | string |
curl --request GET \ --url http://undefinedundefined/auth/oidc_redirect \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE' \ --header 'X-Rucio-Client-Fetch-Token: SOME_STRING_VALUE'
Authenticate a Rucio account via RefreshOIDC.
X-Rucio-Account required | string |
X-Rucio-Auth-Token required | string |
curl --request GET \ --url http://undefinedundefined/auth/oidc_refresh \ --header 'X-Rucio-Account: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Create or set the value of an option.
section required | string The section. |
option required | string The option of the section. |
value required | string The value to set. |
curl --request PUT \ --url http://undefinedundefined/config/{section}/{option}/{value} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
Delete an option of a section.
section required | string The section. |
option required | string The option of the section. |
curl --request DELETE \ --url http://undefinedundefined/config/{section}/{option} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Returns the value of an option
section required | string The section. |
option required | string The option of the section. |
curl --request GET \ --url http://undefinedundefined/config/{section}/{option} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"string"
section required | string The section to return. |
bytes required | integer The new limit in bytes. |
{- "bytes": 0
}
{ }
Create or set the configuration option in the requested section.
The request body is expected to contain a json {'section': {'option': 'value'}}.
{ }
"Created"
Sign a url for a limited lifetime for a particular srevice.
rse required | string The RSE to authenticate against. |
lifetime | string The lifetime, default 600s. |
svc | string The service, default gcs. |
op | string The operation. |
url required | string The Url of the authentication. |
X-Rucio-Account | string Account identifier. |
X-Rucio-VO | string VO name (Multi-VO only). |
X-Rucio-AppID | string Application identifier. |
curl --request GET \ --url 'http://undefinedundefined/credentials/signurl?rse=SOME_STRING_VALUE&lifetime=SOME_STRING_VALUE&svc=SOME_STRING_VALUE&op=SOME_STRING_VALUE&url=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "key": "string",
- "value": "string"
}
]
Return all data identifiers in the given scope.
scope required | string The scope. |
name | string The name of the data identifier (did). |
recursive | boolean If true, retrieves child identifiers recursively for non-file types. |
curl --request GET \ --url 'http://undefinedundefined/dids/{scope}/?name=SOME_STRING_VALUE&recursive=SOME_BOOLEAN_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "type": "F",
- "parent": "string",
- "level": 0
}
]
Returns the dataset associated with a GUID.
guid required | string The GUID to query buy. |
curl --request GET \ --url http://undefinedundefined/dids/{guid}/guid \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string"
}
]
List all data identifiers in a scope which match a given metadata.
scope required | string The scope of the data identifiers. |
type | string Default: "collection" Enum: "all" "collection" "container" "dataset" "file" The did type to search for. |
limit | integer The maximum number od dids returned. |
long | boolean Default: false Provides a longer output, otherwise just prints names. |
recursive | boolean Recursively list chilred. |
created_before | string Date string in RFC-1123 format where the creation date was earlier. |
created_after | string Date string in RFC-1123 format where the creation date was later. |
length | integer Exact number of attached DIDs. |
length.gt | integer Number of attached DIDs greater than. |
length.lt | integer Number of attached DIDs less than. |
length.gte | integer Number of attached DIDs greater than or equal to |
length.lte | integer Number of attached DIDs less than or equal to. |
name | string Name or pattern of a did. |
curl --request GET \ --url 'http://undefinedundefined/dids/{scope}/dids/search?type=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&long=SOME_BOOLEAN_VALUE&recursive=SOME_BOOLEAN_VALUE&created_before=SOME_STRING_VALUE&created_after=SOME_STRING_VALUE&length=SOME_INTEGER_VALUE&length.gt=SOME_INTEGER_VALUE&length.lt=SOME_INTEGER_VALUE&length.gte=SOME_INTEGER_VALUE&length.lte=SOME_INTEGER_VALUE&name=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- { }
]
List all replicas for a did.
scope_name required | string The scope and the name of the did. |
long | object Flag to trigger long output. |
curl --request GET \ --url 'http://undefinedundefined/dids/{scope_name}/files?long=SOME_OBJECT_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[ ]
Returns the content history of a data identifier.
scope_name required | string The scope and the name of the did. |
curl --request GET \ --url http://undefinedundefined/dids/{scope_name}/dids/history \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "type": "string",
- "bytes": 0,
- "adler32": "string",
- "md5": "string",
- "deleted_at": "string",
- "created_at": "string",
- "updated_at": "string"
}
]
Append data identifiers to data identifiers.
scope_name required | string The scope and the name of the did. |
rse | string The name of the rse. |
account | string The account which attaches the dids. |
required | object The dids to attach. |
{- "rse": "string",
- "account": "string",
- "dids": {
- "account": "string",
- "scope": "string",
- "name": "string"
}
}
"Created"
Detach data identifiers from data identifiers.
scope_name required | string The scope and the name of the did. |
required | Array of objects The dids to detach. |
{- "dids": [
- {
- "scope": "string",
- "name": "string"
}
]
}
Returns the contents of a data identifier.
scope_name required | string The scope and the name of the did. |
curl --request GET \ --url http://undefinedundefined/dids/{scope_name}/dids \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "type": "string",
- "bytes": 0,
- "adler32": "string",
- "md5": "string"
}
]
Add metadata to a did.
scope_name required | string The scope and the name of the did. |
meta required | object The metadata to add. A dictionary containing the metadata name as key and the value as value. |
recursive | boolean Default: false Flag if the metadata should be applied recirsively to children. |
{- "meta": { },
- "recursive": false
}
"Created"
Deletes the specified metadata from the did.
scope_name required | string The scope and the name of the did. |
key | string The key to delete. |
curl --request DELETE \ --url 'http://undefinedundefined/dids/{scope_name}/meta?key=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Get the metadata of a did.
scope_name required | string The scope and the name of the did. |
plugin | string Default: "DID_COLUMN" The plugin to use. |
curl --request GET \ --url 'http://undefinedundefined/dids/{scope_name}/meta?plugin=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{ }
Add metadata to a did.
scope_name required | string The scope and the name of the did. |
key required | string The key for the metadata. |
value required | object The value to set. |
{- "value": { }
}
"Created"
Adds metadata in a bulk.
required | Array of objects A list with all the dids and the metadata. |
{- "dids": [
- {
- "scope": "string",
- "name": "string",
- "meta": { }
}
]
}
"Created"
Lists all rules of a given did.
scope_name required | string The scope and the name of the did. |
curl --request GET \ --url http://undefinedundefined/dids/{scope_name}/rules \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- { }
]
Lists all parents of the did.
scope_name required | string The scope and the name of the did. |
curl --request GET \ --url http://undefinedundefined/dids/{scope_name}/parents \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "type": "string"
}
]
Gets all associated rules for a file.
scope_name required | string The scope and the name of the did. |
curl --request GET \ --url http://undefinedundefined/dids/{scope_name}/associated_rules \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "subscription_id": "string",
- "account": "string",
- "scope": "string",
- "name": "string",
- "state": "string",
- "rse_expression": "string"
}
]
Mark the input DID as being followed by the given account.
scope_name required | string The scope and the name of the did. |
account required | string The account to follow the did. |
{- "account": "string"
}
Mark the input DID as not followed
scope_name required | string The scope and the name of the did. |
account required | string The account to unfollow the did. |
{- "account": "string"
}
Get all followers for a specific did.
scope_name required | string The scope and the name of the did. |
curl --request GET \ --url http://undefinedundefined/dids/{scope_name}/follow \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "user": "string"
}
]
Add new Dids in bulk.
scope required | string The did scope. |
name required | string The did name. |
type required | string Enum: "F" "D" "C" "A" "X" "Y" "Z" The type of the did. |
account | string The account associated with the did. |
statuses | string The monotonic status |
[- {
- "scope": "string",
- "name": "string",
- "type": "F",
- "account": "string",
- "statuses": "string"
}
]
"Created"
Creates a sample from an input collection.
input_scope required | string The input scope. |
input_name required | string The input name. |
output_scope required | string The output scope. |
output_name required | string The output name. |
nbfiles required | string The number of files to register in the output dataset. |
curl --request POST \ --url http://undefinedundefined/dids/{input_scope}/{input_name}/{output_scope}/{output_name}/{nbfiles}/sample \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
Creates a sample from an input collection.
Parameters (source and destination) for the files in the sample to be created
input_scope required | string The input scope. |
input_name required | string The input name. |
output_scope required | string The output scope. |
output_name required | string The output name. |
nbfiles required | string The number of files to register in the output dataset. |
{- "input_scope": "string",
- "input_name": "string",
- "output_scope": "string",
- "output_name": "string",
- "nbfiles": "string"
}
"Created"
Attaches a did to another did
{- "ignore_duplicates": false,
- "attachments": [ ]
}
"Created"
Returns a list of recent identifiers.
type | string The type of the did. |
curl --request GET \ --url 'http://undefinedundefined/dids/new?type=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "did_type": "string"
}
]
Resurrect all given dids.
scope | string The scope of the did. |
name | string The name of the did |
[- {
- "scope": "string",
- "name": "string"
}
]
"Created"
List all metadata of a list of data identifiers.
required | Array of objects The dids. |
inherit | boolean Default: false Concatenated the metadata of the parent if set to true. |
{- "dids": [
- {
- "name": "string",
- "scope": "string"
}
], - "inherit": false
}
[- { }
]
List files in multiple dids
scope required | string The did scope. |
name required | string The did name. |
[- {
- "scope": "string",
- "name": "string"
}
]
[- {
- "parent_scope": "string",
- "parent_name": "string",
- "scope": "string",
- "name": "string",
- "bytes": 0,
- "guid": "string",
- "events": 0,
- "adler32": "string"
}
]
Get a single data identifier.
scope_name required | string The scope and the name of the did. |
dynamic_depth | string Enum: "FILE" "DATASET" The DID type at which to stop the dynamic length/size estimation |
dynamic | string Deprecated Same as dynamic_depth = "FILE" |
curl --request GET \ --url 'http://undefinedundefined/dids/{scope_name}/status?dynamic_depth=SOME_STRING_VALUE&dynamic=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "scope": "string",
- "name": "string",
- "type": "string",
- "account": "string",
- "open": true,
- "monotonic": true,
- "expired_at": "string",
- "length": 0,
- "bytes": 0
}
Atomic method used by the RucioFileCatalog plugin in Dirac that:
lfns required | Array of objects List of lfn (dictionary {'lfn': |
ignore_availability | boolean If the availability should be ignored. |
parents_metadata | object Metadata for selected hierarchy DIDs. |
{- "lfns": [
- { }
], - "ignore_availability": true,
- "parents_metadata": { }
}
"Created"
Export data from rucio.
distance | boolean Should the distance be enabled? |
curl --request GET \ --url 'http://undefinedundefined/export?distance=SOME_BOOLEAN_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{ }
executable | string Name of the executable. |
hostname | string Name of the host. |
pid | integer UNIX Process ID as a number, e.g., 1234. |
older_than | integer Ignore specified heartbeats older than specified nr of seconds. |
payload | string Payload identifier which can be further used to identify the work a certain thread is executing. |
{- "executable": "string",
- "hostname": "string",
- "pid": 0,
- "older_than": 0,
- "payload": "string"
}
Creates a new UserPass identity and maps it to an account.
account required | string The account for the identity. |
X-Rucio-Username required | string Username for the identity. |
X-Rucio-Password required | string The password for the identity. |
X-Rucio-Email | string The email for the identity. |
curl --request PUT \ --url 'http://undefinedundefined/identities/{account}/userpass?X-Rucio-Username=SOME_STRING_VALUE&X-Rucio-Password=SOME_STRING_VALUE&X-Rucio-Email=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
Creates a new X509 identity and maps it to an account.
account required | string The account for the identity. |
X-Rucio-Email | string The email for the identity. |
curl --request PUT \ --url 'http://undefinedundefined/identities/{account}/x509?X-Rucio-Email=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
Creates a new GSS identity and maps it to an account.
account required | string The account for the identity. |
X-Rucio-Email | string The email for the identity. |
curl --request PUT \ --url 'http://undefinedundefined/identities/{account}/gss?X-Rucio-Email=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
List all identities mapped to an account.
identity_key required | string Identity string. |
type required | string Identity type. |
curl --request GET \ --url http://undefinedundefined/identities/{identity_key}/{type}/accounts \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- { }
]
Import data into rucio
object Rse data with rse name as key. | |
object Distances data with src rse name as key. | |
Array of objects Account data. |
{- "rses": {
- "rse name1": {
- "rse_type": "DISK"
}, - "rse name2": {
- "rse_type": "DISK"
}
}, - "distances": {
- "src rse1": {
- "dest rse1": {
- "distance": 0,
- "ranking": 0
}, - "dest rse2": {
- "distance": 0,
- "ranking": 0
}
}, - "src rse2": {
- "dest rse1": {
- "distance": 0,
- "ranking": 0
}, - "dest rse2": {
- "distance": 0,
- "ranking": 0
}
}
}, - "accounts": [
- {
- "account": "string",
- "email": "string",
- "identities": [
- {
- "type": "X509",
- "identity": "string",
- "password": "string"
}
]
}
]
}
"Created"
Creates a Lifetime Exception.
Array of objects List of dids associated with the lifetime exception. | |
pattern | string The pattern of the lifetime exception. |
comments | string The comment for the lifetime exception. |
expires_at | string The expiration date for the lifetime exception. |
{- "dids": [
- {
- "name": "string"
}
], - "pattern": "string",
- "comments": "string",
- "expires_at": "string"
}
"string"
curl --request GET \ --url http://undefinedundefined/lifetime_exceptions/ \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "scope": "string",
- "name": "string",
- "did_type": "F",
- "account": "string",
- "pattern": "string",
- "comments": "string",
- "state": "A",
- "created_at": "string",
- "expires_at": "string"
}
]
Approve/Reject a Lifetime Exception.
exception_id required | string The id of the Lifetime Exception. |
state | string Enum: "A" "R" The new state for the Lifetime Exception. |
{- "state": "A"
}
"Created"
Get a single Lifetime Exception.
exception_id required | string The id of the lifetime exception. |
curl --request GET \ --url http://undefinedundefined/lifetime_exceptions/{exception_id} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "scope": "string",
- "name": "string",
- "did_type": "F",
- "account": "string",
- "pattern": "string",
- "comments": "string",
- "state": "A",
- "created_at": "string",
- "expires_at": "string"
}
]
Get all dataset locks for an associated rse.
rse required | string The rse name. |
did_type | string Value: "dataset" The did type to filter for. |
{- "did_type": "dataset"
}
[- {
- "rse_id": "string",
- "rse": "string",
- "scope": "string",
- "name": "string",
- "rule_id": "string",
- "account": "string",
- "state": "R",
- "length": 0,
- "bytes": 0,
- "accessed_at": "string"
}
]
Get all dataset locks for an associated rse.
scope_name required | string The scope name. |
did_type | string Value: "dataset" The did type to filter for. |
{- "did_type": "dataset"
}
[- {
- "rse_id": "string",
- "rse": "string",
- "scope": "string",
- "name": "string",
- "rule_id": "string",
- "account": "string",
- "state": "R",
- "length": 0,
- "bytes": 0,
- "accessed_at": "string"
}
]
Get all dataset locks for the associated dids.
Array of objects The dids associated with the locks. |
{- "dids": [
- {
- "scope": "string",
- "name": "string",
- "type": "dataset"
}
]
}
[- {
- "rse_id": "string",
- "rse": "string",
- "scope": "string",
- "name": "string",
- "rule_id": "string",
- "account": "string",
- "state": "R",
- "length": 0,
- "bytes": 0,
- "accessed_at": "string"
}
]
Creates a new allowed key (value is NULL).
key required | string The name of the key. |
key_type | string The key type. |
value_type | string The value type. |
value_regexp | string The value regexpression. |
{- "key_type": "string",
- "value_type": "string",
- "value_regexp": "string"
}
"Created"
Creates a new value for a key.
key required | string The reference key. |
value required | string The new value associated with a key. |
{- "value": "string"
}
"Created"
List all values for a key.
key required | string The reference key. |
curl --request GET \ --url http://undefinedundefined/meta_conventions/{key}/ \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- "string"
]
Creates a new allowed key (value is NULL).
key required | string The name of the key. |
key_type | string The key type. |
value_type | string The value type. |
value_regexp | string The value regexpression. |
{- "key_type": "string",
- "value_type": "string",
- "value_regexp": "string"
}
"Created"
Creates a new value for a key.
key required | string The reference key. |
value required | string The new value associated with a key. |
{- "value": "string"
}
"Created"
List all values for a key.
key required | string The reference key. |
curl --request GET \ --url http://undefinedundefined/meta/{key}/ \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- "string"
]
Get Metalink redirect.
scope_name required | string The data identifier (scope)/(name). |
ip | string The client ip. |
fqdn | string |
site | string |
schemes | Array of arrays |
select | string |
sort | string |
curl --request GET \ --url 'http://undefinedundefined/redirect/{scope_name}/metalink?ip=SOME_STRING_VALUE&fqdn=SOME_STRING_VALUE&site=SOME_STRING_VALUE&schemes=SOME_ARRAY_VALUE&select=SOME_STRING_VALUE&sort=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Get the header redirect.
scope_name required | string The data identifier (scope)/(name). |
ip | string The client ip. |
fqdn | string |
site | string |
schemes | Array of arrays |
select | string |
sort | string |
rse | string |
curl --request GET \ --url 'http://undefinedundefined/redirect/{scope_name}?ip=SOME_STRING_VALUE&fqdn=SOME_STRING_VALUE&site=SOME_STRING_VALUE&schemes=SOME_ARRAY_VALUE&select=SOME_STRING_VALUE&sort=SOME_STRING_VALUE&rse=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"string"
List all replicas for a DID.
limit | integer The maximum number pfns per replica to return. |
select | string Requested sorting of the result, e.g., 'geoip', 'closeness', 'dynamic', 'ranking', 'random'. |
sort | string Requested sorting of the result, e.g., 'geoip', 'closeness', 'dynamic', 'ranking', 'random'. |
X-Forwarded-For | string The client ip address. |
client_location | string The clients location. |
Array of objects List of Dids. | |
schemes | Array of strings A list of schemes to filter the replicas. |
sort | string Requested sorting of the result, e.g., 'geoip', 'closeness', 'dynamic', 'ranking', 'random'. |
unavailable | boolean Deprecated If unavailable rse should be considered. |
ignore_availability | boolean If the availability should be ignored. |
rse_expression | string The RSE expression to restrict on a list of RSEs. |
all_states | boolean Return all replicas whatever state they are in. Adds an extra 'states' entry in the result dictionary. |
domain | string The network domain for the call, either None, 'wan' or 'lan'. None is fallback to 'wan', 'all' is both ['lan','wan'] |
signature_lifetime | integer If supported, in seconds, restrict the lifetime of the signed PFN. |
resolve_archives | boolean When set to True, find archives which contain the replicas. |
resolve_parents | boolean When set to True, find all parent datasets which contain the replicas. |
updated_after | string datetime object (UTC time), only return replicas updated after this time |
nrandom | integer The maximum number of replicas to return. |
{- "client_location": "string",
- "dids": [
- {
- "scope": "string",
- "name": "string"
}
], - "schemes": [
- "string"
], - "sort": "string",
- "unavailable": true,
- "ignore_availability": true,
- "rse_expression": "string",
- "all_states": true,
- "domain": "string",
- "signature_lifetime": 0,
- "resolve_archives": true,
- "resolve_parents": true,
- "updated_after": "string",
- "nrandom": 0
}
[- {
- "scope": "string",
- "name": "string",
- "bytes": 0,
- "md5": "string",
- "adler32": "string",
- "pfns": [ ],
- "rses": [ ]
}
]
List all replicas for data identifiers.
scope_name required | string The DID associated with the replicas. |
schemes | string The schemes of the replicas. |
select | string Enum: "geoip" "closeness" "dynamic" "ranking" "random" The sorting algorithm. |
limit | integer The maximum number of replicas returned. |
X-Forwarded-For | string The client ip |
curl --request GET \ --url 'http://undefinedundefined/replicas/{scope_name}?schemes=SOME_STRING_VALUE&select=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE' \ --header 'X-Forwarded-For: SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "bytes": 0,
- "md5": "string",
- "adler32": "string",
- "pfns": [ ],
- "rses": "string"
}
]
Declare a list of suspicious replicas.
pfns | Array of strings The list of pfns. |
reason | string The reason for the declaration. |
{- "pfns": [
- "string"
], - "reason": "string"
}
[ ]
List the suspicious replicas on a list of RSEs.
rse_expression | string The RSE expression to filter for. |
younger_than | string Date to filter for. |
nattempts | integer The maximum number of attempts to make. |
curl --request GET \ --url 'http://undefinedundefined/replicas/suspicious?rse_expression=SOME_STRING_VALUE&younger_than=SOME_STRING_VALUE&nattempts=SOME_INTEGER_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "rse": "string",
- "rse_id": "string",
- "cnt": 0,
- "created_at": "string"
}
]
List the bad or suspicious replicas by states.
state | string Enum: "SUSPICIOUS" "BAD" The state of the file. |
rse | string The rse name. |
younger_than | string <date-time> Date to select bad replicas younger than this date. |
older_than | string <date-time> Date to select bad replicas older than this date. |
limit | integer The maximum number of replicas returned. |
list_pfns | boolean Flag to include pfns. |
curl --request GET \ --url 'http://undefinedundefined/replicas/bad/states?state=SOME_STRING_VALUE&rse=SOME_STRING_VALUE&younger_than=SOME_STRING_VALUE&older_than=SOME_STRING_VALUE&limit=SOME_INTEGER_VALUE&list_pfns=SOME_BOOLEAN_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "type": "string"
}
]
Return a summary of the bad replicas by incident.
rse_expression | string The RSE expression. |
from_date | string <date-time> The start date. |
to_date | string <date-time> The end date. |
curl --request GET \ --url 'http://undefinedundefined/replicas/bad/summary?rse_expression=SOME_STRING_VALUE&from_date=SOME_STRING_VALUE&to_date=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "rse": "string",
- "rse_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "reason": "string"
}
]
Declare a list of bad PFNs.
expires_at | string <date-time> The expires at value. Only apply to TEMPORARY_UNAVAILABLE. |
pfns | Array of strings The list of pfns associated with the bad PFNs. |
state | string Enum: "BAD" "SUSPICIOUS" "TEMPORARY_UNAVAILABLE" The state to set the PFNs to. |
reason | string The reason for the change. |
{- "expires_at": "2019-08-24T14:15:22Z",
- "pfns": [
- "string"
], - "state": "BAD",
- "reason": "string"
}
Declare a list of bad replicas by DID.
expires_at | string <date-time> The expires at value. |
Array of objects The list of dids associated with the bad replicas. | |
rse | string The name of the rse. |
reason | string The reason for the change. |
{- "expires_at": "2019-08-24T14:15:22Z",
- "dids": [
- {
- "scope": "string",
- "name": "string"
}
], - "rse": "string",
- "reason": "string"
}
[- "string"
]
List dataset replicas per RSE.
rse required | string The rse to filter for. |
curl --request GET \ --url http://undefinedundefined/replicas/rse/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "rse": "string",
- "rse_id": "string",
- "bytes": 0,
- "length": 0,
- "available_bytes": 0,
- "available_length": 0,
- "state": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "accessed_at": "2019-08-24T14:15:22Z"
}
]
Declares a list of bad replicas.
replicas | Array of strings The list of pfns or list of dicts with "scope", "name", "rse_id"/"rse" |
pfns | Array of strings Deprecated The list of pfns, for backward compatibility with older versions of the ReplicaClient |
reason | string The reason for the declaration. |
force | boolean If true, ignore existing replica status in the bad_replicas table. |
{- "replicas": [
- "string"
], - "pfns": [
- "string"
], - "reason": "string",
- "force": true
}
[ ]
Quarantine replicas.
required | Array of objects replicas |
rse | string RSE name |
rse_id | string RSE id |
{- "replicas": [
- {
- "path": "string",
- "scope": "string",
- "name": "string"
}
], - "rse": "string",
- "rse_id": "string"
}
List the DIDs associated to a list of replicas.
pfns | Array of strings The list of pfns. |
rse required | string The RSE name. |
{- "pfns": [
- "string"
], - "rse": "string"
}
[- {
- "mapped PFNs to DIDs1": {
- "scope": "string",
- "name": "string"
}, - "mapped PFNs to DIDs2": {
- "scope": "string",
- "name": "string"
}
}
]
List dataset replicas.
scope_name required | string data identifier (scope)/(name). |
deep | boolean Flag to ennable lookup at the file level. |
curl --request GET \ --url 'http://undefinedundefined/replicas/{scope_name}/datasets?deep=SOME_BOOLEAN_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "rse": "string",
- "rse_id": "string",
- "bytes": 0,
- "length": 0,
- "available_bytes": 0,
- "available_length": 0,
- "state": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "accessed_at": "2019-08-24T14:15:22Z"
}
]
List dataset replicas for multiple dids.
required | Array of objects A list of dids. |
{- "dids": [
- {
- "scope": "string",
- "name": "string"
}
]
}
[- {
- "scope": "string",
- "name": "string",
- "rse": "string",
- "rse_id": "string",
- "bytes": 0,
- "length": 0,
- "available_bytes": 0,
- "available_length": 0,
- "state": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "accessed_at": "2019-08-24T14:15:22Z"
}
]
Set a tombstone on a list of replicas.
Array of objects The replicas to set the tombstone to. |
{- "replicas": [
- {
- "rse": "string",
- "scope": "string",
- "name": "string"
}
]
}
List dataset replicas using the Virtual Placement service. This is an RnD function and might change or go away at any time.
scope_name required | string data identifier (scope)/(name). |
deep | boolean Flag to ennable lookup at the file level. |
curl --request GET \ --url 'http://undefinedundefined/replicas/{scope_name}/datasets_vp?deep=SOME_BOOLEAN_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Retrieve a subscription matching the given subscription id.
subscription_id required | string The subscription id. |
curl --request GET \ --url http://undefinedundefined/subscriptions/id/{subscription_id} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "id": "string",
- "name": "string",
- "filter": "string",
- "replication_rules": "string",
- "policyid": 0,
- "state": "A",
- "last_processed": "2019-08-24T14:15:22Z",
- "account": "string",
- "lifetime": "2019-08-24T14:15:22Z",
- "comments": "string",
- "retroactive": true,
- "expired_at": "2019-08-24T14:15:22Z"
}
Return a summary of the states of all rules of a given subscription id.
account required | string The account name. |
name required | string The subscription name. |
curl --request GET \ --url http://undefinedundefined/subscriptions/{account}/{name}/rules/states \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "account": "string",
- "name": "string",
- "state": "R",
- "count": 0
}
]
Return all rules of a given subscription id.
account required | string The account name. |
name required | string The subscription name. |
state | string The subscription state to filter for. |
curl --request GET \ --url 'http://undefinedundefined/subscriptions/{account}/{name}/rules?state=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- null
]
Update an existing subscription.
account required | string The account name. |
name required | string The subscription name. |
required | object The values for the new subscription. |
{- "options": {
- "filter": "string",
- "replication_rules": "string",
- "comments": "string",
- "lifetime": "2019-08-24T14:15:22Z",
- "retroactive": true,
- "priority": 0
}
}
Create a new subscription
account required | string The account name. |
name required | string The subscription name. |
required | object The values for the new subscription. |
{- "options": {
- "filter": "string",
- "replication_rules": "string",
- "comments": "string",
- "lifetime": "2019-08-24T14:15:22Z",
- "retroactive": true,
- "priority": 0,
- "dry_run": false
}
}
"string"
Retrieve a subscription.
account required | string The account name. |
name required | string The subscription name. |
curl --request GET \ --url http://undefinedundefined/subscriptions/{account}/{name} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "name": "string",
- "filter": "string",
- "replication_rules": "string",
- "policyid": 0,
- "state": "A",
- "last_processed": "2019-08-24T14:15:22Z",
- "account": "string",
- "lifetime": "2019-08-24T14:15:22Z",
- "comments": "string",
- "retroactive": true,
- "expired_at": "2019-08-24T14:15:22Z"
}
]
Retrieve a subscription by name.
name required | string The subscription name. |
curl --request GET \ --url http://undefinedundefined/subscriptions/name/{name} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "name": "string",
- "filter": "string",
- "replication_rules": "string",
- "policyid": 0,
- "state": "A",
- "last_processed": "2019-08-24T14:15:22Z",
- "account": "string",
- "lifetime": "2019-08-24T14:15:22Z",
- "comments": "string",
- "retroactive": true,
- "expired_at": "2019-08-24T14:15:22Z"
}
]
Get a request for a given DID to a destination RSE.
scope_name required | string Data identifier (scope)/(name). |
rse required | string Destination rse. |
curl --request GET \ --url http://undefinedundefined/requests/{scope_name}/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "id": "string",
- "request_type": "T",
- "scope": "string",
- "name": "string",
- "did_type": "string",
- "dest_rse_id": "string",
- "source_rse_id": "string",
- "attributes": "string",
- "state": "Q",
- "external_id": "string",
- "external_host": "string",
- "retry_count": 0,
- "err_msg": "string",
- "previous_attempt_id": "string",
- "rule_id": "string",
- "activity": "string",
- "bytes": 0,
- "md5": "string",
- "adler32": "string",
- "dest_url": "string",
- "submitted_at": "string",
- "started_at": "string",
- "transferred_at": "string",
- "estimated_at": "string",
- "submitter_id": "string",
- "estimated_stated_at": "string",
- "estimated_transferred_at": "string",
- "staging_started_at": "string",
- "staging_finished_at": "string",
- "account": "string",
- "requested_at": "string",
- "priority": 0,
- "transfertool": "string",
- "source_rse": "string",
- "dest_rse": "string"
}
List a historical request for a given DID to a destination RSE.
scope_name required | string Data identifier (scope)/(name). |
rse required | string Destination rse. |
curl --request GET \ --url http://undefinedundefined/requests/history/{scope_name}/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "id": "string",
- "request_type": "T",
- "scope": "string",
- "name": "string",
- "did_type": "string",
- "dest_rse_id": "string",
- "source_rse_id": "string",
- "attributes": "string",
- "state": "Q",
- "external_id": "string",
- "external_host": "string",
- "retry_count": 0,
- "err_msg": "string",
- "previous_attempt_id": "string",
- "rule_id": "string",
- "activity": "string",
- "bytes": 0,
- "md5": "string",
- "adler32": "string",
- "dest_url": "string",
- "submitted_at": "string",
- "started_at": "string",
- "transferred_at": "string",
- "estimated_at": "string",
- "submitter_id": "string",
- "estimated_stated_at": "string",
- "estimated_transferred_at": "string",
- "staging_started_at": "string",
- "staging_finished_at": "string",
- "account": "string",
- "requested_at": "string",
- "priority": 0,
- "transfertool": "string",
- "source_rse": "string",
- "dest_rse": "string"
}
List requests for a given source and destination RSE or site.
Array of objects The source rse. | |
Array of objects The destination rse. | |
src_site | string The source site. |
dest_site | string The destination site. |
request_states | string The accepted request states. Delimited by comma. |
curl --request GET \ --url 'http://undefinedundefined/requests/list?src_rse=SOME_ARRAY_VALUE&dest_rse=SOME_ARRAY_VALUE&src_site=SOME_STRING_VALUE&dest_site=SOME_STRING_VALUE&request_states=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "request_type": "T",
- "scope": "string",
- "name": "string",
- "did_type": "string",
- "dest_rse_id": "string",
- "source_rse_id": "string",
- "attributes": "string",
- "state": "Q",
- "external_id": "string",
- "external_host": "string",
- "retry_count": 0,
- "err_msg": "string",
- "previous_attempt_id": "string",
- "rule_id": "string",
- "activity": "string",
- "bytes": 0,
- "md5": "string",
- "adler32": "string",
- "dest_url": "string",
- "submitted_at": "string",
- "started_at": "string",
- "transferred_at": "string",
- "estimated_at": "string",
- "submitter_id": "string",
- "estimated_stated_at": "string",
- "estimated_transferred_at": "string",
- "staging_started_at": "string",
- "staging_finished_at": "string",
- "account": "string",
- "requested_at": "string",
- "priority": 0,
- "transfertool": "string",
- "source_rse": "string",
- "dest_rse": "string"
}
]
List historical requests for a given source and destination RSE or site.
Array of objects The source rse. | |
Array of objects The destination rse. | |
src_site | string The source site. |
dest_site | string The destination site. |
request_states | string The accepted request states. Delimited by comma. |
offset | integer Default: 0 The offset of the list. |
limit | integer Default: 100 The maximum number of items to return. |
curl --request GET \ --url 'http://undefinedundefined/requests/history/list?src_rse=SOME_ARRAY_VALUE&dest_rse=SOME_ARRAY_VALUE&src_site=SOME_STRING_VALUE&dest_site=SOME_STRING_VALUE&request_states=SOME_STRING_VALUE&offset=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "request_type": "T",
- "scope": "string",
- "name": "string",
- "did_type": "string",
- "dest_rse_id": "string",
- "source_rse_id": "string",
- "attributes": "string",
- "state": "Q",
- "external_id": "string",
- "external_host": "string",
- "retry_count": 0,
- "err_msg": "string",
- "previous_attempt_id": "string",
- "rule_id": "string",
- "activity": "string",
- "bytes": 0,
- "md5": "string",
- "adler32": "string",
- "dest_url": "string",
- "submitted_at": "string",
- "started_at": "string",
- "transferred_at": "string",
- "estimated_at": "string",
- "submitter_id": "string",
- "estimated_stated_at": "string",
- "estimated_transferred_at": "string",
- "staging_started_at": "string",
- "staging_finished_at": "string",
- "account": "string",
- "requested_at": "string",
- "priority": 0,
- "transfertool": "string",
- "source_rse": "string",
- "dest_rse": "string"
}
]
Get statistics of requests grouped by source, destination, and activity.
dest_rse | string The destination RSE name |
source_rse | string The source RSE name |
activity | string The activity |
group_by_rse_attribute | string The parameter to group the RSEs by. |
curl --request GET \ --url 'http://undefinedundefined/requests/metrics?dest_rse=SOME_STRING_VALUE&source_rse=SOME_STRING_VALUE&activity=SOME_STRING_VALUE&group_by_rse_attribute=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "src_rse": "string",
- "dst_rse": "string",
- "distance": 0,
- "files": {
- "done-total-1h": 0,
- "done-total-6h": 0,
- "failed-total-1h": 0,
- "failed-total-6h": 0,
- "queued-total": 0,
- "queued": {
- "property1": 0,
- "property2": 0
}, - "done": {
- "property1": {
- "1h": 0,
- "6h": 0
}, - "property2": {
- "1h": 0,
- "6h": 0
}
}, - "failed": {
- "property1": {
- "1h": 0,
- "6h": 0
}, - "property2": {
- "1h": 0,
- "6h": 0
}
}
}, - "bytes": {
- "done-total-1h": 0,
- "done-total-6h": 0,
- "queued-total": 0,
- "queued": {
- "property1": 0,
- "property2": 0
}, - "done": {
- "property1": {
- "1h": 0,
- "6h": 0
}, - "property2": {
- "1h": 0,
- "6h": 0
}
}
}
}
]
Create a RSE attribute with given RSE name.
rse required | string The name of the Rucio Storage Element name. |
key required | string The name of the attribute of the RSE. |
value required | string The value of the RSE attribute. |
{- "value": "string"
}
"Created"
Delete an RSE attribute for given RSE name.
rse required | string The name of the Rucio Storage Element name. |
key required | string The name of the attribute of the RSE. |
curl --request DELETE \ --url http://undefinedundefined/rses/{rse}/attr/{key} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Update rse distance information.
source required | string The name of the source Rucio Storage Element. |
destination required | string The name of the destination Rucio Storage Element. |
distance | integer The distance between the RSEs. |
ranking | integer Deprecated Same as distance. |
{- "distance": 0,
- "ranking": 0
}
"Created"
Post a rse distance.
source required | string The name of the source Rucio Storage Element. |
destination required | string The name of the destination Rucio Storage Element. |
distance | integer The distance between RSEs. |
ranking | integer Deprecated Same as distance. |
{- "distance": 0,
- "ranking": 0
}
"Created"
Delete distance information between source RSE and destination RSE.
source required | string The name of the source Rucio Storage Element. |
destination required | string The name of the destination Rucio Storage Element. |
curl --request DELETE \ --url http://undefinedundefined/rses/{source}/distances/{destination} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Deleted"
Returns the distances between a source and destination rse.
source required | string The name of the source Rucio Storage Element. |
destination required | string The name of the destination Rucio Storage Element. |
curl --request GET \ --url http://undefinedundefined/rses/{source}/distances/{destination} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "src_rse_id": "string",
- "dest_rse_id": "string",
- "distance": 0,
- "ranking": 0
}
]
Updates attributes of an existing protocol entry. Because protocol identifier, hostname, and port are used as unique identifier they are immutable.
rse required | string The name of the Rucio Storage Element name. |
scheme required | string The protocol identifier. |
hostname required | string The hostname of the protocol. |
port required | integer The port of the protocol. |
curl --request PUT \ --url http://undefinedundefined/rses/{rse}/protocols/{scheme}/{hostname}/{port} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "deterministic": true,
- "volatile": true,
- "staging_area": "string",
- "rse_type": "DISK",
- "availability_read": true,
- "availability_write": true,
- "availability_delete": true,
- "credentials": "string",
- "domain": [ ],
- "id": "string",
- "lfn2pfn_algorithm": "string",
- "qos_class": "string",
- "rse": "string",
- "sign_url": "string",
- "verify_checksum": true,
- "protocols": [
- {
- "hostname": "string",
- "scheme": "string",
- "port": 0,
- "prefix": "string",
- "impl": "string",
- "domains": {
- "lan": {
- "read": 0,
- "write": 0,
- "delete": 0
}, - "wan": {
- "read": 0,
- "write": 0,
- "delete": 0,
- "third_party_copy_read": 0,
- "third_party_copy_write": 0
}
}, - "extended_attributes": "string"
}
]
}
Delete all protocol attributes.
rse required | string The name of the Rucio Storage Element name. |
scheme required | string The protocol identifier. |
hostname required | string The hostname of the protocol. |
port required | integer The port of the protocol. |
curl --request DELETE \ --url http://undefinedundefined/rses/{rse}/protocols/{scheme}/{hostname}/{port} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
List all supported protocols of the given RSE.
rse required | string The name of the Rucio Storage Element name. |
curl --request GET \ --url http://undefinedundefined/rses/{rse}/protocols \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "deterministic": true,
- "volatile": true,
- "staging_area": "string",
- "rse_type": "DISK",
- "availability_read": true,
- "availability_write": true,
- "availability_delete": true,
- "credentials": "string",
- "domain": [ ],
- "id": "string",
- "lfn2pfn_algorithm": "string",
- "qos_class": "string",
- "rse": "string",
- "sign_url": "string",
- "verify_checksum": true,
- "protocols": [
- {
- "hostname": "string",
- "scheme": "string",
- "port": 0,
- "prefix": "string",
- "impl": "string",
- "domains": {
- "lan": {
- "read": 0,
- "write": 0,
- "delete": 0
}, - "wan": {
- "read": 0,
- "write": 0,
- "delete": 0,
- "third_party_copy_read": 0,
- "third_party_copy_write": 0
}
}, - "extended_attributes": "string"
}
]
}
Return PFNs for a set of LFNs. Formatted as a JSON object where the key is a LFN and the value is the corresponding PFN.
rse required | string The name of the Rucio Storage Element name. |
lfn required | string The lfns of the request. |
scheme | string Optional argument to help with the protocol selection (e.g., http / gsiftp / srm) |
domain | string Optional argument used to select the protocol for wan or lan use cases. |
operation | string Optional query argument to select the protocol for read-vs-writes. |
curl --request GET \ --url 'http://undefinedundefined/rses/{rse}/lfns2pfns?lfn=SOME_STRING_VALUE&scheme=SOME_STRING_VALUE&domain=SOME_STRING_VALUE&operation=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "property1": "string",
- "property2": "string"
}
Returns the usage and limit of an account for a rse.
rse required | string The name of the Rucio Storage Element name. |
curl --request GET \ --url http://undefinedundefined/rses/{rse}/accounts/usage \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "rse_id": "string",
- "rse": "string",
- "account": "string",
- "used_files": 0,
- "used_bytes": 0,
- "quota_bytes": 0
}
]
Update the RSE Update information.
rse required | string The name of the Rucio Storage Element name. |
source | string The information source, e.g. srm. |
used | integer The number of used bytes. |
free | integer The number of free bytes. |
files | integer The number of files. |
{- "source": "string",
- "used": 0,
- "free": 0,
- "files": 0
}
Get rse usage information.
rse required | string The name of the Rucio Storage Element name. |
per_account | boolean Boolean whether the usage should be also calculated per account or not. |
source | string The information source, e.g., srm. |
curl --request GET \ --url 'http://undefinedundefined/rses/{rse}/usage?per_account=SOME_BOOLEAN_VALUE&source=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "rse_id": "string",
- "rse": "string",
- "source": "string",
- "used": 0,
- "free": 0,
- "total": 0,
- "files": 0,
- "updated_at": "string"
}
]
Get the rse usage history
rse required | string The name of the Rucio Storage Element name. |
curl --request GET \ --url http://undefinedundefined/rses/{rse}/usage/history \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "rse_id": "string",
- "rse": "string",
- "source": "string",
- "used": 0,
- "free": 0,
- "total": 0,
- "updated_at": "string"
}
]
Update an rse limit.
rse required | string The name of the Rucio Storage Element name. |
name | string The name of the limit. |
value | integer The value of the limit. |
{- "name": "string",
- "value": 0
}
Delete an rse limit
rse required | string The name of the Rucio Storage Element name. |
name required | string The name of the limit. |
{- "name": "string"
}
Get the rse limits.
rse required | string The name of the Rucio Storage Element name. |
curl --request GET \ --url http://undefinedundefined/rses/{rse}/limits \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "limit name1": 0,
- "limit name2": 0
}
Add a QoS Policy to a RSE.
rse required | string The name of the Rucio Storage Element name. |
policy required | string The QoS policy to add to and rse. |
curl --request POST \ --url http://undefinedundefined/rses/{rse}/qos_policy/{policy} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
Delete QoS policy from RSE.
rse required | string The name of the Rucio Storage Element name. |
policy required | string The QoS policy to add to and rse. |
curl --request DELETE \ --url http://undefinedundefined/rses/{rse}/qos_policy/{policy} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
Update RSE properties.
rse required | string The name of the Rucio Storage Element name. |
availability_read | boolean The vailability of the RSE. |
availability_write | boolean The vailability of the RSE. |
availability_delete | boolean The vailability of the RSE. |
deterministic | boolean If the pfn is generated deterministicly. |
volatile | boolean RSE cache. |
city | string The city of the RSE. |
staging_area | string Staging area. |
region_code | string The region code of the RSE. |
country_name | string The country name of the RSE. |
time_zone | string The time zone of the RSE. |
rse_type | string Enum: "DISK" "TAPE" The rse type. |
latitude | number The latitude of the RSE. |
longitude | number The longitude of the RSE. |
{- "availability_read": true,
- "availability_write": true,
- "availability_delete": true,
- "deterministic": true,
- "volatile": true,
- "city": "string",
- "staging_area": "string",
- "region_code": "string",
- "country_name": "string",
- "time_zone": "string",
- "rse_type": "DISK",
- "latitude": 0,
- "longitude": 0
}
"Created"
Creates a RSE with all the metadata.
rse required | string The name of the Rucio Storage Element name. |
deterministic | boolean If the pfn is generated deterministicly. |
volatile | boolean RSE cache. |
city | string The city of the RSE. |
staging_area | string Staging area. |
region_code | string The region code of the RSE. |
country_name | string The country name of the RSE. |
continent | string The continent of the RSE. |
time_zone | string The time zone of the RSE. |
ISP | string The internet service provider of the RSE. |
rse_type | string Enum: "DISK" "TAPE" The rse type. |
latitude | number The latitude of the RSE. |
longitude | number The longitude of the RSE. |
ASN | string The access service network of the RSE. |
availability | integer Deprecated The availability of the RSE. |
availability_read | boolean If the RSE is readable. |
availability_write | boolean If the RSE is writable. |
availability_delete | boolean If the RSE is deletable. |
{- "deterministic": true,
- "volatile": true,
- "city": "string",
- "staging_area": "string",
- "region_code": "string",
- "country_name": "string",
- "continent": "string",
- "time_zone": "string",
- "ISP": "string",
- "rse_type": "DISK",
- "latitude": 0,
- "longitude": 0,
- "ASN": "string",
- "availability": 0,
- "availability_read": true,
- "availability_write": true,
- "availability_delete": true
}
"Created"
Get details about a specific RSE.
rse required | string The name of the Rucio Storage Element name. |
curl --request GET \ --url http://undefinedundefined/rses/{rse} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "deterministic": true,
- "volatile": true,
- "city": "string",
- "staging_area": "string",
- "region_code": "string",
- "country_name": "string",
- "continent": "string",
- "time_zone": "string",
- "ISP": "string",
- "rse_type": "DISK",
- "latitude": 0,
- "longitude": 0,
- "ASN": "string",
- "availability": 0,
- "availability_read": 0,
- "availability_write": 0,
- "availability_delete": null
}
Lists all RSEs.
expression | string RSE expression to select RSEs. |
curl --request GET \ --url 'http://undefinedundefined/rses/?expression=SOME_STRING_VALUE' \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "id": "string",
- "rse": "string",
- "rse_type": "string",
- "deterministic": true,
- "volatile": true,
- "staging_area": true,
- "city": "string",
- "region_code": "string",
- "country_name": "string",
- "continent": "string",
- "time_zone": "string",
- "ISP": "string",
- "ASN": "string",
- "longitude": 0,
- "latitude": 0,
- "availability": 0,
- "availability_read": 0,
- "availability_write": 0,
- "availability_delete": 0,
- "usage": 0,
- "qos_class": "string"
}
]
rule_id required | string The id of the replication rule. |
Parameters for the new rule.
required | object The parameters to change. |
{- "options": {
- "lifetime": 0,
- "account": "string",
- "state": "string",
- "cancel_requests": true,
- "priority": 0,
- "child_rule_id": "string",
- "meta": { },
- "boost_rule": { },
- "locked": true,
- "comment": "string",
- "activity": "string",
- "source_replica_expression": "string",
- "eol_at": "string",
- "purge_replicas": true
}
}
rule_id required | string The id of the replication rule. |
curl --request GET \ --url http://undefinedundefined/rules/{rule_id} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"string"
Parameters for the new rule.
required | Array of objects The list of data identifiers. |
account required | string The account of the issuer. |
copies required | integer The number of replicas. |
rse_expression required | string The rse expression which gets resolved into a list of RSEs. |
grouping | string The grouping of the files to take into account. (ALL, DATASET, NONE) |
weight | number Weighting scheme to be used. |
lifetime | integer The lifetime of the replication rule in seconds. |
locked | boolean If the rule is locked. |
subscription_id | string The subscription_id, if the rule is created by a subscription. |
sourse_replica_expression | string Only use replicas as source from these RSEs. |
activity | string Activity to be passed to the conveyor. |
notify | string Notification setting of the rule ('Y', 'N', 'C'; None = 'N'). |
purge_replicas | boolean Purge setting if a replica should be directly deleted after the rule is deleted. |
ignore_availability | boolean Option to ignore the availability of RSEs. |
comments | string Comment about the rule. |
ask_approval | boolean Ask for approval for this rule. |
asynchronous | boolean Create replication rule asynchronously by the judge-injector. |
priority | integer Priority of the rule and the transfers which should be submitted. |
split_container | boolean Should a container rule be split into individual dataset rules. |
meta | string Dictionary with metadata from the WFMS. |
{- "dids": [
- {
- "scope": "string",
- "name": "string"
}
], - "account": "string",
- "copies": 0,
- "rse_expression": "string",
- "grouping": "string",
- "weight": 0,
- "lifetime": 0,
- "locked": true,
- "subscription_id": "string",
- "sourse_replica_expression": "string",
- "activity": "string",
- "notify": "string",
- "purge_replicas": true,
- "ignore_availability": true,
- "comments": "string",
- "ask_approval": true,
- "asynchronous": true,
- "priority": 0,
- "split_container": true,
- "meta": "string"
}
[- "string"
]
rule_id required | string The id of the replication rule. |
curl --request GET \ --url http://undefinedundefined/rules/{rule_id}/locks \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "scope": "string",
- "name": "string",
- "rse_id": "string",
- "rse": { },
- "state": "string",
- "rule_id": "string"
}
]
rule_id required | string The id of the replication rule. |
copies required | integer Number of copies to keep. |
{- "copies": 0
}
[- "string"
]
rule_id required | string The id of the replication rule. |
rse_expression required | string The new rse expression. |
rule_id | string The rule_id of the rule to moves. If specified, overrides the |
activity | string The |
source_replica_expression | string The |
{- "rse_expression": "string",
- "rule_id": "string",
- "activity": "string",
- "source_replica_expression": "string"
}
[- "string"
]
rule_id required | string The id of the replication rule. |
curl --request GET \ --url http://undefinedundefined/rules/{rule_id}/history \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "updated_at": "string",
- "state": "string",
- "locks_ok_cnt": 0,
- "locks_stuck_cnt": 0,
- "locks_replicating_cnt": 0
}
]
scope_name required | string The data identifier of scope-name to retrieve the history from. ((scope)/(name)) |
curl --request GET \ --url http://undefinedundefined/rules/{scope_name}/history \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- {
- "rule_id": "string",
- "updated_at": "string",
- "created_at": "string",
- "rse_expression": "string",
- "state": "string",
- "account": "string",
- "locks_ok_cnt": 0,
- "locks_stuck_cnt": 0,
- "locks_replicating_cnt": 0
}
]
rule_id required | string The id of the replication rule. |
curl --request GET \ --url http://undefinedundefined/rules/{rule_id}/analysis \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
{- "rule_error": "string",
- "transfers": [
- {
- "scope": "string",
- "name": "string",
- "rse_id": "string",
- "rse": { },
- "attempts": 0,
- "last_error": "string",
- "last_source": "string",
- "sources": [ ],
- "last_time": "string"
}
]
}
Adds a new scope.
account required | string The account associated with the scope. |
scope required | string The name of the scope. |
curl --request POST \ --url http://undefinedundefined/scopes/{account}/{scope} \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
"Created"
List all scopes for an account.
account required | string The account associated with the scope. |
curl --request GET \ --url http://undefinedundefined/scopes/{account}/scopes \ --header 'X-Rucio-Auth-Token: REPLACE_KEY_VALUE'
[- "string"
]