@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
75 lines • 3.92 kB
JavaScript
import { ScheduledImportSftpParamsSchema } from '../schemas';
import { BaseResponseSchema } from '../../../core/schemas';
import { z } from 'zod';
// Create flexible response schema using the STANDARD 8-field response format
const UnknownResponseSchema = BaseResponseSchema(z.unknown());
/**
* Creates the scheduledImportMaster resource methods
* OpenAPI Path: /scheduled-import-master → scheduledImportMaster.*
* @description Methods for scheduled import master operations
*/
export function createScheduledImportMasterResource(executeRequest) {
return {
/**
* Metadata operations for scheduled import master
* @fullPath api.p21Sism.scheduledImportMaster.metadata
* @service p21-sism
* @domain scheduled-import-management
* @discoverable true
*/
metadata: {
/**
* SFTP operations for scheduled import master metadata
* @fullPath api.p21Sism.scheduledImportMaster.metadata.sftp
* @service p21-sism
* @domain scheduled-import-management
* @discoverable true
*/
sftp: {
/**
* Create SFTP metadata for a scheduled import master configuration
*
* @fullPath api.p21Sism.scheduledImportMaster.metadata.sftp.create
* @service p21-sism
* @domain scheduled-import-management
* @dataMethod scheduledImportMasterData.metadata.sftp.create
* @discoverable true
* @searchTerms ["SFTP metadata", "scheduled import", "import master", "SFTP configuration", "automated import", "file transfer"]
* @relatedEndpoints ["api.p21Sism.import.list", "api.p21Sism.import.recent.list", "api.p21Core.company"]
* @commonPatterns ["Configure SFTP import", "Setup automated data transfer", "Scheduled import configuration", "File transfer setup"]
* @workflow ["sftp-configuration", "scheduled-imports", "automated-processing", "file-transfer-setup"]
* @prerequisites ["Valid scheduled import master UID", "SFTP configuration permissions", "Scheduled import master exists"]
* @nextSteps ["api.p21Sism.import.recent.list to monitor scheduled imports", "SFTP file monitoring systems"]
* @businessRules ["SFTP metadata defines transfer parameters", "Scheduled import master must be configured", "File transfer validation rules apply"]
* @functionalArea "scheduled-import-management"
* @performance "Configuration operation, minimal processing overhead"
*
* @param scheduledImportMasterUid Scheduled import master UID parameter
* @returns Promise<BaseResponse<unknown>> Complete response with SFTP metadata configuration
*/
create: async (scheduledImportMasterUid) => executeRequest({
method: 'POST',
path: '/scheduled-import-master/{scheduledImportMasterUid}/metadata/sftp',
paramsSchema: ScheduledImportSftpParamsSchema,
responseSchema: UnknownResponseSchema,
}, { scheduledImportMasterUid }, { scheduledImportMasterUid }),
},
},
};
}
/**
* Creates the scheduledImportMasterData resource methods (data-only versions)
*/
export function createScheduledImportMasterDataResource(scheduledImportMaster) {
return {
metadata: {
sftp: {
create: async (scheduledImportMasterUid) => {
const response = await scheduledImportMaster.metadata.sftp.create(scheduledImportMasterUid);
return response.data;
},
},
},
};
}
//# sourceMappingURL=scheduled-import-master.js.map