// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../core/resource'; import { PageCursorURL, PagePromise } from '../core/pagination'; import { RequestOptions } from '../internal/request-options'; /** * Someone who applies to a job requisition opened by the company */ export class Candidates extends APIResource { /** * A list of candidates. * * - Requires: `API Tier 1` * - Sortable fields: `id`, `created_at`, `updated_at` * * @example HTTP * Representative request and response shapes. * ``` * GET /candidates/?order_by=order_by&limit=50&cursor=cursor HTTP/1.1 * Host: rest.ripplingapis.com * Accept: application/json * Rippling-Api-Version: 2024-08-01 * * HTTP/1.1 200 OK * Content-Type: application/json * * { * "__meta": { * "redacted_fields": [ * { * "name": "date_of_birth", * "reason": "Insufficient entitlements" * } * ] * }, * "results": [ * { * "id": "string", * "created_at": "string", * "updated_at": "string", * "first_name": "string", * "last_name": "string", * "email": "string", * "phone_number": "string", * "timezone": "string" * } * ], * "next_link": "string" * } * ``` */ list( query: CandidateListParams | null | undefined = {}, options?: RequestOptions, ): PagePromise { return this._client.getAPIList('/candidates/', PageCursorURL, { query, ...options, }); } } export type CandidateListResponsesPageCursorURL = PageCursorURL; export interface CandidateListResponse { /** * Identifier field */ id: string; /** * Record creation date */ created_at: string; /** * Record update date */ updated_at: string; /** * Candidate email */ email?: string; /** * Candidate first name */ first_name?: string; /** * Candidate last name */ last_name?: string; /** * Candidate phone number */ phone_number?: string; /** * Candidate timezone */ timezone?: string; } export interface CandidateListParams { cursor?: string; /** * The maximum number of results to return. Defaults to 50. Maximum is 100. */ limit?: number; order_by?: string; } export declare namespace Candidates { export { type CandidateListResponse as CandidateListResponse, type CandidateListResponsesPageCursorURL as CandidateListResponsesPageCursorURL, type CandidateListParams as CandidateListParams, }; }