@dereekb/zoho 12.1.11 → 12.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import { ZohoDataArrayResultRef, ZohoPageFilter, ZohoPageResult } from './../zoho.api.page';
2
2
  import { FetchJsonBody, FetchJsonInput, FetchPage, FetchPageFactory, FetchPageFactoryOptions, makeUrlSearchParams } from '@dereekb/util/fetch';
3
3
  import { ZohoRecruitConfigApiUrlInput, ZohoRecruitContext } from './recruit.config';
4
- import { NewZohoRecruitNoteData, ZohoRecruitCommaSeparateFieldNames, ZohoRecruitCustomViewId, ZohoRecruitDraftOrSaveState, ZohoRecruitFieldName, ZohoRecruitModuleNameRef, ZohoRecruitChangeObjectDetails, ZohoRecruitRecord, ZohoRecruitRecordId, ZohoRecruitRecordNote, ZohoRecruitTerritoryId, ZohoRecruitTrueFalseBoth, ZohoRecruitNoteId, ZohoRecruitRestFunctionApiName, ZohoRecruitUserId } from './recruit';
4
+ import { ZohoRecruitCommaSeparateFieldNames, ZohoRecruitCustomViewId, ZohoRecruitDraftOrSaveState, ZohoRecruitFieldName, ZohoRecruitModuleNameRef, ZohoRecruitChangeObjectDetails, ZohoRecruitRecord, ZohoRecruitRecordId, ZohoRecruitTerritoryId, ZohoRecruitTrueFalseBoth, ZohoRecruitRestFunctionApiName, ZohoRecruitUserId, ZohoRecruitModuleName, ZohoRecruitRecordEmailMetadata } from './recruit';
5
5
  import { ZohoRecruitSearchRecordsCriteriaTreeElement } from './recruit.criteria';
6
6
  import { ArrayOrValue, EmailAddress, Maybe, PhoneNumber, SortingOrder, UniqueModelWithId } from '@dereekb/util';
7
7
  import { ZohoServerErrorDataWithDetails, ZohoServerErrorStatus, ZohoServerSuccessCode, ZohoServerSuccessStatus } from '../zoho.error.api';
@@ -73,6 +73,30 @@ export type ZohoRecruitUpdateRecordFunction = ZohoRecruitUpdateRecordLikeFunctio
73
73
  * @returns
74
74
  */
75
75
  export declare function updateRecord(context: ZohoRecruitContext): ZohoRecruitUpdateRecordFunction;
76
+ export type ZohoRecruitDeleteRecordFunction = (input: ZohoRecruitDeleteRecordInput) => Promise<ZohoRecruitDeleteRecordResponse>;
77
+ export interface ZohoRecruitDeleteRecordInput extends ZohoRecruitModuleNameRef {
78
+ /**
79
+ * Id or array of ids to delete.
80
+ */
81
+ readonly ids: ArrayOrValue<ZohoRecruitRecordId>;
82
+ readonly wf_trigger?: boolean;
83
+ }
84
+ export interface ZohoRecruitDeleteRecordResponseSuccessEntry extends ZohoRecruitChangeObjectLikeResponseSuccessEntryMeta {
85
+ readonly details: {
86
+ readonly id: ZohoRecruitRecordId;
87
+ };
88
+ }
89
+ export type ZohoRecruitDeleteRecordResponse = ZohoRecruitChangeObjectLikeResponseSuccessAndErrorPairs<ZohoRecruitDeleteRecordResponseSuccessEntry>;
90
+ export type ZohoRecruitDeleteRecordResult = ZohoRecruitChangeObjectResponseSuccessEntry[];
91
+ /**
92
+ * Deletes one or more records from the given module.
93
+ *
94
+ * https://www.zoho.com/recruit/developer-guide/apiv2/delete-records.html
95
+ *
96
+ * @param context
97
+ * @returns ZohoRecruitDeleteRecordFunction
98
+ */
99
+ export declare function deleteRecord(context: ZohoRecruitContext): ZohoRecruitDeleteRecordFunction;
76
100
  export interface ZohoRecruitGetRecordByIdInput extends ZohoRecruitModuleNameRef {
77
101
  readonly id: ZohoRecruitRecordId;
78
102
  }
@@ -139,39 +163,46 @@ export type ZohoRecruitSearchRecordsFunction = <T = ZohoRecruitRecord>(input: Zo
139
163
  export declare function searchRecords(context: ZohoRecruitContext): ZohoRecruitSearchRecordsFunction;
140
164
  export type SearchRecordsPageFactory = <T = ZohoRecruitRecord>(input: ZohoRecruitSearchRecordsInput<T>, options?: Maybe<FetchPageFactoryOptions<ZohoRecruitSearchRecordsInput<T>, ZohoRecruitSearchRecordsResponse<T>>>) => FetchPage<ZohoRecruitSearchRecordsInput<T>, ZohoRecruitSearchRecordsResponse<T>>;
141
165
  export declare function searchRecordsPageFactory(context: ZohoRecruitContext): SearchRecordsPageFactory;
142
- export interface ZohoRecruitCreateNotesRequest {
143
- readonly data: ZohoRecruitCreateNotesRequestEntry[];
144
- }
145
- export type ZohoRecruitCreateNotesResult = ZohoRecruitMultiRecordResult<ZohoRecruitCreateNotesRequestEntry, ZohoRecruitChangeObjectResponseSuccessEntry, ZohoRecruitChangeObjectResponseErrorEntry>;
146
- export type ZohoRecruitCreateNotesRequestEntry = NewZohoRecruitNoteData;
147
- export type ZohoRecruitCreateNotesResponse = ZohoRecruitChangeObjectResponse;
148
- export type ZohoRecruitCreateNotesFunction = (input: ZohoRecruitCreateNotesRequest) => Promise<ZohoRecruitCreateNotesResult>;
149
- export declare function createNotes(context: ZohoRecruitContext): (input: ZohoRecruitCreateNotesRequest) => Promise<ZohoRecruitMultiRecordResult<NewZohoRecruitNoteData, ZohoRecruitChangeObjectResponseSuccessEntry<ZohoRecruitChangeObjectDetails>, ZohoRecruitChangeObjectResponseErrorEntry>>;
150
- export interface ZohoRecruitDeleteNotesRequest {
151
- readonly ids: ArrayOrValue<ZohoRecruitNoteId>;
152
- }
153
- export type ZohoRecruitDeleteNotesResult = ZohoRecruitMultiRecordResult<ZohoRecruitNoteId, ZohoRecruitChangeObjectResponseSuccessEntry, ZohoRecruitChangeObjectResponseErrorEntry>;
154
- export type ZohoRecruitDeleteNotesResponse = ZohoRecruitChangeObjectResponse;
155
- export type ZohoRecruitDeleteNotesFunction = (input: ZohoRecruitDeleteNotesRequest) => Promise<ZohoRecruitDeleteNotesResult>;
156
- export declare function deleteNotes(context: ZohoRecruitContext): (input: ZohoRecruitDeleteNotesRequest) => Promise<ZohoRecruitMultiRecordResult<string, ZohoRecruitChangeObjectResponseSuccessEntry<ZohoRecruitChangeObjectDetails>, ZohoRecruitChangeObjectResponseErrorEntry>>;
157
- export type ZohoRecruitGetNotesPageFilter = ZohoPageFilter;
158
- export interface ZohoRecruitGetNotesForRecordRequest extends ZohoRecruitGetRecordByIdInput, ZohoRecruitGetNotesPageFilter {
166
+ export interface ZohoRecruitGetRelatedRecordsFunctionConfig {
167
+ readonly targetModule: ZohoRecruitModuleName;
159
168
  /**
160
- * @deprecated use variables on request instead of this filter.
169
+ * If true, will return an empty page result instead of null when no results are found.
170
+ *
171
+ * Defaults to true.
161
172
  */
162
- readonly filter?: Maybe<ZohoRecruitGetNotesPageFilter>;
173
+ readonly returnEmptyRecordsInsteadOfNull?: boolean;
163
174
  }
164
- export type ZohoRecruitGetNotesForRecordResponse = ZohoPageResult<ZohoRecruitRecordNote>;
165
- export type ZohoRecruitGetNotesForRecordFunction = (input: ZohoRecruitGetNotesForRecordRequest) => Promise<ZohoRecruitGetNotesForRecordResponse>;
166
- export declare function getNotesForRecord(context: ZohoRecruitContext): ZohoRecruitGetNotesForRecordFunction;
167
- export type GetNotesForRecordPageFactory = FetchPageFactory<ZohoRecruitGetNotesForRecordRequest, ZohoRecruitGetNotesForRecordResponse>;
168
- export declare function getNotesForRecordPageFactory(context: ZohoRecruitContext): GetNotesForRecordPageFactory;
169
- export interface ZohoRecruitCreateNotesForRecordRequest extends ZohoRecruitModuleNameRef {
170
- readonly id: ZohoRecruitRecordId;
171
- readonly notes: ArrayOrValue<Omit<NewZohoRecruitNoteData, 'se_module' | 'Parent_Id'>>;
175
+ export type ZohoRecruitGetRelatedRecordsFunctionFactory = <T = ZohoRecruitRecord>(input: ZohoRecruitGetRelatedRecordsFunctionConfig) => ZohoRecruitGetRelatedRecordsFunction<T>;
176
+ export type ZohoRecruitGetRelatedRecordsPageFilter = ZohoPageFilter;
177
+ export interface ZohoRecruitGetRelatedRecordsRequest extends ZohoRecruitGetRecordByIdInput, ZohoRecruitGetRelatedRecordsPageFilter {
178
+ /**
179
+ * Optional, Use to filter the related records of the primary/target record with said ids.
180
+ *
181
+ * For example, providing this value will return the Notes with these ids when searching on related Notes for the primary/target record.
182
+ */
183
+ readonly ids?: Maybe<ArrayOrValue<ZohoRecruitRecordId>>;
184
+ /**
185
+ * @deprecated set variables on request object directly instead of using this filter.
186
+ */
187
+ readonly filter?: Maybe<ZohoRecruitGetRelatedRecordsPageFilter>;
172
188
  }
173
- export type ZohoRecruitCreateNotesForRecordFunction = (input: ZohoRecruitCreateNotesForRecordRequest) => Promise<ZohoRecruitCreateNotesResult>;
174
- export declare function createNotesForRecord(context: ZohoRecruitContext): ZohoRecruitCreateNotesForRecordFunction;
189
+ export type ZohoRecruitGetRelatedRecordsResponse<T = ZohoRecruitRecord> = ZohoPageResult<T>;
190
+ export type ZohoRecruitGetRelatedRecordsFunction<T = ZohoRecruitRecord> = (input: ZohoRecruitGetRelatedRecordsRequest) => Promise<ZohoRecruitGetRelatedRecordsResponse<T>>;
191
+ /**
192
+ * Creates a ZohoRecruitGetRelatedRecordsFunctionFactory, which can be used to create ZohoRecruitGetRelatedRecordsFunction<T> that targets retrieving related records of a given type.
193
+ *
194
+ * https://www.zoho.com/recruit/developer-guide/apiv2/get-related-records.html
195
+ *
196
+ * @param context the ZohoRecruitContext to use
197
+ * @returns a ZohoRecruitGetRelatedRecordsFunctionFactory
198
+ */
199
+ export declare function getRelatedRecordsFunctionFactory(context: ZohoRecruitContext): ZohoRecruitGetRelatedRecordsFunctionFactory;
200
+ export type ZohoRecruitGetEmailsForRecordRequest = ZohoRecruitGetRelatedRecordsRequest;
201
+ export type ZohoRecruitGetEmailsForRecordResponse = ZohoPageResult<ZohoRecruitRecordEmailMetadata>;
202
+ export type ZohoRecruitGetEmailsForRecordFunction = (input: ZohoRecruitGetEmailsForRecordRequest) => Promise<ZohoRecruitGetEmailsForRecordResponse>;
203
+ export declare function getEmailsForRecord(context: ZohoRecruitContext): ZohoRecruitGetEmailsForRecordFunction;
204
+ export type GetEmailsForRecordPageFactory = FetchPageFactory<ZohoRecruitGetEmailsForRecordRequest, ZohoRecruitGetEmailsForRecordResponse>;
205
+ export declare function getEmailsForRecordPageFactory(context: ZohoRecruitContext): GetEmailsForRecordPageFactory;
175
206
  export type ZohoRecruitExecuteRestApiFunctionRequest = ZohoRecruitExecuteRestApiFunctionNormalRequest | ZohoRecruitExecuteRestApiFunctionApiSpecificRequest;
176
207
  export interface ZohoRecruitExecuteRestApiFunctionNormalRequest {
177
208
  readonly functionName: ZohoRecruitRestFunctionApiName;
@@ -238,11 +269,17 @@ export declare const zohoRecruitUrlSearchParams: typeof makeUrlSearchParams;
238
269
  export declare function zohoRecruitApiFetchJsonInput(method: string, body?: Maybe<FetchJsonBody>): FetchJsonInput;
239
270
  export type ZohoRecruitChangeObjectLikeResponse<T extends ZohoRecruitChangeObjectLikeResponseEntry = ZohoRecruitChangeObjectLikeResponseEntry> = ZohoDataArrayResultRef<T>;
240
271
  export type ZohoRecruitChangeObjectLikeResponseEntry<E extends ZohoRecruitChangeObjectLikeResponseSuccessEntryMeta = ZohoRecruitChangeObjectLikeResponseSuccessEntryMeta> = E | ZohoRecruitChangeObjectResponseErrorEntry;
272
+ export type ZohoRecruitChangeObjectLikeResponseSuccessEntryType<T extends ZohoRecruitChangeObjectLikeResponseEntry> = T extends ZohoRecruitChangeObjectLikeResponseEntry<infer E> ? E : never;
241
273
  export interface ZohoRecruitChangeObjectLikeResponseSuccessEntryMeta {
242
274
  readonly code: ZohoServerSuccessCode;
243
275
  readonly status: ZohoServerSuccessStatus;
244
276
  readonly message: string;
245
277
  }
278
+ export type ZohoRecruitChangeObjectLikeResponseSuccessAndErrorPairs<T extends ZohoRecruitChangeObjectLikeResponseEntry> = ZohoRecruitChangeObjectLikeResponse<T> & {
279
+ readonly successItems: ZohoRecruitChangeObjectLikeResponseSuccessEntryType<T>[];
280
+ readonly errorItems: ZohoRecruitChangeObjectResponseErrorEntry[];
281
+ };
282
+ export declare function zohoRecruitChangeObjectLikeResponseSuccessAndErrorPairs<T extends ZohoRecruitChangeObjectLikeResponseEntry>(response: ZohoRecruitChangeObjectLikeResponse<T>): ZohoRecruitChangeObjectLikeResponseSuccessAndErrorPairs<T>;
246
283
  export type ZohoRecruitChangeObjectResponse<T extends ZohoRecruitChangeObjectResponseEntry = ZohoRecruitChangeObjectResponseEntry> = ZohoRecruitChangeObjectLikeResponse<T>;
247
284
  export type ZohoRecruitChangeObjectResponseEntry<E extends ZohoRecruitChangeObjectResponseSuccessEntry = ZohoRecruitChangeObjectResponseSuccessEntry> = ZohoRecruitChangeObjectLikeResponseEntry<E>;
248
285
  export interface ZohoRecruitChangeObjectResponseSuccessEntry<D extends ZohoRecruitChangeObjectDetails = ZohoRecruitChangeObjectDetails> extends ZohoRecruitChangeObjectLikeResponseSuccessEntryMeta {
@@ -269,3 +306,7 @@ export interface ZohoRecruitMultiRecordResultEntry<I, O> {
269
306
  */
270
307
  readonly result: O;
271
308
  }
309
+ /**
310
+ * @deprecated use ZohoRecruitGetRelatedRecordsPageFilter instead.
311
+ */
312
+ export type ZohoRecruitGetNotesPageFilter = ZohoRecruitGetRelatedRecordsPageFilter;
@@ -0,0 +1,34 @@
1
+ import { ZohoPageResult } from '../zoho.api.page';
2
+ import { FetchPageFactory } from '@dereekb/util/fetch';
3
+ import { ZohoRecruitContext } from './recruit.config';
4
+ import { ZohoRecruitModuleNameRef, ZohoRecruitRecordId } from './recruit';
5
+ import { ArrayOrValue } from '@dereekb/util';
6
+ import { ZohoRecruitMultiRecordResult, ZohoRecruitChangeObjectResponseSuccessEntry, ZohoRecruitChangeObjectResponseErrorEntry, ZohoRecruitChangeObjectResponse, ZohoRecruitGetRelatedRecordsRequest } from './recruit.api';
7
+ import { NewZohoRecruitNoteData, ZohoRecruitNoteId, ZohoRecruitRecordNote } from './recruit.notes';
8
+ export interface ZohoRecruitCreateNotesRequest {
9
+ readonly data: ZohoRecruitCreateNotesRequestEntry[];
10
+ }
11
+ export type ZohoRecruitCreateNotesResult = ZohoRecruitMultiRecordResult<ZohoRecruitCreateNotesRequestEntry, ZohoRecruitChangeObjectResponseSuccessEntry, ZohoRecruitChangeObjectResponseErrorEntry>;
12
+ export type ZohoRecruitCreateNotesRequestEntry = NewZohoRecruitNoteData;
13
+ export type ZohoRecruitCreateNotesResponse = ZohoRecruitChangeObjectResponse;
14
+ export type ZohoRecruitCreateNotesFunction = (input: ZohoRecruitCreateNotesRequest) => Promise<ZohoRecruitCreateNotesResult>;
15
+ export declare function createNotes(context: ZohoRecruitContext): (input: ZohoRecruitCreateNotesRequest) => Promise<ZohoRecruitMultiRecordResult<NewZohoRecruitNoteData, ZohoRecruitChangeObjectResponseSuccessEntry<import("./recruit").ZohoRecruitChangeObjectDetails>, ZohoRecruitChangeObjectResponseErrorEntry>>;
16
+ export interface ZohoRecruitDeleteNotesRequest {
17
+ readonly ids: ArrayOrValue<ZohoRecruitNoteId>;
18
+ }
19
+ export type ZohoRecruitDeleteNotesResult = ZohoRecruitMultiRecordResult<ZohoRecruitNoteId, ZohoRecruitChangeObjectResponseSuccessEntry, ZohoRecruitChangeObjectResponseErrorEntry>;
20
+ export type ZohoRecruitDeleteNotesResponse = ZohoRecruitChangeObjectResponse;
21
+ export type ZohoRecruitDeleteNotesFunction = (input: ZohoRecruitDeleteNotesRequest) => Promise<ZohoRecruitDeleteNotesResult>;
22
+ export declare function deleteNotes(context: ZohoRecruitContext): (input: ZohoRecruitDeleteNotesRequest) => Promise<ZohoRecruitMultiRecordResult<string, ZohoRecruitChangeObjectResponseSuccessEntry<import("./recruit").ZohoRecruitChangeObjectDetails>, ZohoRecruitChangeObjectResponseErrorEntry>>;
23
+ export type ZohoRecruitGetNotesForRecordRequest = ZohoRecruitGetRelatedRecordsRequest;
24
+ export type ZohoRecruitGetNotesForRecordResponse = ZohoPageResult<ZohoRecruitRecordNote>;
25
+ export type ZohoRecruitGetNotesForRecordFunction = (input: ZohoRecruitGetNotesForRecordRequest) => Promise<ZohoRecruitGetNotesForRecordResponse>;
26
+ export declare function getNotesForRecord(context: ZohoRecruitContext): ZohoRecruitGetNotesForRecordFunction;
27
+ export type GetNotesForRecordPageFactory = FetchPageFactory<ZohoRecruitGetNotesForRecordRequest, ZohoRecruitGetNotesForRecordResponse>;
28
+ export declare function getNotesForRecordPageFactory(context: ZohoRecruitContext): GetNotesForRecordPageFactory;
29
+ export interface ZohoRecruitCreateNotesForRecordRequest extends ZohoRecruitModuleNameRef {
30
+ readonly id: ZohoRecruitRecordId;
31
+ readonly notes: ArrayOrValue<Omit<NewZohoRecruitNoteData, 'se_module' | 'Parent_Id'>>;
32
+ }
33
+ export type ZohoRecruitCreateNotesForRecordFunction = (input: ZohoRecruitCreateNotesForRecordRequest) => Promise<ZohoRecruitCreateNotesResult>;
34
+ export declare function createNotesForRecord(context: ZohoRecruitContext): ZohoRecruitCreateNotesForRecordFunction;
@@ -0,0 +1,86 @@
1
+ import { ZohoRecruitContext } from './recruit.config';
2
+ import { ArrayOrValue, Maybe } from '@dereekb/util';
3
+ import { ZohoRecruitModuleNameRef, ZohoRecruitRecordId } from './recruit';
4
+ import { ZohoRecruitChangeObjectLikeResponse, ZohoRecruitChangeObjectLikeResponseSuccessEntryMeta, ZohoRecruitChangeObjectResponse, ZohoRecruitChangeObjectResponseErrorEntry, ZohoRecruitChangeObjectResponseSuccessEntry, ZohoRecruitGetRecordsPageFilter, ZohoRecruitMultiRecordResult, ZohoRecruitMultiRecordResultEntry } from './recruit.api';
5
+ import { ZohoRecruitTagData, ZohoRecruitTagName, ZohoRecruitTagWithObjectDetails } from './recruit.tags';
6
+ import { FetchPage, FetchPageFactoryOptions } from '@dereekb/util/fetch';
7
+ import { ZohoPageResult } from '../zoho.api.page';
8
+ export type ZohoRecruitCreateTagData = Pick<ZohoRecruitTagData, 'name'> & Partial<Pick<ZohoRecruitTagData, 'color_code'>>;
9
+ export interface ZohoRecruitCreateTagsRequest extends ZohoRecruitModuleNameRef {
10
+ readonly tags: ArrayOrValue<ZohoRecruitCreateTagData>;
11
+ }
12
+ export interface ZohoRecruitCreateTagsResponse {
13
+ readonly tags: ZohoRecruitChangeObjectResponse['data'];
14
+ }
15
+ export type ZohoRecruitCreateTagsResult = ZohoRecruitMultiRecordResult<ZohoRecruitCreateTagData, ZohoRecruitChangeObjectResponseSuccessEntry, ZohoRecruitChangeObjectResponseErrorEntry> & {
16
+ readonly duplicateErrorItems: ZohoRecruitMultiRecordResultEntry<ZohoRecruitCreateTagData, ZohoRecruitChangeObjectResponseErrorEntry>[];
17
+ readonly allErrorItems: ZohoRecruitMultiRecordResultEntry<ZohoRecruitCreateTagData, ZohoRecruitChangeObjectResponseErrorEntry>[];
18
+ };
19
+ export type ZohoRecruitCreateTagsFunction = (input: ZohoRecruitCreateTagsRequest) => Promise<ZohoRecruitCreateTagsResult>;
20
+ export declare function createTagsForModule(context: ZohoRecruitContext): (input: ZohoRecruitCreateTagsRequest) => Promise<{
21
+ errorItems: ZohoRecruitMultiRecordResultEntry<ZohoRecruitCreateTagData, ZohoRecruitChangeObjectResponseErrorEntry>[];
22
+ duplicateErrorItems: ZohoRecruitMultiRecordResultEntry<ZohoRecruitCreateTagData, ZohoRecruitChangeObjectResponseErrorEntry>[];
23
+ allErrorItems: ZohoRecruitMultiRecordResultEntry<ZohoRecruitCreateTagData, ZohoRecruitChangeObjectResponseErrorEntry>[];
24
+ successItems: ZohoRecruitMultiRecordResultEntry<ZohoRecruitCreateTagData, ZohoRecruitChangeObjectResponseSuccessEntry<import("./recruit").ZohoRecruitChangeObjectDetails>>[];
25
+ }>;
26
+ export interface ZohoRecruitGetTagsRequest extends ZohoRecruitModuleNameRef, ZohoRecruitGetRecordsPageFilter {
27
+ readonly my_tags?: string;
28
+ }
29
+ export interface ZohoRecruitGetTagsResponse extends Omit<ZohoPageResult<ZohoRecruitTagWithObjectDetails>, 'data'> {
30
+ readonly tags: ZohoRecruitTagWithObjectDetails[];
31
+ }
32
+ export type ZohoRecruitGetTagsResult = ZohoPageResult<ZohoRecruitTagWithObjectDetails>;
33
+ export type ZohoRecruitGetTagsFunction = (input: ZohoRecruitGetTagsRequest) => Promise<ZohoRecruitGetTagsResult>;
34
+ /**
35
+ * Returns the list of tags within a module.
36
+ *
37
+ * https://www.zoho.com/recruit/developer-guide/apiv2/get-tag-list.html
38
+ *
39
+ * @param context
40
+ * @returns
41
+ */
42
+ export declare function getTagsForModule(context: ZohoRecruitContext): ZohoRecruitGetTagsFunction;
43
+ export type GetTagsForModulePageFactory = (input: ZohoRecruitGetTagsRequest, options?: Maybe<FetchPageFactoryOptions<ZohoRecruitGetTagsRequest, ZohoRecruitGetTagsResult>>) => FetchPage<ZohoRecruitGetTagsRequest, ZohoRecruitGetTagsResult>;
44
+ export declare function getTagsForModulePageFactory(context: ZohoRecruitContext): GetTagsForModulePageFactory;
45
+ export interface ZohoRecruitAddTagsToRecordsRequest extends ZohoRecruitModuleNameRef {
46
+ /**
47
+ * Tag names to add to the records.
48
+ */
49
+ readonly tag_names: ArrayOrValue<ZohoRecruitTagName>;
50
+ /**
51
+ * Ids corresponding to the records in the module to add the tags to.
52
+ */
53
+ readonly ids: ArrayOrValue<ZohoRecruitRecordId>;
54
+ }
55
+ export interface ZohoRecruitAddTagsToRecordsResultDetails {
56
+ /**
57
+ * Record id that was updated
58
+ */
59
+ readonly id: ZohoRecruitRecordId;
60
+ /**
61
+ * Tag names that were added to the record
62
+ */
63
+ readonly tags: ZohoRecruitTagName[];
64
+ }
65
+ export interface ZohoRecruitAddTagsToRecordsSuccessEntry extends ZohoRecruitChangeObjectLikeResponseSuccessEntryMeta {
66
+ readonly details: ZohoRecruitAddTagsToRecordsResultDetails;
67
+ }
68
+ export type ZohoRecruitAddTagsToRecordsResponse = ZohoRecruitChangeObjectLikeResponse<ZohoRecruitAddTagsToRecordsSuccessEntry>;
69
+ /**
70
+ * Contains all the details of the error.
71
+ */
72
+ export type ZohoRecruitAddTagsToRecordsErrorEntryDetails = ZohoRecruitAddTagsToRecordsResultDetails;
73
+ export type ZohoRecruitAddTagsToRecordsErrorEntry = ZohoRecruitChangeObjectResponseErrorEntry & {
74
+ readonly details: ZohoRecruitAddTagsToRecordsErrorEntryDetails;
75
+ };
76
+ export type ZohoRecruitAddTagsToRecordsResult = ZohoRecruitMultiRecordResult<ZohoRecruitAddTagsToRecordsRequest, ZohoRecruitAddTagsToRecordsSuccessEntry, ZohoRecruitAddTagsToRecordsErrorEntry>;
77
+ export type ZohoRecruitAddTagsToRecordsFunction = (input: ZohoRecruitAddTagsToRecordsRequest) => Promise<ZohoRecruitAddTagsToRecordsResult>;
78
+ /**
79
+ * Associates one or more candidates with one or more job openings.
80
+ *
81
+ * https://www.zoho.com/recruit/developer-guide/apiv2/associate-candidate.html
82
+ *
83
+ * @param context
84
+ * @returns
85
+ */
86
+ export declare function addTagsToRecords(context: ZohoRecruitContext): ZohoRecruitAddTagsToRecordsFunction;
@@ -1,4 +1,4 @@
1
- import { CommaSeparatedString, ISO8601DateString, UniqueModelWithId, WebsiteUrl } from '@dereekb/util';
1
+ import { CommaSeparatedString, EmailAddress, ISO8601DateString, UniqueModelWithId, WebsiteUrl } from '@dereekb/util';
2
2
  /**
3
3
  * Zoho Recruit module name.
4
4
  *
@@ -13,6 +13,14 @@ export declare const ZOHO_RECRUIT_CANDIDATES_MODULE = "Candidates";
13
13
  * Job Openings module name
14
14
  */
15
15
  export declare const ZOHO_RECRUIT_JOB_OPENINGS_MODULE = "Job_Openings";
16
+ /**
17
+ * Notes module name
18
+ */
19
+ export declare const ZOHO_RECRUIT_NOTES_MODULE = "Notes";
20
+ /**
21
+ * Emails module name
22
+ */
23
+ export declare const ZOHO_RECRUIT_EMAILS_MODULE = "Emails";
16
24
  /**
17
25
  * Contains a reference to a module.
18
26
  */
@@ -134,54 +142,6 @@ export type ZohoRecruitRecord = UniqueModelWithId & ZohoRecruitRecordFieldsData;
134
142
  * Returns true if it is a valid ZohoRecruitValidUrl.
135
143
  */
136
144
  export declare const isZohoRecruitValidUrl: (input: WebsiteUrl) => input is ZohoRecruitValidUrl;
137
- /**
138
- * Update details returned by the server for an updated record.
139
- *
140
- * @deprecated use ZohoRecruitChangeObjectDetails instead.
141
- */
142
- export type ZohoRecruitRecordUpdateDetails = ZohoRecruitChangeObjectDetails;
143
- export type ZohoRecruitNoteId = string;
144
- export interface ZohoRecruitNoteAction {
145
- $is_system_action: boolean;
146
- }
147
- export type ZohoRecruitNoteSourceName = 'NORMAL_USER';
148
- export type ZohoRecruitNoteSourceType = number;
149
- export interface ZohoRecruitNoteSource {
150
- name: ZohoRecruitNoteSourceName;
151
- type: ZohoRecruitNoteSourceType;
152
- }
153
- export type ZohoRecruitNoteOwnerData = ZohoRecruitReferenceData;
154
- export interface ZohoRecruitNoteData {
155
- Note_Title: string;
156
- Note_Content: string;
157
- Parent_Id: ZohoRecruitParentReferenceData;
158
- Created_Time: ISO8601DateString;
159
- Modified_Time: ISO8601DateString;
160
- $attachments: null;
161
- $is_edit_allowed: boolean;
162
- $editable: boolean;
163
- $type_id: ZohoRecruitTypeId;
164
- $is_delete_allowed: boolean;
165
- $note_action: ZohoRecruitNoteAction;
166
- $source: ZohoRecruitNoteSource;
167
- $se_module: ZohoRecruitModuleName;
168
- $is_shared_to_client: boolean;
169
- Note_Owner: ZohoRecruitNoteOwnerData;
170
- Created_By: ZohoRecruitCreatedByData;
171
- Modified_By: ZohoRecruitModifiedByData;
172
- $size: ZohoRecruitNoteFileSize | null;
173
- $voice_note: boolean;
174
- $status: ZohoRecruitNoteStatus;
175
- }
176
- export interface NewZohoRecruitNoteData extends Pick<ZohoRecruitNoteData, 'Note_Title' | 'Note_Content'> {
177
- Parent_Id: Pick<ZohoRecruitParentReferenceData, 'id'> | ZohoRecruitId;
178
- se_module: ZohoRecruitModuleName;
179
- }
180
- export type ZohoRecruitNoteStatus = string;
181
- export type ZohoRecruitNoteFileSize = number;
182
- export interface ZohoRecruitNote extends ZohoRecruitNoteData, UniqueModelWithId {
183
- }
184
- export type ZohoRecruitRecordNote = ZohoRecruitNote;
185
145
  /**
186
146
  * The posting title of a job opening.
187
147
  */
@@ -191,6 +151,41 @@ export type ZohoRecruitJobOpeningPostingTitle = string;
191
151
  */
192
152
  export type ZohoRecruitCandidateStatus = string;
193
153
  /**
194
- * @deprecated use NewZohoRecruitNewNoteData instead.
154
+ * Metadata for a record's email.
155
+ */
156
+ export interface ZohoRecruitRecordEmailMetadata {
157
+ /**
158
+ * Whether or not an attachment is present.
159
+ */
160
+ attachment: boolean;
161
+ /**
162
+ * The subject of the email.
163
+ */
164
+ subject: string;
165
+ /**
166
+ * The email address the email was sent to.
167
+ */
168
+ to: EmailAddress;
169
+ /**
170
+ * The email address the email was sent from.
171
+ */
172
+ from: EmailAddress;
173
+ /**
174
+ * The date the email was sent.
175
+ */
176
+ sent_on: ISO8601DateString;
177
+ /**
178
+ * The status of the email.
179
+ */
180
+ status: ZohoRecruitRecordEmailMetadataStatus[];
181
+ }
182
+ export type ZohoRecruitRecordEmailMetadataStatusType = 'sent' | string;
183
+ export interface ZohoRecruitRecordEmailMetadataStatus {
184
+ type: ZohoRecruitRecordEmailMetadataStatusType;
185
+ }
186
+ /**
187
+ * Update details returned by the server for an updated record.
188
+ *
189
+ * @deprecated use ZohoRecruitChangeObjectDetails instead.
195
190
  */
196
- export type NewZohoRecruitNewNoteData = NewZohoRecruitNoteData;
191
+ export type ZohoRecruitRecordUpdateDetails = ZohoRecruitChangeObjectDetails;
@@ -0,0 +1,48 @@
1
+ import { ISO8601DateString, UniqueModelWithId } from '@dereekb/util';
2
+ import { ZohoRecruitReferenceData, ZohoRecruitParentReferenceData, ZohoRecruitTypeId, ZohoRecruitModuleName, ZohoRecruitCreatedByData, ZohoRecruitModifiedByData, ZohoRecruitId } from './recruit';
3
+ export type ZohoRecruitNoteId = string;
4
+ export interface ZohoRecruitNoteAction {
5
+ $is_system_action: boolean;
6
+ }
7
+ export type ZohoRecruitNoteSourceName = 'NORMAL_USER';
8
+ export type ZohoRecruitNoteSourceType = number;
9
+ export interface ZohoRecruitNoteSource {
10
+ name: ZohoRecruitNoteSourceName;
11
+ type: ZohoRecruitNoteSourceType;
12
+ }
13
+ export type ZohoRecruitNoteOwnerData = ZohoRecruitReferenceData;
14
+ export interface ZohoRecruitNoteData {
15
+ Note_Title: string;
16
+ Note_Content: string;
17
+ Parent_Id: ZohoRecruitParentReferenceData;
18
+ Created_Time: ISO8601DateString;
19
+ Modified_Time: ISO8601DateString;
20
+ $attachments: null;
21
+ $is_edit_allowed: boolean;
22
+ $editable: boolean;
23
+ $type_id: ZohoRecruitTypeId;
24
+ $is_delete_allowed: boolean;
25
+ $note_action: ZohoRecruitNoteAction;
26
+ $source: ZohoRecruitNoteSource;
27
+ $se_module: ZohoRecruitModuleName;
28
+ $is_shared_to_client: boolean;
29
+ Note_Owner: ZohoRecruitNoteOwnerData;
30
+ Created_By: ZohoRecruitCreatedByData;
31
+ Modified_By: ZohoRecruitModifiedByData;
32
+ $size: ZohoRecruitNoteFileSize | null;
33
+ $voice_note: boolean;
34
+ $status: ZohoRecruitNoteStatus;
35
+ }
36
+ export interface NewZohoRecruitNoteData extends Pick<ZohoRecruitNoteData, 'Note_Title' | 'Note_Content'> {
37
+ Parent_Id: Pick<ZohoRecruitParentReferenceData, 'id'> | ZohoRecruitId;
38
+ se_module: ZohoRecruitModuleName;
39
+ }
40
+ export type ZohoRecruitNoteStatus = string;
41
+ export type ZohoRecruitNoteFileSize = number;
42
+ export interface ZohoRecruitNote extends ZohoRecruitNoteData, UniqueModelWithId {
43
+ }
44
+ export type ZohoRecruitRecordNote = ZohoRecruitNote;
45
+ /**
46
+ * @deprecated use NewZohoRecruitNewNoteData instead.
47
+ */
48
+ export type NewZohoRecruitNewNoteData = NewZohoRecruitNoteData;
@@ -0,0 +1,34 @@
1
+ import { HexColorCode } from '@dereekb/util';
2
+ import { ZohoRecruitChangeObjectDetails } from './recruit';
3
+ export type ZohoRecruitTagId = string;
4
+ /**
5
+ * Name of a tag.
6
+ *
7
+ * Max length of 25 characters.
8
+ */
9
+ export type ZohoRecruitTagName = string;
10
+ /**
11
+ * Maximum length of ZohoRecruitTagName
12
+ */
13
+ export declare const ZOHO_RECRUIT_TAG_NAME_MAX_LENGTH = 25;
14
+ /**
15
+ * Hex color code of a tag
16
+ */
17
+ export type ZohoRecruitTagColorCode = HexColorCode;
18
+ /**
19
+ * The color and name of a Tag in Zoho Recruit.
20
+ */
21
+ export interface ZohoRecruitTagData {
22
+ color_code: ZohoRecruitTagColorCode;
23
+ name: ZohoRecruitTagName;
24
+ }
25
+ /**
26
+ * Includes the id of the Tag along with other tag data.
27
+ */
28
+ export interface ZohoRecruitTag extends ZohoRecruitTagData {
29
+ id: ZohoRecruitTagId;
30
+ }
31
+ /**
32
+ * ZohoRecruitTag that also has ZohoRecruitChangeObjectDetails
33
+ */
34
+ export type ZohoRecruitTagWithObjectDetails = ZohoRecruitTag & ZohoRecruitChangeObjectDetails;
@@ -9,10 +9,18 @@ export interface ZohoServerErrorResponseData {
9
9
  * A code used in some cases to denote success.
10
10
  */
11
11
  export declare const ZOHO_SUCCESS_CODE = "SUCCESS";
12
+ /**
13
+ * Lowercase status code
14
+ */
15
+ export declare const ZOHO_SUCCESS_STATUS = "success";
16
+ /**
17
+ * Set in the status field
18
+ */
19
+ export declare const ZOHO_ERROR_STATUS = "error";
12
20
  export type ZohoServerSuccessCode = typeof ZOHO_SUCCESS_CODE;
13
- export type ZohoServerSuccessStatus = 'success';
21
+ export type ZohoServerSuccessStatus = typeof ZOHO_SUCCESS_STATUS;
14
22
  export type ZohoServerErrorCode = string;
15
- export type ZohoServerErrorStatus = 'error';
23
+ export type ZohoServerErrorStatus = typeof ZOHO_ERROR_STATUS;
16
24
  /**
17
25
  * Zoho Server Error Data
18
26
  *