import { APIResource } from "../core/resource.js"; import * as BusinessPartnersAPI from "./business-partners.js"; import { APIPromise } from "../core/api-promise.js"; import { PageCursorURL, PagePromise } from "../core/pagination.js"; import { RequestOptions } from "../internal/request-options.js"; /** * Compensation associated with workers */ export declare class ScheduledPayoutLabels extends APIResource { /** * List payout source and group labels. Paginated with limit and cursor. Filter * with string equality joined by and on client and external_id, for example * filter=client eq 'CUSTOM' and external_id eq 'award-1'. * * - Requires: `Internal Testing` * * @example HTTP * Representative request and response shapes. * ``` * GET /scheduled-payout-labels/?limit=0&cursor=cursor&filter=filter 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", * "client": "VC_PLAN_CYCLE", * "external_id": "string", * "name": "string" * } * ], * "next_link": "string" * } * ``` */ list(query?: ScheduledPayoutLabelListParams | null | undefined, options?: RequestOptions): PagePromise; /** * Get or create a source or group label. Identity is (client, external_id). * Returns 200 with the new label, or with the existing label (keeping its name) * when the identity exists. client must be CUSTOM; labels owned by Rippling * systems return 400. Labels are permanent and cannot be deleted. * * @example HTTP * Representative request and response shapes. * ``` * POST /scheduled-payout-labels/ HTTP/1.1 * Host: rest.ripplingapis.com * Content-Type: application/json * Accept: application/json * Rippling-Api-Version: 2024-08-01 * * { * "client": "VC_PLAN_CYCLE", * "external_id": "external_id", * "name": "name" * } * * HTTP/1.1 200 OK * Content-Type: application/json * * { * "id": "string", * "client": "VC_PLAN_CYCLE", * "external_id": "string", * "name": "string" * } * ``` */ create(body: ScheduledPayoutLabelCreateParams, options?: RequestOptions): APIPromise; /** * Retrieve a specific payout source or group label. * * @example HTTP * Representative request and response shapes. * ``` * GET /scheduled-payout-labels/{id}/ 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": [ * {} * ] * } * } * ``` */ retrieve(id: string, options?: RequestOptions): APIPromise; /** * Rename a label. Only name is writable. client and external_id are optional; when * sent they must match the label at this ID, otherwise the request returns 400. * Only CUSTOM labels can be renamed. * * @example HTTP * Representative request and response shapes. * ``` * PATCH /scheduled-payout-labels/{id}/ HTTP/1.1 * Host: rest.ripplingapis.com * Content-Type: application/json * Accept: application/json * Rippling-Api-Version: 2024-08-01 * * { * "client": "VC_PLAN_CYCLE", * "external_id": "external_id", * "name": "name" * } * * HTTP/1.1 200 OK * Content-Type: application/json * * { * "id": "string", * "client": "VC_PLAN_CYCLE", * "external_id": "string", * "name": "string" * } * ``` */ update(id: string, body: ScheduledPayoutLabelUpdateParams, options?: RequestOptions): APIPromise; } export type ScheduledPayoutLabelListResponsesPageCursorURL = PageCursorURL; export interface ScheduledPayoutLabelListResponse { /** * Unique identifier of the payout label. */ id: string; /** * System that owns the label; together with external_id it is the label identity. * Same values as the payout client. */ client: 'VC_PLAN_CYCLE' | 'VC_EVENT_DRIVEN_PLAN' | 'CUSTOM' | 'MANUAL_PAYOUT' | 'HRIS_SIGN_ON' | 'OFFLINE_RECOMMENDATION' | 'NEW_HIRE_AGENT'; /** * External identifier unique per company and client. */ external_id: string; /** * Display name of the label. */ name: string; } export interface ScheduledPayoutLabelCreateResponse { /** * Unique identifier of the payout label. */ id: string; /** * System that owns the label; together with external_id it is the label identity. * Same values as the payout client. */ client: 'VC_PLAN_CYCLE' | 'VC_EVENT_DRIVEN_PLAN' | 'CUSTOM' | 'MANUAL_PAYOUT' | 'HRIS_SIGN_ON' | 'OFFLINE_RECOMMENDATION' | 'NEW_HIRE_AGENT'; /** * External identifier unique per company and client. */ external_id: string; /** * Display name of the label. */ name: string; } /** * Meta information for the response. */ export interface ScheduledPayoutLabelRetrieveResponse extends BusinessPartnersAPI.Meta { /** * Unique identifier of the payout label. */ id: string; /** * System that owns the label; together with external_id it is the label identity. * Same values as the payout client. */ client: 'VC_PLAN_CYCLE' | 'VC_EVENT_DRIVEN_PLAN' | 'CUSTOM' | 'MANUAL_PAYOUT' | 'HRIS_SIGN_ON' | 'OFFLINE_RECOMMENDATION' | 'NEW_HIRE_AGENT'; /** * External identifier unique per company and client. */ external_id: string; /** * Display name of the label. */ name: string; } export interface ScheduledPayoutLabelUpdateResponse { /** * Unique identifier of the payout label. */ id: string; /** * System that owns the label; together with external_id it is the label identity. * Same values as the payout client. */ client: 'VC_PLAN_CYCLE' | 'VC_EVENT_DRIVEN_PLAN' | 'CUSTOM' | 'MANUAL_PAYOUT' | 'HRIS_SIGN_ON' | 'OFFLINE_RECOMMENDATION' | 'NEW_HIRE_AGENT'; /** * External identifier unique per company and client. */ external_id: string; /** * Display name of the label. */ name: string; } export interface ScheduledPayoutLabelListParams { /** * Opaque pagination cursor from the previous page's next_link. */ cursor?: string; /** * String equality filters joined by and. Supported fields: client, external_id. */ filter?: string; /** * Page size. Defaults to 50. Maximum 100. */ limit?: number; } export interface ScheduledPayoutLabelCreateParams { /** * System that owns the label; together with external_id it is the label identity. * Same values as the payout client. */ client: 'VC_PLAN_CYCLE' | 'VC_EVENT_DRIVEN_PLAN' | 'CUSTOM' | 'MANUAL_PAYOUT' | 'HRIS_SIGN_ON' | 'OFFLINE_RECOMMENDATION' | 'NEW_HIRE_AGENT'; /** * External identifier unique per company and client. */ external_id: string; /** * Display name of the label. */ name: string; } export interface ScheduledPayoutLabelUpdateParams { /** * System that owns the label; together with external_id it is the label identity. * Same values as the payout client. */ client: 'VC_PLAN_CYCLE' | 'VC_EVENT_DRIVEN_PLAN' | 'CUSTOM' | 'MANUAL_PAYOUT' | 'HRIS_SIGN_ON' | 'OFFLINE_RECOMMENDATION' | 'NEW_HIRE_AGENT'; /** * External identifier unique per company and client. */ external_id: string; /** * Display name of the label. */ name: string; } export declare namespace ScheduledPayoutLabels { export { type ScheduledPayoutLabelListResponse as ScheduledPayoutLabelListResponse, type ScheduledPayoutLabelCreateResponse as ScheduledPayoutLabelCreateResponse, type ScheduledPayoutLabelRetrieveResponse as ScheduledPayoutLabelRetrieveResponse, type ScheduledPayoutLabelUpdateResponse as ScheduledPayoutLabelUpdateResponse, type ScheduledPayoutLabelListResponsesPageCursorURL as ScheduledPayoutLabelListResponsesPageCursorURL, type ScheduledPayoutLabelListParams as ScheduledPayoutLabelListParams, type ScheduledPayoutLabelCreateParams as ScheduledPayoutLabelCreateParams, type ScheduledPayoutLabelUpdateParams as ScheduledPayoutLabelUpdateParams, }; } //# sourceMappingURL=scheduled-payout-labels.d.ts.map