@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
68 lines • 3.18 kB
JavaScript
import { z } from 'zod';
import { BaseResponseSchema } from '../../../core/schemas';
// Create response schemas using BaseResponseSchema directly
const UnknownResponseSchema = BaseResponseSchema(z.unknown());
/**
* Creates the metaFiles resource methods
* OpenAPI Path: /meta-files → metaFiles.*
* @description Site metadata and SEO file management for agricultural content discovery
*/
export function createMetaFilesResource(executeRequest) {
return {
/**
* Robots.txt file operations
*/
robots: {
/**
* Get robots.txt configuration for search engine crawling
* @description Retrieves the robots.txt file configuration for controlling search engine access to agricultural content
* @fullPath api.agrSite.metaFiles.robots.get
* @service agr-site
* @domain seo-management
* @dataMethod metaFilesData.robots.get - returns only the robots.txt content without metadata
* @discoverable true
* @searchTerms ["robots.txt", "SEO", "search engine optimization", "crawler configuration", "site meta", "web crawling"]
* @relatedEndpoints ["api.agrSite.settings.list", "api.agrSite.fyxerTranscript.list"]
* @commonPatterns ["Get SEO configuration", "Retrieve crawler rules", "Access robots.txt", "Site metadata management"]
* @workflow ["seo-management", "site-configuration", "search-optimization"]
* @prerequisites ["Valid authentication token", "Meta files access permissions"]
* @nextSteps ["Configure SEO settings", "Update crawler permissions"]
* @businessRules ["Controls agricultural content visibility", "Respects SEO best practices", "Configurable per site"]
* @functionalArea "site-content-and-ai-processing"
* @caching "Cache for 1 hour, invalidate on SEO configuration changes"
* @performance "Static file retrieval, very fast response"
* @returns Promise<BaseResponse<unknown>> Complete response with robots.txt content and configuration
* @example
* ```typescript
* const robotsConfig = await client.metaFiles.robots.get();
* const robotsData = await client.metaFilesData.robots.get();
* ```
*/
get: async () => {
return executeRequest({
method: 'GET',
path: '/meta-files/robots',
responseSchema: UnknownResponseSchema,
}, undefined);
},
},
};
}
/**
* Creates the metaFilesData resource methods (data-only versions)
*/
export function createMetaFilesDataResource(metaFiles) {
return {
robots: {
/**
* Get robots.txt data without response metadata
* @returns Promise<unknown> Robots.txt content directly
*/
get: async () => {
const response = await metaFiles.robots.get();
return response.data;
},
},
};
}
//# sourceMappingURL=meta-files.js.map