# Files

## Lists files on root.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/files":{"get":{"summary":"Lists files on root.","operationId":"index_files","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```

## Displays a specific file.

> \*\*API Key Scope\*\*: files / show

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_show":{"description":"A specific file.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_with_path"}}}},"not_found":{"description":"The requested resource was not found. The detailed error will be of type `not_found`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model_error"}}}}},"schemas":{"nodeum_file_with_path":{"allOf":[{"$ref":"#/components/schemas/nodeum_file"},{"type":"object","properties":{"file_path":{"type":"string","readOnly":true}}}]},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}},"model_error":{"type":"object","properties":{"details":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/attribute_error"}},"description":"Parsable objects describing the errors. The key is the invalid attribute name."},"messages":{"type":"array","description":"English description of the errors.","items":{"type":"string"}}}},"attribute_error":{"required":["error"],"type":"object","properties":{"error":{"type":"string"}},"discriminator":{"propertyName":"error"}}}},"paths":{"/files/{file_id}":{"get":{"summary":"Displays a specific file.","operationId":"show_file","description":"**API Key Scope**: files / show","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_show"},"404":{"$ref":"#/components/responses/not_found"}}}}}}
```

## Lists files under a specific folder.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/files/{file_parent_id}/children":{"get":{"summary":"Lists files under a specific folder.","operationId":"files_children","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```

## (By pool) Lists files on root.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/pools/{pool_id}/files":{"get":{"summary":"(By pool) Lists files on root.","operationId":"index_files_by_pool","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```

## (By pool) Displays a specific file.

> \*\*API Key Scope\*\*: files / show

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_show":{"description":"A specific file.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_with_path"}}}},"not_found":{"description":"The requested resource was not found. The detailed error will be of type `not_found`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model_error"}}}}},"schemas":{"nodeum_file_with_path":{"allOf":[{"$ref":"#/components/schemas/nodeum_file"},{"type":"object","properties":{"file_path":{"type":"string","readOnly":true}}}]},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}},"model_error":{"type":"object","properties":{"details":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/attribute_error"}},"description":"Parsable objects describing the errors. The key is the invalid attribute name."},"messages":{"type":"array","description":"English description of the errors.","items":{"type":"string"}}}},"attribute_error":{"required":["error"],"type":"object","properties":{"error":{"type":"string"}},"discriminator":{"propertyName":"error"}}}},"paths":{"/pools/{pool_id}/files/{file_id}":{"get":{"summary":"(By pool) Displays a specific file.","operationId":"show_file_by_pool","description":"**API Key Scope**: files / show","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_show"},"404":{"$ref":"#/components/responses/not_found"}}}}}}
```

## (By pool) Displays cloud buckets containing specific file, related to the specific pool.

> \*\*API Key Scope\*\*: files / cloud\_buckets

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"cloud_buckets_index":{"description":"List of cloud buckets.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/cloud_bucket_collection"}}}}},"schemas":{"cloud_bucket_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"cloud_buckets":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/cloud_bucket"}}}},"cloud_bucket":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"cloud_connector_id":{"type":"integer","readOnly":true,"format":"int64"},"pool_id":{"type":"integer","readOnly":true},"name":{"type":"string","readOnly":true},"file_count":{"type":"integer","readOnly":true,"format":"int64"},"file_size_sum":{"type":"integer","readOnly":true,"format":"int64"},"location":{"type":"string","readOnly":true},"price":{"type":"string"},"options":{"type":"string","description":"S3FS mounting options, separated by comma"}}}}},"paths":{"/pools/{pool_id}/files/{file_id}/cloud_buckets":{"get":{"summary":"(By pool) Displays cloud buckets containing specific file, related to the specific pool.","operationId":"index_cloud_buckets_by_file_by_pool","description":"**API Key Scope**: files / cloud_buckets","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/cloud_buckets_index"}}}}}}
```

## (By pool) Displays NAS Shares containing specific file, related to the specific pool.

> \*\*API Key Scope\*\*: files / nas\_shares

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"nas_shares_index":{"description":"List of NAS shares.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nas_share_collection"}}}}},"schemas":{"nas_share_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"nas_shares":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nas_share"}}}},"nas_share":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"nas_id":{"type":"integer","readOnly":true,"format":"int64"},"pool_id":{"type":"integer","readOnly":true},"name":{"type":"string"},"path":{"type":"string"},"options":{"type":"string"},"username":{"type":"string"},"password":{"type":"string"},"file_count":{"type":"integer","readOnly":true,"format":"int64"},"file_size_sum":{"type":"integer","readOnly":true,"format":"int64"}}}}},"paths":{"/pools/{pool_id}/files/{file_id}/nas_shares":{"get":{"summary":"(By pool) Displays NAS Shares containing specific file, related to the specific pool.","operationId":"index_nas_shares_by_file_by_pool","description":"**API Key Scope**: files / nas_shares","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/nas_shares_index"}}}}}}
```

## (By pool) Calculate total size of files contains in a folder.

> \*\*API Key Scope\*\*: files / file\_size

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"file_size":{"description":"Sum of the file sizes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/file_size"}}}}},"schemas":{"file_size":{"type":"object","properties":{"file_size":{"type":"integer","readOnly":true}}}}},"paths":{"/pools/{pool_id}/files/{file_id}/file_size":{"get":{"summary":"(By pool) Calculate total size of files contains in a folder.","operationId":"file_size_by_folder_by_pool","description":"**API Key Scope**: files / file_size","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/file_size"}}}}}}
```

## (By pool) Lists files under a specific folder.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/pools/{pool_id}/files/{file_parent_id}/children":{"get":{"summary":"(By pool) Lists files under a specific folder.","operationId":"files_children_by_pool","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```

## (By pool) Lists files on root of pools, specific for Data Exchange.

> \*\*API Key Scope\*\*: import\_files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"import_files_index":{"description":"List of imported files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/import_file_collection"}}}}},"schemas":{"import_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"import_files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/import_file"}}}},"import_file":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"name":{"type":"string","readOnly":true},"parent":{"type":"integer","readOnly":true,"format":"int64"},"primary_id":{"type":"integer","readOnly":true,"format":"int64"},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}}}},"paths":{"/pools/{pool_id}/import_files":{"get":{"summary":"(By pool) Lists files on root of pools, specific for Data Exchange.","operationId":"index_import_files_by_pool","description":"**API Key Scope**: import_files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/import_files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"}]}}}}
```

## (By pool) Displays a specific file on pools, specific for Data Exchange.

> \*\*API Key Scope\*\*: import\_files / show

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"import_files_show":{"description":"A specific imported file.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/import_file_with_path"}}}},"not_found":{"description":"The requested resource was not found. The detailed error will be of type `not_found`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model_error"}}}}},"schemas":{"import_file_with_path":{"allOf":[{"$ref":"#/components/schemas/import_file"},{"type":"object","properties":{"file_path":{"type":"string","readOnly":true}}}]},"import_file":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"name":{"type":"string","readOnly":true},"parent":{"type":"integer","readOnly":true,"format":"int64"},"primary_id":{"type":"integer","readOnly":true,"format":"int64"},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"}}},"model_error":{"type":"object","properties":{"details":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/attribute_error"}},"description":"Parsable objects describing the errors. The key is the invalid attribute name."},"messages":{"type":"array","description":"English description of the errors.","items":{"type":"string"}}}},"attribute_error":{"required":["error"],"type":"object","properties":{"error":{"type":"string"}},"discriminator":{"propertyName":"error"}}}},"paths":{"/pools/{pool_id}/import_files/{file_id}":{"get":{"summary":"(By pool) Displays a specific file on pools, specific for Data Exchange.","operationId":"show_import_file_by_pool","description":"**API Key Scope**: import_files / show","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/import_files_show"},"404":{"$ref":"#/components/responses/not_found"}}}}}}
```

## (By pool) Lists files under a specific folder on pools, specific for Data Exchange.

> \*\*API Key Scope\*\*: import\_files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"import_files_index":{"description":"List of imported files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/import_file_collection"}}}}},"schemas":{"import_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"import_files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/import_file"}}}},"import_file":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"name":{"type":"string","readOnly":true},"parent":{"type":"integer","readOnly":true,"format":"int64"},"primary_id":{"type":"integer","readOnly":true,"format":"int64"},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}}}},"paths":{"/pools/{pool_id}/import_files/{file_parent_id}/children":{"get":{"summary":"(By pool) Lists files under a specific folder on pools, specific for Data Exchange.","operationId":"import_files_children_by_pool","description":"**API Key Scope**: import_files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/import_files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"}]}}}}
```

## (By task) Lists files on root.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/tasks/{task_id}/files":{"get":{"summary":"(By task) Lists files on root.","operationId":"index_files_by_task","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```

## (By task) Displays a specific file.

> \*\*API Key Scope\*\*: files / show

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_show":{"description":"A specific file.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_with_path"}}}},"not_found":{"description":"The requested resource was not found. The detailed error will be of type `not_found`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model_error"}}}}},"schemas":{"nodeum_file_with_path":{"allOf":[{"$ref":"#/components/schemas/nodeum_file"},{"type":"object","properties":{"file_path":{"type":"string","readOnly":true}}}]},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}},"model_error":{"type":"object","properties":{"details":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/attribute_error"}},"description":"Parsable objects describing the errors. The key is the invalid attribute name."},"messages":{"type":"array","description":"English description of the errors.","items":{"type":"string"}}}},"attribute_error":{"required":["error"],"type":"object","properties":{"error":{"type":"string"}},"discriminator":{"propertyName":"error"}}}},"paths":{"/tasks/{task_id}/files/{file_id}":{"get":{"summary":"(By task) Displays a specific file.","operationId":"show_file_by_task","description":"**API Key Scope**: files / show","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_show"},"404":{"$ref":"#/components/responses/not_found"}}}}}}
```

## (By task) Displays cloud buckets containing specific file, related to the specific task.

> \*\*API Key Scope\*\*: files / cloud\_buckets

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"cloud_buckets_index":{"description":"List of cloud buckets.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/cloud_bucket_collection"}}}}},"schemas":{"cloud_bucket_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"cloud_buckets":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/cloud_bucket"}}}},"cloud_bucket":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"cloud_connector_id":{"type":"integer","readOnly":true,"format":"int64"},"pool_id":{"type":"integer","readOnly":true},"name":{"type":"string","readOnly":true},"file_count":{"type":"integer","readOnly":true,"format":"int64"},"file_size_sum":{"type":"integer","readOnly":true,"format":"int64"},"location":{"type":"string","readOnly":true},"price":{"type":"string"},"options":{"type":"string","description":"S3FS mounting options, separated by comma"}}}}},"paths":{"/tasks/{task_id}/files/{file_id}/cloud_buckets":{"get":{"summary":"(By task) Displays cloud buckets containing specific file, related to the specific task.","operationId":"index_cloud_buckets_by_file_by_task","description":"**API Key Scope**: files / cloud_buckets","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/cloud_buckets_index"}}}}}}
```

## (By task) Displays NAS Shares containing specific file, related to the specific task.

> \*\*API Key Scope\*\*: files / nas\_shares

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"nas_shares_index":{"description":"List of NAS shares.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nas_share_collection"}}}}},"schemas":{"nas_share_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"nas_shares":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nas_share"}}}},"nas_share":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"nas_id":{"type":"integer","readOnly":true,"format":"int64"},"pool_id":{"type":"integer","readOnly":true},"name":{"type":"string"},"path":{"type":"string"},"options":{"type":"string"},"username":{"type":"string"},"password":{"type":"string"},"file_count":{"type":"integer","readOnly":true,"format":"int64"},"file_size_sum":{"type":"integer","readOnly":true,"format":"int64"}}}}},"paths":{"/tasks/{task_id}/files/{file_id}/nas_shares":{"get":{"summary":"(By task) Displays NAS Shares containing specific file, related to the specific task.","operationId":"index_nas_shares_by_file_by_task","description":"**API Key Scope**: files / nas_shares","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/nas_shares_index"}}}}}}
```

## (By task) Calculate total size of files contains in a folder.

> \*\*API Key Scope\*\*: files / file\_size

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"file_size":{"description":"Sum of the file sizes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/file_size"}}}}},"schemas":{"file_size":{"type":"object","properties":{"file_size":{"type":"integer","readOnly":true}}}}},"paths":{"/tasks/{task_id}/files/{file_id}/file_size":{"get":{"summary":"(By task) Calculate total size of files contains in a folder.","operationId":"file_size_by_folder_by_task","description":"**API Key Scope**: files / file_size","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/file_size"}}}}}}
```

## (By task) Lists files under a specific folder.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/tasks/{task_id}/files/{file_parent_id}/children":{"get":{"summary":"(By task) Lists files under a specific folder.","operationId":"files_children_by_task","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```

## (By task execution) Lists files on root.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/task_executions/{task_execution_id}/files":{"get":{"summary":"(By task execution) Lists files on root.","operationId":"index_files_by_task_execution","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```

## (By task execution) Displays a specific file.

> \*\*API Key Scope\*\*: files / show

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_show":{"description":"A specific file.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_with_path"}}}},"not_found":{"description":"The requested resource was not found. The detailed error will be of type `not_found`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model_error"}}}}},"schemas":{"nodeum_file_with_path":{"allOf":[{"$ref":"#/components/schemas/nodeum_file"},{"type":"object","properties":{"file_path":{"type":"string","readOnly":true}}}]},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}},"model_error":{"type":"object","properties":{"details":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/attribute_error"}},"description":"Parsable objects describing the errors. The key is the invalid attribute name."},"messages":{"type":"array","description":"English description of the errors.","items":{"type":"string"}}}},"attribute_error":{"required":["error"],"type":"object","properties":{"error":{"type":"string"}},"discriminator":{"propertyName":"error"}}}},"paths":{"/task_executions/{task_execution_id}/files/{file_id}":{"get":{"summary":"(By task execution) Displays a specific file.","operationId":"show_file_by_task_execution","description":"**API Key Scope**: files / show","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_show"},"404":{"$ref":"#/components/responses/not_found"}}}}}}
```

## (By task execution) Displays cloud buckets containing specific file, related to the specific task.

> \*\*API Key Scope\*\*: files / cloud\_buckets

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"cloud_buckets_index":{"description":"List of cloud buckets.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/cloud_bucket_collection"}}}}},"schemas":{"cloud_bucket_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"cloud_buckets":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/cloud_bucket"}}}},"cloud_bucket":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"cloud_connector_id":{"type":"integer","readOnly":true,"format":"int64"},"pool_id":{"type":"integer","readOnly":true},"name":{"type":"string","readOnly":true},"file_count":{"type":"integer","readOnly":true,"format":"int64"},"file_size_sum":{"type":"integer","readOnly":true,"format":"int64"},"location":{"type":"string","readOnly":true},"price":{"type":"string"},"options":{"type":"string","description":"S3FS mounting options, separated by comma"}}}}},"paths":{"/task_executions/{task_execution_id}/files/{file_id}/cloud_buckets":{"get":{"summary":"(By task execution) Displays cloud buckets containing specific file, related to the specific task.","operationId":"index_cloud_buckets_by_file_by_task_execution","description":"**API Key Scope**: files / cloud_buckets","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/cloud_buckets_index"}}}}}}
```

## (By task execution) Displays NAS Shares containing specific file, related to the specific task.

> \*\*API Key Scope\*\*: files / nas\_shares

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"nas_shares_index":{"description":"List of NAS shares.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nas_share_collection"}}}}},"schemas":{"nas_share_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"nas_shares":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nas_share"}}}},"nas_share":{"type":"object","properties":{"id":{"type":"integer","readOnly":true,"format":"int64"},"nas_id":{"type":"integer","readOnly":true,"format":"int64"},"pool_id":{"type":"integer","readOnly":true},"name":{"type":"string"},"path":{"type":"string"},"options":{"type":"string"},"username":{"type":"string"},"password":{"type":"string"},"file_count":{"type":"integer","readOnly":true,"format":"int64"},"file_size_sum":{"type":"integer","readOnly":true,"format":"int64"}}}}},"paths":{"/task_executions/{task_execution_id}/files/{file_id}/nas_shares":{"get":{"summary":"(By task execution) Displays NAS Shares containing specific file, related to the specific task.","operationId":"index_nas_shares_by_file_by_task_execution","description":"**API Key Scope**: files / nas_shares","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/nas_shares_index"}}}}}}
```

## (By task execution) Calculate total size of files contains in a folder.

> \*\*API Key Scope\*\*: files / file\_size

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"file_size":{"description":"Sum of the file sizes.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/file_size"}}}}},"schemas":{"file_size":{"type":"object","properties":{"file_size":{"type":"integer","readOnly":true}}}}},"paths":{"/task_executions/{task_execution_id}/files/{file_id}/file_size":{"get":{"summary":"(By task execution) Calculate total size of files contains in a folder.","operationId":"file_size_by_folder_by_task_execution","description":"**API Key Scope**: files / file_size","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/file_size"}}}}}}
```

## (By task execution) Lists files under a specific folder.

> \*\*API Key Scope\*\*: files / index

```json
{"openapi":"3.0.1","info":{"title":"Nodeum API","version":"2.1.0"},"servers":[{"url":"{url}/api/v2","variables":{"url":{"default":"http://localhost","description":"URL of server"}}}],"security":[{"BasicAuth":[]},{"BearerAuth":[]},{"JWT":[]}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic","description":"Pass the username and password of a user in the authorization header.\nThis currently gives full access."},"BearerAuth":{"type":"apiKey","description":"Create an API Key associated to user.\nAccess can be restricted with the scope.\nEach API call described below has a scoped mentionned in its description.\n\nFor example :\n\n**API Key Scope**: files / index\n\nThis means that the API key should have a scope with controller as *files*\nand the action as *index*.","name":"Authorization","in":"header"},"JWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"responses":{"files_index":{"description":"List of files.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/nodeum_file_collection"}}}}},"schemas":{"nodeum_file_collection":{"type":"object","properties":{"count":{"type":"integer","readOnly":true},"files":{"type":"array","readOnly":true,"items":{"$ref":"#/components/schemas/nodeum_file"}}}},"nodeum_file":{"type":"object","properties":{"id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"name":{"type":"string","readOnly":true},"parent":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"primary_id":{"oneOf":[{"type":"string"},{"type":"integer","format":"int64"}],"readOnly":true},"type":{"type":"string","readOnly":true,"enum":["file","folder"]},"permission":{"type":"integer","readOnly":true},"size":{"type":"integer","readOnly":true,"format":"int64"},"change_date":{"type":"string","readOnly":true,"format":"date-time"},"modification_date":{"type":"string","readOnly":true,"format":"date-time"},"access_date":{"type":"string","readOnly":true,"format":"date-time"},"uid":{"type":"integer","readOnly":true,"format":"int64"},"gid":{"type":"integer","readOnly":true,"format":"int64"},"in_cache":{"type":"string","readOnly":true,"enum":["out_of_cache","in_cache","deleted"]},"offline":{"type":"string","readOnly":true,"enum":["online","offline_out_of_lib","offline"]},"extern":{"type":"integer","readOnly":true},"checksums":{"type":"array","description":"Checksums on the specific location. Does not apply to all API calls","readOnly":true,"items":{"type":"string"}},"cloud_buckets":{"type":"array","description":"Cloud bucket names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}},"nas_shares":{"type":"array","description":"NAS Share names on the specific location. Does not apply on folders. Only available on related API calls","readOnly":true,"items":{"type":"string"}}}}},"parameters":{"limit":{"name":"limit","in":"query","description":"The number of items to display for pagination.","schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"The number of items to skip for pagination.","schema":{"type":"integer"}},"filter_file_id":{"name":"file_id","in":"query","description":"Filter on file id","schema":{"type":"string"}},"filter_name":{"name":"name","in":"query","description":"Filter on name","schema":{"type":"string"}},"filter_type":{"name":"type","in":"query","description":"Filter on type","schema":{"type":"string"}},"filter_permission":{"name":"permission","in":"query","description":"Filter on permission","schema":{"type":"string"}},"filter_size":{"name":"size","in":"query","description":"Filter on size","schema":{"type":"string"}},"filter_change_date":{"name":"change_date","in":"query","description":"Filter on change date","schema":{"type":"string"}},"filter_modification_date":{"name":"modification_date","in":"query","description":"Filter on modification date","schema":{"type":"string"}},"filter_access_date":{"name":"access_date","in":"query","description":"Filter on access date","schema":{"type":"string"}},"filter_gid":{"name":"gid","in":"query","description":"Filter on gid","schema":{"type":"string"}},"filter_uid":{"name":"uid","in":"query","description":"Filter on uid","schema":{"type":"string"}},"filter_offline":{"name":"offline","in":"query","description":"Filter on file offline status","schema":{"type":"string"}},"filter_in_cache":{"name":"in_cache","in":"query","description":"Filter on file in cache status","schema":{"type":"string"}}}},"paths":{"/task_executions/{task_execution_id}/files/{file_parent_id}/children":{"get":{"summary":"(By task execution) Lists files under a specific folder.","operationId":"files_children_by_task_execution","description":"**API Key Scope**: files / index","tags":["files"],"responses":{"200":{"$ref":"#/components/responses/files_index"}},"parameters":[{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/filter_file_id"},{"$ref":"#/components/parameters/filter_name"},{"$ref":"#/components/parameters/filter_type"},{"$ref":"#/components/parameters/filter_permission"},{"$ref":"#/components/parameters/filter_size"},{"$ref":"#/components/parameters/filter_change_date"},{"$ref":"#/components/parameters/filter_modification_date"},{"$ref":"#/components/parameters/filter_access_date"},{"$ref":"#/components/parameters/filter_gid"},{"$ref":"#/components/parameters/filter_uid"},{"$ref":"#/components/parameters/filter_offline"},{"$ref":"#/components/parameters/filter_in_cache"}]}}}}
```
