openapi: 3.2.0 info: title: Teamleader Files API version: '2026-09-22' description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-09-22: 58 operation(s) read from 60 public documentation page(s) (each operation names its page in x-source). This is not the provider''s published contract; Teamleader has published no machine-readable contract that the pipeline could find. Engine: anthropic.' x-generated-from: documentation x-provenance: generated x-authored-by: API Evangelist x-generated: '2026-09-22' x-generator: generate-contract-from-docs.py x-engine: anthropic x-sources: - https://developer.focus.teamleader.eu/docs/authentication - https://developer.focus.teamleader.eu/docs/general-principles - https://developer.focus.teamleader.eu/docs/api/deals-list - https://developer.focus.teamleader.eu/docs/api/deals-info - https://developer.focus.teamleader.eu/docs/api/deals-create - https://developer.focus.teamleader.eu/docs/api/deals-update - https://developer.focus.teamleader.eu/docs/api/deals-move - https://developer.focus.teamleader.eu/docs/api/deals-win - https://developer.focus.teamleader.eu/docs/api/deals-lose - https://developer.focus.teamleader.eu/docs/api/deals-delete - https://developer.focus.teamleader.eu/docs/api/lost-reasons-list - https://developer.focus.teamleader.eu/docs/api/level-two-areas-list - https://developer.focus.teamleader.eu/docs/api/files-list - https://developer.focus.teamleader.eu/docs/api/files-info - https://developer.focus.teamleader.eu/docs/api/files-download - https://developer.focus.teamleader.eu/docs/api/files-upload - https://developer.focus.teamleader.eu/docs/api/files-delete - https://developer.focus.teamleader.eu/docs/api/ticket-status-list - https://developer.focus.teamleader.eu/docs/api/tasks-list - https://developer.focus.teamleader.eu/docs/api/tasks-info - https://developer.focus.teamleader.eu/docs/api/tasks-create - https://developer.focus.teamleader.eu/docs/api/tasks-update - https://developer.focus.teamleader.eu/docs/api/tasks-complete - https://developer.focus.teamleader.eu/docs/api/tasks-reopen - https://developer.focus.teamleader.eu/docs/api/tasks-delete - https://developer.focus.teamleader.eu/docs/api/tasks-schedule - https://developer.focus.teamleader.eu/docs/api/user-availability-daily - https://developer.focus.teamleader.eu/docs/api/tickets-list - https://developer.focus.teamleader.eu/docs/api/tickets-info - https://developer.focus.teamleader.eu/docs/api/tickets-create - https://developer.focus.teamleader.eu/docs/api/tickets-update - https://developer.focus.teamleader.eu/docs/api/tickets-list-messages - https://developer.focus.teamleader.eu/docs/api/tickets-get-message - https://developer.focus.teamleader.eu/docs/api/tickets-import-message - https://developer.focus.teamleader.eu/docs/api/tickets-add-reply - https://developer.focus.teamleader.eu/docs/api/tickets-add-internal-message - https://developer.focus.teamleader.eu/docs/api/timers-update - https://developer.focus.teamleader.eu/docs/api/contacts-list - https://developer.focus.teamleader.eu/docs/api/contacts-info - https://developer.focus.teamleader.eu/docs/api/contacts-add - https://developer.focus.teamleader.eu/docs/api/contacts-update - https://developer.focus.teamleader.eu/docs/api/contacts-delete - https://developer.focus.teamleader.eu/docs/api/contacts-tag - https://developer.focus.teamleader.eu/docs/api/contacts-untag - https://developer.focus.teamleader.eu/docs/api/contacts-link-to-company - https://developer.focus.teamleader.eu/docs/api/contacts-unlink-from-company - https://developer.focus.teamleader.eu/docs/api/contacts-update-company-link - https://developer.focus.teamleader.eu/docs/api/contacts-upload-avatar - https://developer.focus.teamleader.eu/docs/api/days-off-bulk-delete - https://developer.focus.teamleader.eu/docs/api/expenses-list - https://developer.focus.teamleader.eu/docs/api/payment-methods-list - https://developer.focus.teamleader.eu/docs/api/invoices-list - https://developer.focus.teamleader.eu/docs/api/invoices-info - https://developer.focus.teamleader.eu/docs/api/invoices-download - https://developer.focus.teamleader.eu/docs/api/invoices-draft - https://developer.focus.teamleader.eu/docs/api/invoices-update - https://developer.focus.teamleader.eu/docs/api/invoices-update-booked - https://developer.focus.teamleader.eu/docs/api/invoices-copy - https://developer.focus.teamleader.eu/docs/api/invoices-book - https://developer.focus.teamleader.eu/docs/api/invoices-delete servers: - url: https://api.focus.teamleader.eu security: - bearer: [] tags: - name: Files paths: /files.delete: post: operationId: post_files_delete tags: - Files summary: Delete a file x-source: https://developer.focus.teamleader.eu/docs/api/files-delete requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostFilesDeleteRequest' responses: '204': description: Success (status as documented) /files.download: post: operationId: post_files_download tags: - Files summary: Request the download link for a file x-source: https://developer.focus.teamleader.eu/docs/api/files-download requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostFilesDownloadRequest' responses: '200': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostFilesDownloadResponse' /files.info: post: operationId: post_files_info tags: - Files summary: Get details for a single file x-source: https://developer.focus.teamleader.eu/docs/api/files-info requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostFilesInfoRequest' responses: '200': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostFilesInfoResponse' /files.list: post: operationId: post_files_list tags: - Files summary: Get a list of files x-source: https://developer.focus.teamleader.eu/docs/api/files-list requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostFilesListRequest' responses: '200': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostFilesListResponse' /files.upload: post: operationId: post_files_upload tags: - Files summary: Request the upload link for a file x-source: https://developer.focus.teamleader.eu/docs/api/files-upload requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostFilesUploadRequest' responses: '200': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostFilesUploadResponse' components: schemas: PostFilesDownloadRequest: type: object properties: id: type: string required: - id PostFilesUploadResponse: type: object properties: data: type: object PostFilesListRequest: type: object properties: filter: type: object page: type: object sort: type: object required: - filter - page PostFilesUploadRequest: type: object properties: name: type: string description: Name under which the file will be stored. This name should contain the same extension as the file that the user wants to upload. subject: type: object folder: type: string description: Name of a folder under which the file will be stored. Defaults to General in account's language if not passed. required: - name - subject PostFilesDeleteRequest: type: object properties: id: type: string required: - id PostFilesInfoResponse: type: object properties: data: type: object PostFilesListResponse: type: object properties: data: type: object PostFilesDownloadResponse: type: object properties: data: type: object PostFilesInfoRequest: type: object properties: id: type: string required: - id securitySchemes: bearer: type: http scheme: bearer