interactions: - request: body: subscription%5Bendpoint%5D=https%3A%2F%2Fexample.com&subscription%5Bkeys%5D%5Bp256dh%5D=BM8%2FoiVbTQpdqT%2Fw80MIvDMoLI0pOiBBlVnOTZNIWpT8u%2BcAufNi5ZHpifoI7YzQJIbA82g4zc6zSgYEW1%2BZhv8%3D&subscription%5Bkeys%5D%5Bauth%5D=HPq7PnVB8YXjE2AdbIpVLQ%3D%3D&data%5Balerts%5D%5Bfollow%5D=0&data%5Balerts%5D%5Bfavourite%5D=0&data%5Balerts%5D%5Breblog%5D=0&data%5Balerts%5D%5Bmention%5D=0 headers: Accept: - '*/*' Accept-Encoding: - gzip, deflate Authorization: - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN Connection: - keep-alive Content-Length: - '376' Content-Type: - application/x-www-form-urlencoded User-Agent: - tests/v311 method: POST uri: http://localhost:3000/api/v1/push/subscription response: body: string: '{"id":2,"endpoint":"https://example.com","alerts":{"mention":false,"reblog":false,"follow":false,"favourite":false},"server_key":"BMW1iZ3p5HXHHMmkMJ6jdQM9egogj2xIhMMIWtY1w4Cv-ENlqvh8MEU9QeSrfVQGJVo499S7sssiJYQ6AFMEt7U="}' headers: Cache-Control: - no-store Content-Security-Policy: - 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src ''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000; style-src ''self'' http://localhost:3000 ''nonce-WbxenrOVrir/tBGwXifiaA==''; media-src ''self'' https: data: http://localhost:3000; frame-src ''self'' https:; manifest-src ''self'' http://localhost:3000; connect-src ''self'' data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000 ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000; worker-src ''self'' blob: http://localhost:3000' Content-Type: - application/json; charset=utf-8 ETag: - W/"c7c21bc52b1e9c3ec8fabd6d70c84a85" Referrer-Policy: - strict-origin-when-cross-origin Transfer-Encoding: - chunked Vary: - Accept, Origin X-Content-Type-Options: - nosniff X-Download-Options: - noopen X-Frame-Options: - SAMEORIGIN X-Permitted-Cross-Domain-Policies: - none X-Request-Id: - 960e47fd-23f9-4e7b-a79b-74139c0708eb X-Runtime: - '0.014556' X-XSS-Protection: - 1; mode=block status: code: 200 message: OK - request: body: data%5Balerts%5D%5Bfollow%5D=1&data%5Balerts%5D%5Bfavourite%5D=1&data%5Balerts%5D%5Breblog%5D=1&data%5Balerts%5D%5Bmention%5D=1 headers: Accept: - '*/*' Accept-Encoding: - gzip, deflate Authorization: - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN Connection: - keep-alive Content-Length: - '127' Content-Type: - application/x-www-form-urlencoded User-Agent: - tests/v311 method: PUT uri: http://localhost:3000/api/v1/push/subscription response: body: string: '{"id":2,"endpoint":"https://example.com","alerts":{"mention":true,"reblog":true,"follow":true,"favourite":true},"server_key":"BMW1iZ3p5HXHHMmkMJ6jdQM9egogj2xIhMMIWtY1w4Cv-ENlqvh8MEU9QeSrfVQGJVo499S7sssiJYQ6AFMEt7U="}' headers: Cache-Control: - no-store Content-Security-Policy: - 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src ''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000; style-src ''self'' http://localhost:3000 ''nonce-qUAxPxHn6te77PLdA4KI0g==''; media-src ''self'' https: data: http://localhost:3000; frame-src ''self'' https:; manifest-src ''self'' http://localhost:3000; connect-src ''self'' data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000 ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000; worker-src ''self'' blob: http://localhost:3000' Content-Type: - application/json; charset=utf-8 ETag: - W/"10c614045aa34357d3beaf175fe69bcc" Referrer-Policy: - strict-origin-when-cross-origin Transfer-Encoding: - chunked Vary: - Accept, Origin X-Content-Type-Options: - nosniff X-Download-Options: - noopen X-Frame-Options: - SAMEORIGIN X-Permitted-Cross-Domain-Policies: - none X-Request-Id: - daaa3c29-82ab-4a0a-94a4-79f0693c3d82 X-Runtime: - '0.010848' X-XSS-Protection: - 1; mode=block status: code: 200 message: OK - request: body: null headers: Accept: - '*/*' Accept-Encoding: - gzip, deflate Authorization: - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN Connection: - keep-alive User-Agent: - tests/v311 method: GET uri: http://localhost:3000/api/v1/push/subscription response: body: string: '{"id":2,"endpoint":"https://example.com","alerts":{"mention":true,"reblog":true,"follow":true,"favourite":true},"server_key":"BMW1iZ3p5HXHHMmkMJ6jdQM9egogj2xIhMMIWtY1w4Cv-ENlqvh8MEU9QeSrfVQGJVo499S7sssiJYQ6AFMEt7U="}' headers: Cache-Control: - no-store Content-Security-Policy: - 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src ''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000; style-src ''self'' http://localhost:3000 ''nonce-rxECX1Kr7fjbgyIxVfZVqw==''; media-src ''self'' https: data: http://localhost:3000; frame-src ''self'' https:; manifest-src ''self'' http://localhost:3000; connect-src ''self'' data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000 ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000; worker-src ''self'' blob: http://localhost:3000' Content-Type: - application/json; charset=utf-8 ETag: - W/"10c614045aa34357d3beaf175fe69bcc" Referrer-Policy: - strict-origin-when-cross-origin Transfer-Encoding: - chunked Vary: - Accept, Origin X-Content-Type-Options: - nosniff X-Download-Options: - noopen X-Frame-Options: - SAMEORIGIN X-Permitted-Cross-Domain-Policies: - none X-Request-Id: - 8c89f845-3655-417d-9c0a-58be4a7a1cb3 X-Runtime: - '0.007446' X-XSS-Protection: - 1; mode=block status: code: 200 message: OK - request: body: data%5Balerts%5D%5Bfollow%5D=0&data%5Balerts%5D%5Bfavourite%5D=0&data%5Balerts%5D%5Breblog%5D=0&data%5Balerts%5D%5Bmention%5D=0 headers: Accept: - '*/*' Accept-Encoding: - gzip, deflate Authorization: - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN Connection: - keep-alive Content-Length: - '127' Content-Type: - application/x-www-form-urlencoded User-Agent: - tests/v311 method: PUT uri: http://localhost:3000/api/v1/push/subscription response: body: string: '{"id":2,"endpoint":"https://example.com","alerts":{"mention":false,"reblog":false,"follow":false,"favourite":false},"server_key":"BMW1iZ3p5HXHHMmkMJ6jdQM9egogj2xIhMMIWtY1w4Cv-ENlqvh8MEU9QeSrfVQGJVo499S7sssiJYQ6AFMEt7U="}' headers: Cache-Control: - no-store Content-Security-Policy: - 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src ''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000; style-src ''self'' http://localhost:3000 ''nonce-wuH2f2SAR/XhlzL4Tc+jtg==''; media-src ''self'' https: data: http://localhost:3000; frame-src ''self'' https:; manifest-src ''self'' http://localhost:3000; connect-src ''self'' data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000 ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000; worker-src ''self'' blob: http://localhost:3000' Content-Type: - application/json; charset=utf-8 ETag: - W/"c7c21bc52b1e9c3ec8fabd6d70c84a85" Referrer-Policy: - strict-origin-when-cross-origin Transfer-Encoding: - chunked Vary: - Accept, Origin X-Content-Type-Options: - nosniff X-Download-Options: - noopen X-Frame-Options: - SAMEORIGIN X-Permitted-Cross-Domain-Policies: - none X-Request-Id: - f5c8acd5-e2cf-468f-9cc5-7ae564fb16d8 X-Runtime: - '0.011918' X-XSS-Protection: - 1; mode=block status: code: 200 message: OK - request: body: null headers: Accept: - '*/*' Accept-Encoding: - gzip, deflate Authorization: - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN Connection: - keep-alive User-Agent: - tests/v311 method: GET uri: http://localhost:3000/api/v1/push/subscription response: body: string: '{"id":2,"endpoint":"https://example.com","alerts":{"mention":false,"reblog":false,"follow":false,"favourite":false},"server_key":"BMW1iZ3p5HXHHMmkMJ6jdQM9egogj2xIhMMIWtY1w4Cv-ENlqvh8MEU9QeSrfVQGJVo499S7sssiJYQ6AFMEt7U="}' headers: Cache-Control: - no-store Content-Security-Policy: - 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src ''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000; style-src ''self'' http://localhost:3000 ''nonce-iKzPZ/DNgQoI+6RHrpu0lw==''; media-src ''self'' https: data: http://localhost:3000; frame-src ''self'' https:; manifest-src ''self'' http://localhost:3000; connect-src ''self'' data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000 ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000; worker-src ''self'' blob: http://localhost:3000' Content-Type: - application/json; charset=utf-8 ETag: - W/"c7c21bc52b1e9c3ec8fabd6d70c84a85" Referrer-Policy: - strict-origin-when-cross-origin Transfer-Encoding: - chunked Vary: - Accept, Origin X-Content-Type-Options: - nosniff X-Download-Options: - noopen X-Frame-Options: - SAMEORIGIN X-Permitted-Cross-Domain-Policies: - none X-Request-Id: - 755cd060-6658-4ab5-b7e5-a12d117b0492 X-Runtime: - '0.008324' X-XSS-Protection: - 1; mode=block status: code: 200 message: OK - request: body: null headers: Accept: - '*/*' Accept-Encoding: - gzip, deflate Authorization: - Bearer __MASTODON_PY_TEST_ACCESS_TOKEN Connection: - keep-alive User-Agent: - tests/v311 method: GET uri: http://localhost:3000/api/v1/push/subscription response: body: string: '{"id":2,"endpoint":"https://example.com","alerts":{"mention":false,"reblog":false,"follow":false,"favourite":false},"server_key":"BMW1iZ3p5HXHHMmkMJ6jdQM9egogj2xIhMMIWtY1w4Cv-ENlqvh8MEU9QeSrfVQGJVo499S7sssiJYQ6AFMEt7U="}' headers: Cache-Control: - no-store Content-Security-Policy: - 'base-uri ''none''; default-src ''none''; frame-ancestors ''none''; font-src ''self'' http://localhost:3000; img-src ''self'' https: data: blob: http://localhost:3000; style-src ''self'' http://localhost:3000 ''nonce-8+x5PjYCLsB9q7zL+pyd0w==''; media-src ''self'' https: data: http://localhost:3000; frame-src ''self'' https:; manifest-src ''self'' http://localhost:3000; connect-src ''self'' data: blob: http://localhost:3000 http://localhost:3000 ws://localhost:4000 ws://localhost:3035 http://localhost:3035; script-src ''self'' ''unsafe-inline'' ''unsafe-eval'' http://localhost:3000; child-src ''self'' blob: http://localhost:3000; worker-src ''self'' blob: http://localhost:3000' Content-Type: - application/json; charset=utf-8 ETag: - W/"c7c21bc52b1e9c3ec8fabd6d70c84a85" Referrer-Policy: - strict-origin-when-cross-origin Transfer-Encoding: - chunked Vary: - Accept, Origin X-Content-Type-Options: - nosniff X-Download-Options: - noopen X-Frame-Options: - SAMEORIGIN X-Permitted-Cross-Domain-Policies: - none X-Request-Id: - c2576e21-2a66-455f-b281-c82f3ae81d6c X-Runtime: - '0.006889' X-XSS-Protection: - 1; mode=block status: code: 200 message: OK version: 1