// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../core/resource'; import * as JobRequisitionsAPI from './job-requisitions'; import { PageCursorURL, PagePromise } from '../core/pagination'; import { RequestOptions } from '../internal/request-options'; /** * An application by a candidate to a specific job requisition */ export class CandidateApplications extends APIResource { /** * A list of candidate applications. * * - Requires: `API Tier 2` * - Expandable fields: `job` * - Sortable fields: `id`, `created_at`, `updated_at` */ list( query: CandidateApplicationListParams, options?: RequestOptions, ): PagePromise { return this._client.getAPIList( '/candidate-applications/', PageCursorURL, { query, ...options }, ); } } export type CandidateApplicationListResponsesPageCursorURL = PageCursorURL; export interface CandidateApplicationListResponse { /** * Identifier field */ id: string; /** * Record creation date */ created_at: string; /** * Record update date */ updated_at: string; /** * Application creation date */ applied_at?: string; /** * Job requisition * * Expandable field */ job?: JobRequisitionsAPI.JobRequisition; /** * Job requisition ID */ job_id?: string; /** * Application stage */ stage?: string; /** * Application status */ status?: 'ACTIVE' | 'REJECTED' | 'HIRED' | 'ARCHIVED'; /** * Application url */ url?: string; } export interface CandidateApplicationListParams { /** * The unique identifier of the candidate whose applications to list. */ candidate_id: string; cursor?: string; expand?: string; order_by?: string; } export declare namespace CandidateApplications { export { type CandidateApplicationListResponse as CandidateApplicationListResponse, type CandidateApplicationListResponsesPageCursorURL as CandidateApplicationListResponsesPageCursorURL, type CandidateApplicationListParams as CandidateApplicationListParams, }; }