Al-Farabi Kazakh National University Agentic Access

x-agentic-access generated

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.

EducationHigher EducationUniversityResearchLibraryOpen EducationKazakhstanCentral Asia
Operations: 400 Acting: 184 Human-in-the-loop: 4 Method: generated

By consequence

read 216 write 176 physical 4 safety-critical 4

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.

MethodPathConsequenceHuman-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

Raw ↑
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