# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Admin API V1 Punch Out Session Accesses API version: 1.0.0 extends: openapi/optimizely-punch-out-session-accesses-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 9 - target: $.paths['/api/v1/admin/PunchOutSessionAccesses'].get update: x-apievangelist-phrasing: intent: List punchout session access records effect: read questions: - Which IP addresses have accessed my punchout sessions? - Can I filter punchout session accesses to one session? - How many punchout access records are logged? instructions: - text: List all punchout session accesses. - text: List punchout session accesses matching {filter}. slots: filter: query.$filter - text: Show the first {top} punchout session accesses ordered by {orderby}. slots: top: query.$top orderby: query.$orderby method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutSessionAccesses'].post update: x-apievangelist-phrasing: intent: Record a punchout session access effect: write questions: - How do I log an IP address against a punchout session? - Can I create a punchout access record for a specific session? instructions: - text: Record access from IP {ipAddress} on punchout session {punchOutSessionId}. slots: ipAddress: requestBody.ipAddress punchOutSessionId: requestBody.punchOutSessionId - text: Create a punchout session access for IP address {ipAddress}. slots: ipAddress: requestBody.ipAddress method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutSessionAccesses({id})'].get update: x-apievangelist-phrasing: intent: Get a punchout session access record effect: read questions: - What IP address is on a particular punchout access record? - Can I fetch one punchout session access by ID? instructions: - text: Get punchout session access {id}. slots: id: path.id - text: Show the IP and session of punchout access {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutSessionAccesses({id})'].put update: x-apievangelist-phrasing: intent: Replace a punchout session access record effect: write questions: - How do I overwrite a punchout access record in full? - Does replacing a punchout session access reset fields I omit? instructions: - text: Replace punchout session access {id} with IP address {ipAddress}. slots: id: path.id ipAddress: requestBody.ipAddress - text: Overwrite punchout access {id} so it belongs to session {punchOutSessionId}. slots: id: path.id punchOutSessionId: requestBody.punchOutSessionId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutSessionAccesses({id})'].delete update: x-apievangelist-phrasing: intent: Delete a punchout session access record effect: destructive questions: - Can I remove one punchout access record by ID? - Is it possible to delete a punchout session access only if its ETag matches? instructions: - text: Delete punchout session access {id}. slots: id: path.id - text: Delete punchout access {id} if its ETag is {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutSessionAccesses({id})'].patch update: x-apievangelist-phrasing: intent: Update a punchout session access record effect: write questions: - How do I correct the IP address on a punchout access record? - Can I change just one field of a punchout session access? instructions: - text: Change the IP address of punchout access {id} to {ipAddress}. slots: id: path.id ipAddress: requestBody.ipAddress - text: Move punchout session access {id} to session {punchOutSessionId}. slots: id: path.id punchOutSessionId: requestBody.punchOutSessionId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/PunchOutSessionAccesses/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get a blank punchout access template effect: read questions: - What default values does a new punchout session access have? - Can I fetch an empty punchout access template? instructions: - text: Fetch the default punchout session access template. - text: Show the starting values for a new punchout access record. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutsessionaccesses/delete'].delete update: x-apievangelist-phrasing: intent: Bulk delete punchout session accesses effect: destructive questions: - Can I clear out several punchout access records at once? - How do I bulk delete punchout session accesses by ID? instructions: - text: Bulk delete punchout session accesses {ids}. slots: ids: query.ids - text: 'Remove these punchout access records together: {ids}.' slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/punchoutsessionaccesses({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a punchout access effect: read questions: - Can I read a custom property stored on a punchout session access? - What extra custom values does a punchout access record carry? instructions: - text: Get custom property {custompropertyKey} on punchout session access {key}. slots: custompropertyKey: path.custompropertyKey key: path.key - text: Show punchout access {key}'s custom property {custompropertyKey}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26'