Al-Farabi Kazakh National University Agentic Access
Al-Farabi Kazakh National University exposes 400 API operations that an AI agent could call, of which 184 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.
By consequence: 216 read, 176 write, 4 physical, and 4 safety-critical.
4 operations are classed safety-critical and should require human-in-the-loop approval at runtime.
Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.
By consequence
Highest-consequence actions
The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.
| Method | Path | Consequence | Human-in-loop |
|---|---|---|---|
| POST | /course_experience/v1/reset_course_deadlines | safety-critical | required |
| DELETE | /edx_proctoring/v1/proctored_exam/exam_id/{exam_id}/user_id/{user_id}/reset_attempts | safety-critical | required |
| POST | /program_enrollments/v1/integration-reset | safety-critical | required |
| POST | /user/v1/account/password_reset/token/validate/ | safety-critical | required |
| POST | /send_account_activation_email | physical | conditional |
| POST | /team/v0/bulk_team_membership/{course_id} | physical | conditional |
| POST | /team/v0/team_membership/ | physical | conditional |
| DELETE | /team/v0/team_membership/{team_id},{username} | physical | conditional |
Source
Agentic Access
generated: '2026-07-15'
method: generated
source: openapi/al-farabi-kazakh-national-university-open-edx.yaml
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: 400
by_action_class:
connected: 216
acting: 184
by_consequence:
read: 216
write: 176
safety-critical: 4
physical: 4
human_in_the_loop_required: 4
operations:
- path: /agreements/v1/integrity_signature/{course_id}
method: get
operationId: agreements_v1_integrity_signature_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /agreements/v1/integrity_signature/{course_id}
method: post
operationId: agreements_v1_integrity_signature_create
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: /agreements/v1/lti_pii_signature/{course_id}
method: post
operationId: agreements_v1_lti_pii_signature_create
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: /bookmarks/v1/bookmarks/
method: get
operationId: bookmarks_v1_bookmarks_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bookmarks/v1/bookmarks/
method: post
operationId: bookmarks_v1_bookmarks_create
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: /bookmarks/v1/bookmarks/{username},{usage_id}/
method: get
operationId: bookmarks_v1_bookmarks_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /bookmarks/v1/bookmarks/{username},{usage_id}/
method: delete
operationId: bookmarks_v1_bookmarks_delete
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: /certificates/v0/certificates/{username}/
method: get
operationId: certificates_v0_certificates_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /certificates/v0/certificates/{username}/courses/{course_id}/
method: get
operationId: certificates_v0_certificates_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /change_email_settings
method: post
operationId: change_email_settings_create
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: /cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}
method: get
operationId: cohorts_v1_courses_cohorts_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}
method: post
operationId: cohorts_v1_courses_cohorts_create
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: /cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}
method: patch
operationId: cohorts_v1_courses_cohorts_partial_update
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: /cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}/users/{username}
method: get
operationId: cohorts_v1_courses_cohorts_users_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}/users/{username}
method: post
operationId: cohorts_v1_courses_cohorts_users_create
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: /cohorts/v1/courses/{course_key_string}/cohorts/{cohort_id}/users/{username}
method: delete
operationId: cohorts_v1_courses_cohorts_users_delete
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: /cohorts/v1/courses/{course_key_string}/users
method: post
operationId: cohorts_v1_courses_users_create
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: /cohorts/v1/settings/{course_key_string}
method: get
operationId: cohorts_v1_settings_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /cohorts/v1/settings/{course_key_string}
method: put
operationId: cohorts_v1_settings_update
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: /commerce/v0/baskets/
method: post
operationId: commerce_v0_baskets_create
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: /commerce/v0/baskets/{basket_id}/order/
method: get
operationId: commerce_v0_baskets_order_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /commerce/v1/courses/
method: get
operationId: commerce_v1_courses_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /commerce/v1/courses/{course_id}/
method: get
operationId: commerce_v1_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /commerce/v1/courses/{course_id}/
method: put
operationId: commerce_v1_courses_update
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: /commerce/v1/courses/{course_id}/
method: patch
operationId: commerce_v1_courses_partial_update
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: /commerce/v1/orders/{number}/
method: get
operationId: commerce_v1_orders_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /completion/v1/completion-batch
method: post
operationId: completion_v1_completion-batch_create
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: /completion/v1/subsection-completion/{username}/{course_key}/{subsection_id}
method: get
operationId: completion_v1_subsection-completion_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_experience/v1/course_deadlines_info/{course_key_string}
method: get
operationId: course_experience_v1_course_deadlines_info_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_experience/v1/reset_course_deadlines
method: post
operationId: course_experience_v1_reset_course_deadlines_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: /course_home/course_metadata/{course_key_string}
method: get
operationId: course_home_course_metadata_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/dates/{course_key_string}
method: get
operationId: course_home_dates_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/dismiss_welcome_message
method: post
operationId: course_home_dismiss_welcome_message_create
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: /course_home/navigation/{course_key_string}
method: get
operationId: course_home_navigation_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/outline/{course_key_string}
method: get
operationId: course_home_outline_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/progress/{course_key_string}
method: get
operationId: course_home_progress_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/progress/{course_key_string}/{student_id}
method: get
operationId: course_home_progress_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/save_course_goal
method: post
operationId: course_home_save_course_goal_create
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: /course_home/unsubscribe_from_course_goal/{token}
method: post
operationId: course_home_unsubscribe_from_course_goal_create
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: /course_home/v1/course_metadata/{course_key_string}
method: get
operationId: course_home_v1_course_metadata_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/v1/dates/{course_key_string}
method: get
operationId: course_home_v1_dates_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/v1/dismiss_welcome_message
method: post
operationId: course_home_v1_dismiss_welcome_message_create
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: /course_home/v1/navigation/{course_key_string}
method: get
operationId: course_home_v1_navigation_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/v1/outline/{course_key_string}
method: get
operationId: course_home_v1_outline_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/v1/progress/{course_key_string}
method: get
operationId: course_home_v1_progress_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/v1/progress/{course_key_string}/{student_id}
method: get
operationId: course_home_v1_progress_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_home/v1/save_course_goal
method: post
operationId: course_home_v1_save_course_goal_create
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: /course_home/v1/unsubscribe_from_course_goal/{token}
method: post
operationId: course_home_v1_unsubscribe_from_course_goal_create
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: /course_live/course/{course_id}/
method: get
operationId: course_live_course_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_live/course/{course_id}/
method: post
operationId: course_live_course_create
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: /course_live/iframe/{course_id}/
method: get
operationId: course_live_iframe_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_live/providers/{course_id}/
method: get
operationId: course_live_providers_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_modes/v1/courses/{course_id}/
method: get
operationId: course_modes_v1_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_modes/v1/courses/{course_id}/
method: post
operationId: course_modes_v1_courses_create
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: /course_modes/v1/courses/{course_id}/{mode_slug}
method: get
operationId: course_modes_v1_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /course_modes/v1/courses/{course_id}/{mode_slug}
method: patch
operationId: course_modes_v1_courses_partial_update
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: /course_modes/v1/courses/{course_id}/{mode_slug}
method: delete
operationId: course_modes_v1_courses_delete
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: /courses/v1/block_metadata/{usage_key_string}
method: get
operationId: courses_v1_block_metadata_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v1/blocks/
method: get
operationId: courses_v1_blocks_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v1/blocks/{usage_key_string}
method: get
operationId: courses_v1_blocks_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v1/course_ids/
method: get
operationId: courses_v1_course_ids_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v1/courses/
method: get
operationId: courses_v1_courses_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v1/courses/{course_key_string}
method: get
operationId: courses_v1_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v2/block_metadata/{usage_key_string}
method: get
operationId: courses_v2_block_metadata_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v2/blocks/
method: get
operationId: courses_v2_blocks_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courses/v2/blocks/{usage_key_string}
method: get
operationId: courses_v2_blocks_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courseware/celebration/{course_key_string}
method: post
operationId: courseware_celebration_create
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: /courseware/course/{course_key_string}
method: get
operationId: courseware_course_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courseware/resume/{course_key_string}
method: get
operationId: courseware_resume_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /courseware/sequence/{usage_key_string}
method: get
operationId: courseware_sequence_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit/v1/courses/
method: get
operationId: credit_v1_courses_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit/v1/courses/
method: post
operationId: credit_v1_courses_create
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: /credit/v1/courses/{course_key}/
method: get
operationId: credit_v1_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit/v1/courses/{course_key}/
method: put
operationId: credit_v1_courses_update
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: /credit/v1/courses/{course_key}/
method: patch
operationId: credit_v1_courses_partial_update
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: /credit/v1/eligibility/
method: get
operationId: credit_v1_eligibility_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit/v1/providers/
method: get
operationId: credit_v1_providers_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit/v1/providers/{provider_id}/
method: get
operationId: credit_v1_providers_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /credit/v1/providers/{provider_id}/callback/
method: post
operationId: credit_v1_providers_callback_create
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: /credit/v1/providers/{provider_id}/request/
method: post
operationId: credit_v1_providers_request_create
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: /dashboard/v0/programs/{enterprise_uuid}/
method: get
operationId: dashboard_v0_programs_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /dashboard/v0/programs/{program_uuid}/progress_details/
method: get
operationId: dashboard_v0_programs_progress_details_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discounts/course/{course_key_string}
method: get
operationId: discounts_course_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discounts/user/{user_id}/course/{course_key_string}
method: get
operationId: discounts_user_course_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/accounts/replace_username
method: post
operationId: discussion_v1_accounts_replace_username_create
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: /discussion/v1/accounts/retire_forum/
method: post
operationId: discussion_v1_accounts_retire_forum_create
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: /discussion/v1/comments/
method: get
operationId: discussion_v1_comments_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/comments/
method: post
operationId: discussion_v1_comments_create
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: /discussion/v1/comments/{comment_id}/
method: get
operationId: discussion_v1_comments_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/comments/{comment_id}/
method: patch
operationId: discussion_v1_comments_partial_update
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: /discussion/v1/comments/{comment_id}/
method: delete
operationId: discussion_v1_comments_delete
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: /discussion/v1/course_topics/{course_id}
method: get
operationId: discussion_v1_course_topics_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/courses/{course_id}
method: get
operationId: discussion_v1_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/courses/{course_id}/learner/
method: get
operationId: discussion_v1_courses_learner_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/courses/{course_id}/roles/{rolename}/
method: get
operationId: discussion_v1_courses_roles_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/courses/{course_id}/roles/{rolename}/
method: post
operationId: discussion_v1_courses_roles_create
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: /discussion/v1/courses/{course_id}/settings
method: get
operationId: discussion_v1_courses_settings_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/courses/{course_id}/settings
method: patch
operationId: discussion_v1_courses_settings_partial_update
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: /discussion/v1/courses/{course_id}/upload
method: post
operationId: discussion_v1_courses_upload_create
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: /discussion/v1/courses/{course_key_string}/activity_stats
method: get
operationId: discussion_v1_courses_activity_stats_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/threads/
method: get
operationId: discussion_v1_threads_list
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/threads/
method: post
operationId: discussion_v1_threads_create
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: /discussion/v1/threads/{thread_id}/
method: get
operationId: discussion_v1_threads_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v1/threads/{thread_id}/
method: patch
operationId: discussion_v1_threads_partial_update
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: /discussion/v1/threads/{thread_id}/
method: delete
operationId: discussion_v1_threads_delete
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: /discussion/v2/course_topics/{course_id}
method: get
operationId: discussion_v2_course_topics_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v2/courses/{course_id}
method: get
operationId: discussion_v2_courses_read
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /discussion/v3/course_topics/{course_id}
method: get
operationId: discussion_v3_course_topics_read
x-
# --- truncated at 32 KB (123 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/al-farabi-kazakh-national-university/refs/heads/main/agentic-access/al-farabi-kazakh-national-university-agentic-access.yml