openapi: 3.0.3 info: title: Truto Admin Accounts Applications API description: The Truto Admin API enables programmatic management of the Truto integration platform, including managing integrated accounts, generating link tokens for customer OAuth flows, running post-install actions, and provisioning MCP servers for AI agent access. version: 1.0.0 contact: url: https://truto.one/docs/api-reference/admin servers: - url: https://api.truto.one description: Truto API security: - bearerAuth: [] tags: - name: Applications description: Job applications linking candidates to jobs paths: /applications: get: operationId: listApplications summary: List applications description: List job applications from the connected ATS provider. Each application links a candidate to a specific job and tracks their progress through interview stages. tags: - Applications security: - bearerAuth: [] parameters: - $ref: '#/components/parameters/IntegratedAccountId' - name: job_id in: query description: Filter applications by job ID. required: false schema: type: string - name: candidate_id in: query description: Filter applications by candidate ID. required: false schema: type: string - name: status in: query description: Filter by application status. required: false schema: type: string enum: - active - rejected - hired - withdrawn - name: cursor in: query required: false schema: type: string - name: limit in: query required: false schema: type: integer default: 20 responses: '200': description: List of applications. content: application/json: schema: $ref: '#/components/schemas/ApplicationListResponse' '401': $ref: '#/components/responses/Unauthorized' components: responses: Unauthorized: description: Authentication failed or token is invalid. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: ApplicationListResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/Application' nextCursor: type: string Error: type: object properties: error: type: string message: type: string Application: type: object description: A job application linking a candidate to a job with current stage information. properties: id: type: string description: Unified application identifier. remoteId: type: string candidateId: type: string description: Identifier of the applying candidate. jobId: type: string description: Identifier of the applied-to job. status: type: string enum: - active - rejected - hired - withdrawn description: Current application status. currentStageId: type: string description: Identifier of the current interview stage. rejectReasonId: type: string description: Reason for rejection, if rejected. source: type: string description: Application source channel. appliedAt: type: string format: date-time description: Timestamp when the application was submitted. createdAt: type: string format: date-time updatedAt: type: string format: date-time parameters: IntegratedAccountId: name: integrated_account_id in: query required: true description: The ID of the integrated account (connected ATS provider instance) to query. Required for all Unified API requests. schema: type: string securitySchemes: bearerAuth: type: http scheme: bearer description: Tenant Bearer token from the Truto dashboard.