{
  "consumer": {
    "name": "frontend-app-learning"
  },
  "provider": {
    "name": "lms"
  },
  "interactions": [
    {
      "description": "a request to fetch tab",
      "providerState": "Tab data exists for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/course_home/v1/course_metadata/course-v1:edX+DemoX+Demo_Course"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "can_show_upgrade_sock": false,
          "verified_mode": {
            "access_expiration_date": null,
            "currency": "USD",
            "currency_symbol": "$",
            "price": 149,
            "sku": "8CF08E5",
            "upgrade_url": "http://localhost:18130/basket/add/?sku=8CF08E5"
          },
          "celebrations": {
            "first_section": false,
            "streak_length_to_celebrate": null,
            "streak_discount_enabled": false
          },
          "course_access": {
            "has_access": true,
            "error_code": null,
            "developer_message": null,
            "user_message": null,
            "additional_context_user_message": null,
            "user_fragment": null
          },
          "course_id": "course-v1:edX+DemoX+Demo_Course",
          "is_enrolled": true,
          "is_self_paced": false,
          "is_staff": true,
          "number": "DemoX",
          "org": "edX",
          "original_user_is_staff": true,
          "start": "2013-02-05T05:00:00Z",
          "tabs": [
            {
              "tab_id": "courseware",
              "title": "Course",
              "url": "http://localhost:2000/course/course-v1:edX+DemoX+Demo_Course/home"
            }
          ],
          "title": "Demonstration Course",
          "username": "edx"
        },
        "matchingRules": {
          "$.body.can_show_upgrade_sock": {
            "match": "type"
          },
          "$.body.verified_mode": {
            "match": "type"
          },
          "$.body.celebrations": {
            "match": "type"
          },
          "$.body.course_access.has_access": {
            "match": "type"
          },
          "$.body.course_id": {
            "match": "regex",
            "regex": "[\\w\\-~.:]"
          },
          "$.body.is_enrolled": {
            "match": "type"
          },
          "$.body.is_self_paced": {
            "match": "type"
          },
          "$.body.is_staff": {
            "match": "type"
          },
          "$.body.number": {
            "match": "type"
          },
          "$.body.org": {
            "match": "type"
          },
          "$.body.original_user_is_staff": {
            "match": "type"
          },
          "$.body.start": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.tabs": {
            "min": 1
          },
          "$.body.tabs[*].*": {
            "match": "type"
          },
          "$.body.title": {
            "match": "type"
          },
          "$.body.username": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to fetch dates tab",
      "providerState": "course date blocks exist for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/course_home/v1/dates/course-v1:edX+DemoX+Demo_Course"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "dates_banner_info": {
            "missed_deadlines": false,
            "content_type_gating_enabled": false,
            "missed_gated_content": false,
            "verified_upgrade_link": "http://localhost:18130/basket/add/?sku=8CF08E5"
          },
          "course_date_blocks": [
            {
              "assignment_type": null,
              "complete": null,
              "date": "2013-02-05T05:00:00Z",
              "date_type": "verified-upgrade-deadline",
              "description": "You are still eligible to upgrade to a Verified Certificate! Pursue it to highlight the knowledge and skills you gain in this course.",
              "learner_has_access": true,
              "link": "http://localhost:18130/basket/add/?sku=8CF08E5",
              "link_text": "Upgrade to Verified Certificate",
              "title": "Verification Upgrade Deadline",
              "extra_info": null,
              "first_component_block_id": ""
            }
          ],
          "has_ended": false,
          "learner_is_full_access": true,
          "user_timezone": null
        },
        "matchingRules": {
          "$.body.dates_banner_info": {
            "match": "type"
          },
          "$.body.course_date_blocks": {
            "min": 1
          },
          "$.body.course_date_blocks[*].*": {
            "match": "type"
          },
          "$.body.course_date_blocks[*].date": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.course_date_blocks[*].date_type": {
            "match": "regex",
            "regex": "^(event|todays-date|course-start-date|course-end-date|assignment-due-date|course-expired-date|certificate-available-date|verified-upgrade-deadline|verification-deadline-date)$"
          },
          "$.body.has_ended": {
            "match": "type"
          },
          "$.body.learner_is_full_access": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to get course blocks",
      "providerState": "Blocks data exists for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/courses/v2/blocks/",
        "query": "course_id=course-v1%3AedX%2BDemoX%2BDemo_Course&username=Mock+User&depth=3&requested_fields=children%2Ceffort_activities%2Ceffort_time%2Cshow_gated_sections%2Cgraded%2Cspecial_exam_info%2Chas_scheduled_content"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "root": "block-v1:edX+DemoX+Demo_Course+type@course+block@course",
          "blocks": {
            "block-v1:edX+DemoX+Demo_Course+type@course+block@course": {
              "id": "block-v1:edX+DemoX+Demo_Course+type@course+block@course",
              "block_id": "course",
              "lms_web_url": "/courses/course-v1:edX+DemoX+Demo_Course/jump_to/block-v1:edX+DemoX+Demo_Course+type@course+block@course",
              "legacy_web_url": "/courses/course-v1:edX+DemoX+Demo_Course/jump_to/block-v1:edX+DemoX+Demo_Course+type@course+block@course?experience=legacy",
              "student_view_url": "/xblock/block-v1:edX+DemoX+Demo_Course+type@course+block@course",
              "type": "course",
              "display_name": "Demonstration Course"
            }
          }
        },
        "matchingRules": {
          "$.body.root": {
            "match": "type"
          },
          "$.body.blocks": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to get course metadata",
      "providerState": "course metadata exists for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/courseware/course/course-v1:edX+DemoX+Demo_Course",
        "query": "browser_timezone=Asia%2FKarachi"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "access_expiration": {
            "expiration_date": "2013-02-05T05:00:00Z",
            "masquerading_expired_course": false,
            "upgrade_deadline": "2013-02-05T05:00:00Z",
            "upgrade_url": "link"
          },
          "can_show_upgrade_sock": false,
          "content_type_gating_enabled": false,
          "end": "2013-02-05T05:00:00Z",
          "enrollment": {
            "mode": "audit",
            "is_active": true
          },
          "enrollment_start": "2013-02-05T05:00:00Z",
          "enrollment_end": "2013-02-05T05:00:00Z",
          "id": "course-v1:edX+DemoX+Demo_Course",
          "license": "all-rights-reserved",
          "name": "Demonstration Course",
          "number": "DemoX",
          "offer": {
            "code": "code",
            "expiration_date": "2013-02-05T05:00:00Z",
            "original_price": "$99",
            "discounted_price": "$99",
            "percentage": 50,
            "upgrade_url": "url"
          },
          "org": "edX",
          "related_programs": null,
          "short_description": "",
          "start": "2013-02-05T05:00:00Z",
          "tabs": [
            {
              "title": "Course",
              "slug": "courseware",
              "priority": 0,
              "type": "courseware",
              "url": "http://localhost:2000/course/course-v1:edX+DemoX+Demo_Course/home"
            }
          ],
          "user_timezone": null,
          "verified_mode": {
            "access_expiration_date": "2013-02-05T05:00:00Z",
            "currency": "USD",
            "currency_symbol": "$",
            "price": 149,
            "sku": "8CF08E5",
            "upgrade_url": "http://localhost:18130/basket/add/?sku=8CF08E5"
          },
          "show_calculator": false,
          "original_user_is_staff": true,
          "is_staff": true,
          "course_access": {
            "has_access": true,
            "error_code": null,
            "developer_message": null,
            "user_message": null,
            "additional_context_user_message": null,
            "user_fragment": null
          },
          "notes": {
            "enabled": false,
            "visible": true
          },
          "marketing_url": null,
          "celebrations": {
            "first_section": false,
            "streak_length_to_celebrate": null,
            "streak_discount_enabled": false
          },
          "user_has_passing_grade": false,
          "course_exit_page_is_active": false,
          "certificate_data": {
            "cert_status": "audit_passing",
            "cert_web_view_url": null,
            "certificate_available_date": null
          },
          "verify_identity_url": null,
          "verification_status": "none",
          "linkedin_add_to_profile_url": null,
          "user_needs_integrity_signature": false,
          "learning_assistant_enabled": false,
          "language": "en",
          "whole_course_translation_enabled": false
        },
        "matchingRules": {
          "$.body.access_expiration.expiration_date": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.access_expiration.masquerading_expired_course": {
            "match": "type"
          },
          "$.body.access_expiration.upgrade_deadline": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.access_expiration.upgrade_url": {
            "match": "type"
          },
          "$.body.can_show_upgrade_sock": {
            "match": "type"
          },
          "$.body.content_type_gating_enabled": {
            "match": "type"
          },
          "$.body.end": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.enrollment.mode": {
            "match": "regex",
            "regex": "^(audit|verified)$"
          },
          "$.body.enrollment.is_active": {
            "match": "type"
          },
          "$.body.enrollment_start": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.enrollment_end": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.id": {
            "match": "regex",
            "regex": "[\\w\\-~.:]"
          },
          "$.body.license": {
            "match": "type"
          },
          "$.body.name": {
            "match": "type"
          },
          "$.body.number": {
            "match": "type"
          },
          "$.body.offer.code": {
            "match": "type"
          },
          "$.body.offer.expiration_date": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.offer.original_price": {
            "match": "type"
          },
          "$.body.offer.discounted_price": {
            "match": "type"
          },
          "$.body.offer.percentage": {
            "match": "type"
          },
          "$.body.offer.upgrade_url": {
            "match": "type"
          },
          "$.body.org": {
            "match": "type"
          },
          "$.body.short_description": {
            "match": "type"
          },
          "$.body.start": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.tabs": {
            "min": 1
          },
          "$.body.tabs[*].*": {
            "match": "type"
          },
          "$.body.verified_mode": {
            "match": "type"
          },
          "$.body.verified_mode.access_expiration_date": {
            "match": "regex",
            "regex": "^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|[+-][01]\\d:[0-5]\\d)$"
          },
          "$.body.show_calculator": {
            "match": "type"
          },
          "$.body.original_user_is_staff": {
            "match": "type"
          },
          "$.body.is_staff": {
            "match": "type"
          },
          "$.body.course_access": {
            "match": "type"
          },
          "$.body.notes.enabled": {
            "match": "type"
          },
          "$.body.notes.visible": {
            "match": "type"
          },
          "$.body.celebrations.first_section": {
            "match": "type"
          },
          "$.body.celebrations.streak_discount_enabled": {
            "match": "type"
          },
          "$.body.user_has_passing_grade": {
            "match": "type"
          },
          "$.body.course_exit_page_is_active": {
            "match": "type"
          },
          "$.body.certificate_data.cert_status": {
            "match": "type"
          },
          "$.body.verification_status": {
            "match": "type"
          },
          "$.body.user_needs_integrity_signature": {
            "match": "type"
          },
          "$.body.learning_assistant_enabled": {
            "match": "type"
          },
          "$.body.whole_course_translation_enabled": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to get sequence metadata",
      "providerState": "sequence metadata data exists for sequence_id block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions",
      "request": {
        "method": "GET",
        "path": "/api/courseware/sequence/block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "items": [
            {
              "content": "",
              "page_title": "Pointing on a Picture",
              "type": "problem",
              "id": "block-v1:edX+DemoX+Demo_Course+type@vertical+block@2152d4a4aadc4cb0af5256394a3d1fc7",
              "bookmarked": false,
              "path": "Example Week 1: Getting Started > Homework - Question Styles > Pointing on a Picture",
              "graded": true,
              "contains_content_type_gated_content": false,
              "href": ""
            }
          ],
          "item_id": "block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions",
          "is_time_limited": false,
          "is_proctored": false,
          "is_hidden_after_due": true,
          "position": null,
          "tag": "sequential",
          "banner_text": null,
          "save_position": false,
          "show_completion": false,
          "gated_content": {
            "prereq_id": null,
            "prereq_url": null,
            "prereq_section_name": null,
            "gated": false,
            "gated_section_name": "Homework - Question Styles"
          },
          "display_name": "Homework - Question Styles",
          "format": "Homework"
        },
        "matchingRules": {
          "$.body.items": {
            "min": 1
          },
          "$.body.items[*].*": {
            "match": "type"
          },
          "$.body.item_id": {
            "match": "type"
          },
          "$.body.is_time_limited": {
            "match": "type"
          },
          "$.body.is_proctored": {
            "match": "type"
          },
          "$.body.tag": {
            "match": "type"
          },
          "$.body.save_position": {
            "match": "type"
          },
          "$.body.show_completion": {
            "match": "type"
          },
          "$.body.gated_content": {
            "match": "type"
          },
          "$.body.display_name": {
            "match": "type"
          },
          "$.body.format": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to set sequence position against activeUnitIndex",
      "providerState": "sequence position data exists for course_id course-v1:edX+DemoX+Demo_Course, sequence_id block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions and activeUnitIndex 0",
      "request": {
        "method": "POST",
        "path": "/courses/course-v1:edX+DemoX+Demo_Course/xblock/block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions/handler/goto_position",
        "body": {
          "position": 1
        }
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "success": true
        },
        "matchingRules": {
          "$.body.success": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to get completion block",
      "providerState": "completion block data exists for course_id course-v1:edX+DemoX+Demo_Course, sequence_id block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions and usageId block-v1:edX+DemoX+Demo_Course+type@vertical+block@47dbd5f836544e61877a483c0b75606c",
      "request": {
        "method": "POST",
        "path": "/courses/course-v1:edX+DemoX+Demo_Course/xblock/block-v1:edX+DemoX+Demo_Course+type@sequential+block@basic_questions/handler/get_completion",
        "body": {
          "usage_key": "block-v1:edX+DemoX+Demo_Course+type@vertical+block@47dbd5f836544e61877a483c0b75606c"
        }
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "complete": true
        },
        "matchingRules": {
          "$.body.complete": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to get Resume block",
      "providerState": "Resume block exists for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/courseware/resume/course-v1:edX+DemoX+Demo_Course"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "block_id": "642fadf46d074aabb637f20af320fb31",
          "section_id": "642fadf46d074aabb637f20af320fb87",
          "unit_id": "642fadf46d074aabb637f20af320fb99"
        },
        "matchingRules": {
          "$.body.block_id": {
            "match": "type"
          },
          "$.body.section_id": {
            "match": "type"
          },
          "$.body.unit_id": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to send activation email",
      "providerState": "A logged-in user may or may not be active",
      "request": {
        "method": "POST",
        "path": "/api/send_account_activation_email"
      },
      "response": {
        "status": 200,
        "headers": {
        }
      }
    },
    {
      "description": "a request to get a learning sequence outline",
      "providerState": "Learning sequence outline exists for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/learning_sequences/v1/course_outline/course-v1:edX+DemoX+Demo_Course"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "course_key": "block-v1:edX+DemoX+Demo_Course",
          "title": "Demo Course",
          "outline": {
            "sections": [

            ],
            "sequences": [

            ]
          }
        },
        "matchingRules": {
          "$.body.course_key": {
            "match": "type"
          },
          "$.body.title": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to get an outline",
      "providerState": "Outline exists for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/learning_sequences/v1/course_outline/course-v1:edX+DemoX+Demo_Course"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "course_key": "block-v1:edX+DemoX+Demo_Course",
          "title": "Demo Course",
          "outline": {
            "sections": [

            ],
            "sequences": {
            }
          }
        },
        "matchingRules": {
          "$.body.course_key": {
            "match": "type"
          },
          "$.body.title": {
            "match": "type"
          }
        }
      }
    },
    {
      "description": "a request to get an outline",
      "providerState": "Outline exists with inaccessible sequences for course_id course-v1:edX+DemoX+Demo_Course",
      "request": {
        "method": "GET",
        "path": "/api/learning_sequences/v1/course_outline/course-v1:edX+DemoX+Demo_Course"
      },
      "response": {
        "status": 200,
        "headers": {
        },
        "body": {
          "course_key": "block-v1:edX+DemoX+Demo_Course",
          "title": "Demo Course",
          "outline": {
            "sections": [
              {
                "id": "block-v1:edX+DemoX+Demo_Course+type@chapter+block@partial",
                "title": "Partially accessible",
                "sequence_ids": [
                  "block-v1:edX+DemoX+Demo_Course+type@sequential+block@accessible",
                  "block-v1:edX+DemoX+Demo_Course+type@sequential+block@nope1"
                ]
              },
              {
                "id": "block-v1:edX+DemoX+Demo_Course+type@chapter+block@nope",
                "title": "Wholly inaccessible",
                "sequence_ids": [
                  "block-v1:edX+DemoX+Demo_Course+type@sequential+block@nope2"
                ]
              }
            ],
            "sequences": {
              "block-v1:edX+DemoX+Demo_Course+type@sequential+block@accessible": {
                "id": "block-v1:edX+DemoX+Demo_Course+type@sequential+block@accessible",
                "title": "Can access",
                "accessible": true
              },
              "block-v1:edX+DemoX+Demo_Course+type@sequential+block@nope1": {
                "id": "block-v1:edX+DemoX+Demo_Course+type@sequential+block@nope1",
                "title": "Cannot access",
                "accessible": false
              },
              "block-v1:edX+DemoX+Demo_Course+type@sequential+block@nope2": {
                "id": "block-v1:edX+DemoX+Demo_Course+type@sequential+block@nope2",
                "title": "Still cannot access",
                "accessible": false
              }
            }
          }
        },
        "matchingRules": {
          "$.body.course_key": {
            "match": "type"
          },
          "$.body.title": {
            "match": "type"
          },
          "$.body.outline": {
            "match": "type"
          }
        }
      }
    }
  ],
  "metadata": {
    "pactSpecification": {
      "version": "2.0.0"
    }
  }
}
