generated: '2026-08-17' method: generated source: openapi/lafourchette-b2b-api-openapi.yml, openapi/lafourchette-pos-api-openapi.yml 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: 21 by_action_class: acting: 10 connected: 11 by_consequence: write: 8 read: 11 safety-critical: 1 physical: 1 human_in_the_loop_required: 1 operations: - path: /v1/callCenter/callRecognitions method: post operationId: postV1CallCenterCallRecognitions x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/customers method: get operationId: getV1Customers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/customers/{id} method: get operationId: getV1CustomersId x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/integrationStatus method: patch operationId: patchV1IntegrationStatus x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/reservations method: get operationId: getV1Reservations x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reservations/{id} method: get operationId: getV1ReservationsId x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reservations/{id} method: patch operationId: patchV1ReservationsId x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/reservations/{id}/cancel method: patch operationId: patchV1ReservationsIdCancel x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/restaurants/{id}/availabilities method: get operationId: getV1RestaurantsIdAvailabilities x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/restaurants/{id}/availabilities/override method: put operationId: putV1RestaurantsIdAvailabilitiesOverride 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/restaurants/{id}/customers/phone/{phoneNumber} method: get operationId: getV1RestaurantsIdCustomersPhonePhoneNumber x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/restaurants/{id}/offers method: get operationId: getV1RestaurantsIdOffers x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/restaurants/{id}/partySizes method: get operationId: getV1RestaurantsIdPartySizes x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/restaurants/{id}/reservations method: post operationId: postV1RestaurantsIdReservations x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/restaurants/{id}/timeslots method: get operationId: getV1RestaurantsIdTimeslots x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reviews method: get operationId: getV1Reviews x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reviews/{id} method: get operationId: getV1ReviewsId x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reviews/{id}/reply method: put operationId: putV1ReviewsIdReply x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/create method: post operationId: postV1Create x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/orders/{orderUuid} method: put operationId: putV1OrdersOrderuuid x-agentic-access: action-class: acting consequence: physical subject: required audience: null token: max-ttl: 300 exchange: true purpose-required: true escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /v1/{posUuid}/logo method: put operationId: putV1PosuuidLogo x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required