interactions:
- request:
    body: status=%40mastodonpy_test+hello%21
    headers:
      Accept:
      - '*/*'
      Accept-Encoding:
      - gzip, deflate, br
      Authorization:
      - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
      Connection:
      - keep-alive
      Content-Length:
      - '34'
      Content-Type:
      - application/x-www-form-urlencoded
      User-Agent:
      - tests/v311
    method: POST
    uri: http://localhost:3000/api/v1/statuses
  response:
    body:
      string: '{"id":"115045577646096554","created_at":"2025-08-17T18:43:21.877Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/115045577646096554","url":"http://localhost:3000/@admin/115045577646096554","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"content":"\u003cp\u003e\u003cspan
        class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test\"
        class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
        hello!\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
        test suite","website":null},"account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"media_attachments":[],"mentions":[{"id":"115045158004229352","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"quote":null,"card":null,"poll":null}'
    headers:
      Content-Length:
      - '1815'
      cache-control:
      - private, no-store
      content-security-policy:
      - default-src 'none'; frame-ancestors 'none'; form-action 'none'
      content-type:
      - application/json; charset=utf-8
      etag:
      - W/"fe7b86e49bb7e3765ebcb7311b575999"
      referrer-policy:
      - strict-origin-when-cross-origin
      server-timing:
      - cache_read.active_support;dur=0.06, sql.active_record;dur=16.32, cache_generate.active_support;dur=2.93,
        cache_write.active_support;dur=0.13, instantiation.active_record;dur=0.50,
        start_processing.action_controller;dur=0.00, start_transaction.active_record;dur=0.01,
        transaction.active_record;dur=13.74, render.active_model_serializers;dur=14.08,
        process_action.action_controller;dur=68.49
      vary:
      - Authorization, Origin
      x-content-type-options:
      - nosniff
      x-frame-options:
      - SAMEORIGIN
      x-permitted-cross-domain-policies:
      - none
      x-ratelimit-limit:
      - '300'
      x-ratelimit-remaining:
      - '297'
      x-ratelimit-reset:
      - '2025-08-17T21:00:00.910342Z'
      x-request-id:
      - a8598d53-7793-43e2-a42a-e27db0126f22
      x-runtime:
      - '0.085149'
      x-xss-protection:
      - '0'
    status:
      code: 200
      message: OK
- request:
    body: null
    headers:
      Accept:
      - '*/*'
      Accept-Encoding:
      - gzip, deflate, br
      Authorization:
      - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
      Connection:
      - keep-alive
      User-Agent:
      - tests/v311
    method: GET
    uri: http://localhost:3000/api/v1/notifications
  response:
    body:
      string: '[{"id":"22","type":"mention","created_at":"2025-08-17T18:43:22.313Z","group_key":"ungrouped-22","account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"status":{"id":"115045577646096554","created_at":"2025-08-17T18:43:21.877Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/115045577646096554","url":"http://localhost:3000/@admin/115045577646096554","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"\u003cp\u003e\u003cspan
        class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test\"
        class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
        hello!\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
        test suite","website":null},"account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"media_attachments":[],"mentions":[{"id":"115045158004229352","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"quote":null,"card":null,"poll":null}},{"id":"19","type":"follow","created_at":"2025-08-17T18:42:39.116Z","group_key":"follow-487626","account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]}}]'
    headers:
      Content-Length:
      - '3523'
      cache-control:
      - private, no-store
      content-security-policy:
      - default-src 'none'; frame-ancestors 'none'; form-action 'none'
      content-type:
      - application/json; charset=utf-8
      etag:
      - W/"2986f7e9b09499ee96703d0ac3db2f72"
      link:
      - <http://localhost:3000/api/v1/notifications?max_id=19>; rel="next", <http://localhost:3000/api/v1/notifications?min_id=22>;
        rel="prev"
      referrer-policy:
      - strict-origin-when-cross-origin
      server-timing:
      - cache_read.active_support;dur=0.15, sql.active_record;dur=4.22, cache_generate.active_support;dur=2.97,
        cache_write.active_support;dur=0.13, instantiation.active_record;dur=3.10,
        start_processing.action_controller;dur=0.00, cache_fetch_hit.active_support;dur=0.00,
        render.active_model_serializers;dur=6.00, process_action.action_controller;dur=54.98
      vary:
      - Authorization, Origin
      x-content-type-options:
      - nosniff
      x-frame-options:
      - SAMEORIGIN
      x-permitted-cross-domain-policies:
      - none
      x-ratelimit-limit:
      - '300'
      x-ratelimit-remaining:
      - '299'
      x-ratelimit-reset:
      - '2025-08-17T18:45:00.992652Z'
      x-request-id:
      - 685ceff5-5ad4-4ebe-95ce-1246fa8add96
      x-runtime:
      - '0.073917'
      x-xss-protection:
      - '0'
    status:
      code: 200
      message: OK
- request:
    body: null
    headers:
      Accept:
      - '*/*'
      Accept-Encoding:
      - gzip, deflate, br
      Authorization:
      - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
      Connection:
      - keep-alive
      User-Agent:
      - tests/v311
    method: GET
    uri: http://localhost:3000/api/v1/notifications/22
  response:
    body:
      string: '{"id":"22","type":"mention","created_at":"2025-08-17T18:43:22.313Z","group_key":"ungrouped-22","account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"status":{"id":"115045577646096554","created_at":"2025-08-17T18:43:21.877Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/115045577646096554","url":"http://localhost:3000/@admin/115045577646096554","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"\u003cp\u003e\u003cspan
        class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test\"
        class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
        hello!\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
        test suite","website":null},"account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"media_attachments":[],"mentions":[{"id":"115045158004229352","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"quote":null,"card":null,"poll":null}}'
    headers:
      Content-Length:
      - '2665'
      cache-control:
      - private, no-store
      content-security-policy:
      - default-src 'none'; frame-ancestors 'none'; form-action 'none'
      content-type:
      - application/json; charset=utf-8
      etag:
      - W/"89877508d84c12d725ee7f64bbeefb7b"
      referrer-policy:
      - strict-origin-when-cross-origin
      server-timing:
      - cache_read.active_support;dur=0.12, sql.active_record;dur=3.83, cache_generate.active_support;dur=3.01,
        cache_write.active_support;dur=0.13, instantiation.active_record;dur=2.50,
        start_processing.action_controller;dur=0.00, cache_fetch_hit.active_support;dur=0.00,
        render.active_model_serializers;dur=26.46, process_action.action_controller;dur=53.11
      vary:
      - Authorization, Origin
      x-content-type-options:
      - nosniff
      x-frame-options:
      - SAMEORIGIN
      x-permitted-cross-domain-policies:
      - none
      x-ratelimit-limit:
      - '300'
      x-ratelimit-remaining:
      - '299'
      x-ratelimit-reset:
      - '2025-08-17T18:45:00.135352Z'
      x-request-id:
      - 35363d1f-f626-489c-b52a-d5f840b6fb34
      x-runtime:
      - '0.069916'
      x-xss-protection:
      - '0'
    status:
      code: 200
      message: OK
- request:
    body: null
    headers:
      Accept:
      - '*/*'
      Accept-Encoding:
      - gzip, deflate, br
      Authorization:
      - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
      Connection:
      - keep-alive
      User-Agent:
      - tests/v311
    method: GET
    uri: http://localhost:3000/api/v1/notifications/unread_count
  response:
    body:
      string: '{"count":2}'
    headers:
      Content-Length:
      - '11'
      cache-control:
      - private, no-store
      content-security-policy:
      - default-src 'none'; frame-ancestors 'none'; form-action 'none'
      content-type:
      - application/json; charset=utf-8
      etag:
      - W/"57413ce83ee1d989e384dfd3a82c6e2d"
      referrer-policy:
      - strict-origin-when-cross-origin
      server-timing:
      - cache_read.active_support;dur=0.03, sql.active_record;dur=1.18, cache_generate.active_support;dur=1.05,
        cache_write.active_support;dur=0.08, instantiation.active_record;dur=0.14,
        start_processing.action_controller;dur=0.00, render.active_model_serializers;dur=0.03,
        process_action.action_controller;dur=27.35
      vary:
      - Authorization, Origin
      x-content-type-options:
      - nosniff
      x-frame-options:
      - SAMEORIGIN
      x-permitted-cross-domain-policies:
      - none
      x-ratelimit-limit:
      - '300'
      x-ratelimit-remaining:
      - '299'
      x-ratelimit-reset:
      - '2025-08-17T18:45:00.264729Z'
      x-request-id:
      - c43f9b73-4371-4eba-ae64-5fda5e3b82d1
      x-runtime:
      - '0.044125'
      x-xss-protection:
      - '0'
    status:
      code: 200
      message: OK
- request:
    body: null
    headers:
      Accept:
      - '*/*'
      Accept-Encoding:
      - gzip, deflate, br
      Authorization:
      - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN
      Connection:
      - keep-alive
      User-Agent:
      - tests/v311
    method: GET
    uri: http://localhost:3000/api/v1/notifications/22
  response:
    body:
      string: '{"id":"22","type":"mention","created_at":"2025-08-17T18:43:22.313Z","group_key":"ungrouped-22","account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"status":{"id":"115045577646096554","created_at":"2025-08-17T18:43:21.877Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/115045577646096554","url":"http://localhost:3000/@admin/115045577646096554","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"content":"\u003cp\u003e\u003cspan
        class=\"h-card\" translate=\"no\"\u003e\u003ca href=\"http://localhost:3000/@mastodonpy_test\"
        class=\"u-url mention\"\u003e@\u003cspan\u003emastodonpy_test\u003c/span\u003e\u003c/a\u003e\u003c/span\u003e
        hello!\u003c/p\u003e","filtered":[],"reblog":null,"application":{"name":"Mastodon.py
        test suite","website":null},"account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":1,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"media_attachments":[],"mentions":[{"id":"115045158004229352","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"quote":null,"card":null,"poll":null}}'
    headers:
      Content-Length:
      - '2665'
      cache-control:
      - private, no-store
      content-security-policy:
      - default-src 'none'; frame-ancestors 'none'; form-action 'none'
      content-type:
      - application/json; charset=utf-8
      etag:
      - W/"89877508d84c12d725ee7f64bbeefb7b"
      referrer-policy:
      - strict-origin-when-cross-origin
      server-timing:
      - cache_read.active_support;dur=0.10, sql.active_record;dur=3.63, cache_generate.active_support;dur=2.84,
        cache_write.active_support;dur=0.14, instantiation.active_record;dur=0.71,
        start_processing.action_controller;dur=0.00, cache_fetch_hit.active_support;dur=0.00,
        render.active_model_serializers;dur=22.58, process_action.action_controller;dur=49.55
      vary:
      - Authorization, Origin
      x-content-type-options:
      - nosniff
      x-frame-options:
      - SAMEORIGIN
      x-permitted-cross-domain-policies:
      - none
      x-ratelimit-limit:
      - '300'
      x-ratelimit-remaining:
      - '299'
      x-ratelimit-reset:
      - '2025-08-17T18:45:00.313222Z'
      x-request-id:
      - a3b24090-1ab6-4a0e-b7fd-0e26d5efc351
      x-runtime:
      - '0.066032'
      x-xss-protection:
      - '0'
    status:
      code: 200
      message: OK
- request:
    body: null
    headers:
      Accept:
      - '*/*'
      Accept-Encoding:
      - gzip, deflate, br
      Authorization:
      - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN_2
      Connection:
      - keep-alive
      Content-Length:
      - '0'
      User-Agent:
      - tests/v311
    method: DELETE
    uri: http://localhost:3000/api/v1/statuses/115045577646096554
  response:
    body:
      string: '{"id":"115045577646096554","created_at":"2025-08-17T18:43:21.877Z","in_reply_to_id":null,"in_reply_to_account_id":null,"sensitive":false,"spoiler_text":"","visibility":"public","language":"en","uri":"http://localhost:3000/users/admin/statuses/115045577646096554","url":"http://localhost:3000/@admin/115045577646096554","replies_count":0,"reblogs_count":0,"favourites_count":0,"edited_at":null,"favourited":false,"reblogged":false,"muted":false,"bookmarked":false,"pinned":false,"text":"@mastodonpy_test
        hello!","filtered":[],"reblog":null,"application":{"name":"Mastodon.py test
        suite","website":null},"account":{"id":"115045157726281124","username":"admin","acct":"admin","display_name":"","locked":false,"bot":false,"discoverable":null,"indexable":false,"group":false,"created_at":"2025-08-17T00:00:00.000Z","note":"","url":"http://localhost:3000/@admin","uri":"http://localhost:3000/users/admin","avatar":"http://localhost:3000/avatars/original/missing.png","avatar_static":"http://localhost:3000/avatars/original/missing.png","header":"http://localhost:3000/headers/original/missing.png","header_static":"http://localhost:3000/headers/original/missing.png","followers_count":0,"following_count":0,"statuses_count":0,"last_status_at":"2025-08-17","hide_collections":null,"noindex":false,"emojis":[],"roles":[{"id":"3","name":"Owner","color":""}],"fields":[]},"media_attachments":[],"mentions":[{"id":"115045158004229352","username":"mastodonpy_test","url":"http://localhost:3000/@mastodonpy_test","acct":"mastodonpy_test"}],"tags":[],"emojis":[],"quote":null,"card":null,"poll":null}'
    headers:
      Content-Length:
      - '1586'
      cache-control:
      - private, no-store
      content-security-policy:
      - default-src 'none'; frame-ancestors 'none'; form-action 'none'
      content-type:
      - application/json; charset=utf-8
      etag:
      - W/"6b51e1824ee5cf3380a6dab6d5674f7e"
      referrer-policy:
      - strict-origin-when-cross-origin
      server-timing:
      - cache_read.active_support;dur=0.07, sql.active_record;dur=8.56, cache_generate.active_support;dur=3.06,
        cache_write.active_support;dur=0.15, instantiation.active_record;dur=0.58,
        start_processing.action_controller;dur=0.00, start_transaction.active_record;dur=0.00,
        transaction.active_record;dur=5.00, render.active_model_serializers;dur=16.71,
        process_action.action_controller;dur=53.68
      vary:
      - Authorization, Origin
      x-content-type-options:
      - nosniff
      x-frame-options:
      - SAMEORIGIN
      x-permitted-cross-domain-policies:
      - none
      x-ratelimit-limit:
      - '30'
      x-ratelimit-remaining:
      - '29'
      x-ratelimit-reset:
      - '2025-08-17T19:00:00.437616Z'
      x-request-id:
      - cd7b8472-fae5-4fe1-8e60-86acc6262f32
      x-runtime:
      - '0.070175'
      x-xss-protection:
      - '0'
    status:
      code: 200
      message: OK
version: 1
