openapi: 3.0.0 info: version: 1.0.19-oas3 title: AlayaCare Accounting Accounts File API description: '**AlayaCare IDs:** The following terms are used to reference IDs that identify resources in AlayaCare: - id - visit_id - premium_id - visit_premium_id - employee_id - cost_centre_id - client_id **External IDs** The following terms are used to reference IDs that identify resources systems external to AlayaCare: - employee_external_id - client_external_id External IDs are required to be unique. No other assumptions are made regarding their format they are treated as strings. ' servers: - url: https://example.alayacare.com/ext/api/v2/accounting security: - basic_auth: [] tags: - name: File paths: /client/{id}/{path}: parameters: - name: id in: path required: true type: integer - name: path in: path required: true type: string get: tags: - File summary: Get the content of a file (download a file) responses: 200: description: Content of the file 400: description: File not found schema: type: object properties: code: type: integer description: http status response code example: 404 message: type: string description: Detail on the error example: File "file.pdf" to delete not found post: tags: - File summary: Upload a file description: 'Upload a file at the `path` location and create the underlying folder structure if it doesn''t exist already. `path` **cannot** end with `/` in order to create a file based on the request body. **Note:** This consumes `multipart form-data` as defined in the parameters below. **Note on content attributes:** When specifying the key that references the file, the key must be set as `file` in the request in order for the API to find the file. ' parameters: - name: file in: formData type: file description: The file to upload consumes: - multipart/form-data produces: - application/json responses: 201: description: File uploaded schema: type: object properties: code: type: integer description: http status response code example: 201 name: type: string description: Url to the file uploaded example: client/1002/file.pdf 400: description: 'Bad Request: File missing ' schema: type: object properties: code: type: integer description: http status response code example: 400 message: type: string description: Detail on the error example: Could not find a file to upload put: tags: - File summary: Copy or move a file description: 'Copy or move a directory and create the underlying folder structure of the new location if it doesn''t already exist. Whether the directory is moved or simply copied is defined by a `move` header that can be set to `true` (if the header is not provided, its value defaults to `false` and the `source` directory will remain). The url of the `PUT` request is the path to the destination location. i.e., if we have the following directories: - `dir1/child1/` - `dir2/child2/` and we want to copy `child1/` inside `dir2/` (the goal is to have `dir2/child1/`), the `path` in the url of the `PUT` request has to be: `dir2/child1/`. The `source` header of the request has to be `dir1/child1/`. A 400 response will be returned for a request to move a folder in one of its own subfolders. ' produces: - application/json responses: 200: description: File copied or moved schema: type: object properties: code: type: integer description: http status response example: 200 name: type: integer description: 'Url to the new location of the copied or moved file ' example: client/1002/new_location.txt 400: description: 'Bad Request: Missing `source` header ' schema: type: object properties: message: type: object properties: source: type: string description: Detail on the error example: The request cannot be processed without the source variable 404: description: Source file not found schema: $ref: '#/definitions/FileNotFoundSchema' delete: tags: - File summary: Delete a file description: Delete a file. As opposed to deleting a directory, the forced-delete header is not required to delete a single file. produces: - application/json responses: 204: description: File deleted 404: description: File not found schema: $ref: '#/definitions/FileNotFoundSchema' components: securitySchemes: basic_auth: type: http description: Basic HTTP auth over https scheme: basic definitions: FileNotFoundSchema: type: object properties: code: type: integer description: http status response code example: 404 message: type: string description: Detail on the error example: File "file.pdf" not found