generated: '2026-10-02' method: generated source: openapi/epicdirectories-openapi.json description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 206 by_action_class: connected: 86 acting: 120 by_consequence: read: 86 safety-critical: 120 human_in_the_loop_required: 120 operations: - path: /v1/auth/session method: get operationId: AuthController_getSession x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/health method: get operationId: HealthController_check x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/health/ready method: get operationId: HealthController_ready x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/templates method: get operationId: DirectoriesController_listTemplates x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/from-template method: post operationId: DirectoriesController_createFromTemplate x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories method: post operationId: DirectoriesController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories method: get operationId: DirectoriesController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId} method: get operationId: DirectoriesController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId} method: patch operationId: DirectoriesController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId} method: delete operationId: DirectoriesController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/turnstile method: get operationId: DirectoryTurnstileController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/turnstile method: put operationId: DirectoryTurnstileController_set x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/turnstile method: delete operationId: DirectoryTurnstileController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/turnstile/provision method: post operationId: DirectoryTurnstileController_provision x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/submissions method: post operationId: SubmissionsController_createSuggestion x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/submissions method: get operationId: SubmissionsReviewController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/feedback method: post operationId: SubmissionsController_createFeedback x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/submissions method: get operationId: SubmissionsAdminController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/submissions/{submissionId} method: get operationId: SubmissionsAdminController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/submissions/{submissionId}/accept method: post operationId: SubmissionsAdminController_accept x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/submissions/{submissionId}/reject method: post operationId: SubmissionsAdminController_reject x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/submissions/{submissionId} method: get operationId: SubmissionsReviewController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/submissions/{submissionId}/accept method: post operationId: SubmissionsReviewController_accept x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/submissions/{submissionId}/reject method: post operationId: SubmissionsReviewController_reject x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/webhooks method: get operationId: WebhooksController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/webhooks method: post operationId: WebhooksController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/webhooks/{webhookId} method: get operationId: WebhooksController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/webhooks/{webhookId} method: patch operationId: WebhooksController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/webhooks/{webhookId} method: delete operationId: WebhooksController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/webhooks/{webhookId}/test method: post operationId: WebhooksController_test x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/api-keys method: post operationId: ApiKeysController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/api-keys method: get operationId: ApiKeysController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/api-keys/{keyId} method: get operationId: ApiKeysController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/api-keys/{keyId} method: patch operationId: ApiKeysController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/api-keys/{keyId} method: delete operationId: ApiKeysController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings method: post operationId: ListingsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings method: get operationId: ListingsController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId} method: get operationId: ListingsController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId} method: patch operationId: ListingsController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId} method: delete operationId: ListingsController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/attribute-templates method: post operationId: AttributeTemplatesController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/attribute-templates method: get operationId: AttributeTemplatesController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/attribute-templates/{templateId} method: get operationId: AttributeTemplatesController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/attribute-templates/{templateId} method: patch operationId: AttributeTemplatesController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/attribute-templates/{templateId} method: delete operationId: AttributeTemplatesController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/taxonomies method: post operationId: TaxonomiesController_createTaxonomy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/taxonomies method: get operationId: TaxonomiesController_findAllTaxonomies x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId} method: get operationId: TaxonomiesController_findOneTaxonomy x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId} method: patch operationId: TaxonomiesController_updateTaxonomy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId} method: delete operationId: TaxonomiesController_removeTaxonomy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId}/terms method: post operationId: TaxonomiesController_createTerm x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId}/terms method: get operationId: TaxonomiesController_findAllTerms x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId}/terms/{termId} method: get operationId: TaxonomiesController_findOneTerm x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId}/terms/{termId} method: patch operationId: TaxonomiesController_updateTerm x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/taxonomies/{taxonomyId}/terms/{termId} method: delete operationId: TaxonomiesController_removeTerm x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/attributes method: get operationId: ListingAttributesController_getAttributes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId}/attributes method: put operationId: ListingAttributesController_setAttributes x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/attributes/{templateId} method: delete operationId: ListingAttributesController_deleteAttribute x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/bulk/attributes method: post operationId: ListingAttributesController_bulkSetAttributes x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/terms method: get operationId: ListingAttributesController_getTerms x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId}/terms method: put operationId: ListingAttributesController_setTerms x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/jobs method: post operationId: JobsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/jobs method: get operationId: JobsController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/jobs/{jobId} method: get operationId: JobsController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/jobs/{jobId}/cancel method: post operationId: JobsController_cancel x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/jobs/{jobId}/retry method: post operationId: JobsController_retry x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/recipes method: post operationId: RecipesController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/recipes method: get operationId: RecipesController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/recipes/{recipeId} method: get operationId: RecipesController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/recipes/{recipeId} method: patch operationId: RecipesController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/recipes/{recipeId} method: delete operationId: RecipesController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/recipes/{recipeId}/preview method: get operationId: RecipesController_preview x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory} method: get operationId: PublicApiController_getDirectory x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory} method: patch operationId: PublicApiController_updateDirectory x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/me method: get operationId: PublicApiController_describeKey x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/taxonomies method: post operationId: PublicApiController_createTaxonomy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/taxonomies method: get operationId: PublicApiController_listTaxonomies x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/taxonomies/{taxonomy}/terms method: post operationId: PublicApiController_createTerm x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/taxonomies/{taxonomy}/terms method: get operationId: PublicApiController_listTaxonomyTerms x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/turnstile method: get operationId: PublicApiController_getTurnstile x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/turnstile/provision method: post operationId: PublicApiController_provisionTurnstile x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/attribute-templates method: post operationId: PublicApiController_createAttributeTemplate x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/attribute-templates method: get operationId: PublicApiController_listAttributeTemplates x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/attribute-templates/{template} method: get operationId: PublicApiController_getAttributeTemplate x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/attribute-templates/{template} method: patch operationId: PublicApiController_updateAttributeTemplate x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/attribute-templates/{template} method: delete operationId: PublicApiController_deleteAttributeTemplate x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug} method: delete operationId: PublicApiController_archiveListing x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug} method: get operationId: PublicApiController_getListingByTypeSlug x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug} method: patch operationId: PublicApiController_updateListing x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/export method: get operationId: PublicApiController_exportDirectory x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings method: get operationId: PublicApiController_getListings x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings method: post operationId: PublicApiController_createListing x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/bulk method: get operationId: PublicApiController_getListingsBulk x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/bulk method: post operationId: PublicApiController_bulkUpsertListings x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listing} method: get operationId: PublicApiController_getListing x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/recipes method: get operationId: PublicApiController_listRecipes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/recipes method: post operationId: PublicApiController_createRecipe x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/recipes/{recipe}/definition method: get operationId: PublicApiController_getRecipeDefinition x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/recipes/{recipe} method: patch operationId: PublicApiController_updateRecipe x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/recipes/{recipe} method: delete operationId: PublicApiController_deleteRecipe x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/recipes/{recipe} method: get operationId: PublicApiController_executeRecipe x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/jobs method: get operationId: PublicApiController_listJobs x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/jobs method: post operationId: PublicApiController_createJob x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/jobs/{jobId} method: get operationId: PublicApiController_getJob x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/jobs/{jobId}/cancel method: post operationId: PublicApiController_cancelJob x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/jobs/{jobId}/retry method: post operationId: PublicApiController_retryJob x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/taxonomies/{taxonomy}/terms/{term} method: get operationId: PublicApiController_getTaxonomyTerm x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/taxonomies/{taxonomy}/terms/{term} method: patch operationId: PublicApiController_updateTerm x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/taxonomies/{taxonomy}/terms/{term} method: delete operationId: PublicApiController_deleteTerm x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/taxonomies/{taxonomy}/resolve method: get operationId: PublicApiController_resolveTerm x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/taxonomies/{taxonomy}/resolve-batch method: post operationId: PublicApiController_resolveTermsBatch x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/taxonomies/{taxonomy} method: get operationId: PublicApiController_getTaxonomy x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/taxonomies/{taxonomy} method: patch operationId: PublicApiController_updateTaxonomy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/taxonomies/{taxonomy} method: delete operationId: PublicApiController_deleteTaxonomy x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/batch method: post operationId: PublicApiController_batchListings x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listing-aliases method: get operationId: PublicApiController_listSlugAliases x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listing-aliases/{listingType}/{listingSlug} method: delete operationId: PublicApiController_deleteSlugAlias x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/attributes method: put operationId: PublicApiController_setAttributes x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/terms method: put operationId: PublicApiController_setTerms x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/terms method: patch operationId: PublicApiController_patchTerms x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/snapshots method: get operationId: PublicApiController_getSnapshots x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/snapshots method: post operationId: PublicApiController_createSnapshot x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/snapshots/latest/{source} method: get operationId: PublicApiController_getLatestSnapshot x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/snapshots/{snapshotId} method: get operationId: PublicApiController_getSnapshot x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/snapshots/{snapshotId} method: delete operationId: PublicApiController_deleteSnapshot x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/enrich method: post operationId: PublicApiController_enrichListing x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/site-probes/sweep method: post operationId: PublicApiController_sweepProbes x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/site-probes/dead-links method: get operationId: PublicApiController_deadLinks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/screenshots method: post operationId: PublicApiController_sweepScreenshots x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/screenshots method: get operationId: PublicApiController_screenshotCoverage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/research method: post operationId: PublicApiController_sweepResearch x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/research method: get operationId: PublicApiController_researchCoverage x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/screening method: get operationId: PublicApiController_screeningReport x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/screening/apply method: post operationId: PublicApiController_screeningApply x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/media method: get operationId: PublicApiController_listMedia x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/media method: post operationId: PublicApiController_createMedia x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/media/upload method: post operationId: PublicApiController_uploadMedia x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/media/{assetId}/reprocess method: post operationId: PublicApiController_reprocessMedia x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/media/{assetId} method: patch operationId: PublicApiController_updateMedia x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/media/{assetId} method: delete operationId: PublicApiController_deleteMedia x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/webhooks method: get operationId: PublicApiController_listWebhooks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/webhooks method: post operationId: PublicApiController_createWebhook x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/webhooks/{webhookId} method: get operationId: PublicApiController_getWebhook x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/webhooks/{webhookId} method: patch operationId: PublicApiController_updateWebhook x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/webhooks/{webhookId} method: delete operationId: PublicApiController_deleteWebhook x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/webhooks/{webhookId}/test method: post operationId: PublicApiController_testWebhook x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/media method: post operationId: MediaAssetsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/media method: get operationId: MediaAssetsController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId}/media/upload method: post operationId: MediaAssetsController_uploadFile x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/media/bulk method: post operationId: MediaAssetsController_bulkCreate x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/media/{assetId} method: get operationId: MediaAssetsController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId}/media/{assetId} method: patch operationId: MediaAssetsController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/media/{assetId} method: delete operationId: MediaAssetsController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/site-probes/dead-links method: get operationId: SiteProbesController_deadLinks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/site-probes/sweep method: post operationId: SiteProbesController_sweep x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/screening method: get operationId: ScreeningController_report x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/screening/apply method: post operationId: ScreeningController_apply x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/snapshots method: post operationId: SourceSnapshotsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/listings/{listingId}/snapshots method: get operationId: SourceSnapshotsController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId}/snapshots/latest/{source} method: get operationId: SourceSnapshotsController_findLatestBySource x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId}/snapshots/{snapshotId} method: get operationId: SourceSnapshotsController_findOne x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/listings/{listingId}/snapshots/{snapshotId} method: delete operationId: SourceSnapshotsController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/domains method: post operationId: DomainsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/domains method: get operationId: DomainsController_findAll x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/domains/{domainId}/primary method: post operationId: DomainsController_setPrimary x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/domains/{domainId}/verify method: post operationId: DomainsController_verifyDns x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/domains/{domainId} method: delete operationId: DomainsController_remove x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/reviews method: post operationId: ReviewsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/reviews method: get operationId: ReviewsReadController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/reviews method: get operationId: ReviewsModerationController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/reviews/{reviewId} method: get operationId: ReviewsModerationController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/reviews/{reviewId}/approve method: post operationId: ReviewsModerationController_approve x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/reviews/{reviewId}/reject method: post operationId: ReviewsModerationController_reject x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/reviews method: get operationId: ReviewsAdminController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/reviews/{reviewId} method: get operationId: ReviewsAdminController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/reviews/{reviewId}/approve method: post operationId: ReviewsAdminController_approve x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/reviews/{reviewId}/reject method: post operationId: ReviewsAdminController_reject x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/comments method: post operationId: CommentsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/comments method: get operationId: CommentsReadController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/comment-queue method: get operationId: CommentsModerationController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/comment-queue/{commentId} method: get operationId: CommentsModerationController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/comment-queue/{commentId}/approve method: post operationId: CommentsModerationController_approve x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/comment-queue/{commentId}/reject method: post operationId: CommentsModerationController_reject x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/comment-queue/{commentId}/reply method: put operationId: CommentsModerationController_reply x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/comments method: get operationId: CommentsAdminController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/comments/{commentId} method: get operationId: CommentsAdminController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/comments/{commentId}/approve method: post operationId: CommentsAdminController_approve x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/comments/{commentId}/reject method: post operationId: CommentsAdminController_reject x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/comments/{commentId}/reply method: put operationId: CommentsAdminController_reply x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/offers method: get operationId: PaymentsController_offers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/checkout method: post operationId: PaymentsController_create x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/checkout/{kind} method: post operationId: PaymentsController_createContent x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/payments method: get operationId: PaymentsAdminController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/featured method: post operationId: PaymentsAdminController_grant x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/listings/{listingType}/{listingSlug}/featured method: delete operationId: PaymentsAdminController_revoke x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/payments method: get operationId: PaymentsOperatorController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/payments/featured/{listingType}/{listingSlug} method: post operationId: PaymentsOperatorController_grant x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/payments/featured/{listingType}/{listingSlug} method: delete operationId: PaymentsOperatorController_revoke x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/orders method: get operationId: OrdersAdminController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/orders method: post operationId: OrdersAdminController_createComped x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /public/v1/directories/{directory}/orders/{orderId} method: get operationId: OrdersAdminController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /public/v1/directories/{directory}/orders/{orderId} method: patch operationId: OrdersAdminController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/orders method: get operationId: OrdersOperatorController_list x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/orders method: post operationId: OrdersOperatorController_createComped x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required - path: /v1/directories/{directoryId}/orders/{orderId} method: get operationId: OrdersOperatorController_get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/directories/{directoryId}/orders/{orderId} method: patch operationId: OrdersOperatorController_update x-agentic-access: action-class: acting consequence: safety-critical subject: required audience: null token: max-ttl: 120 exchange: true purpose-required: true proof-of-possession: true escalation: human-in-the-loop: required audit: required