interactions:
- request:
    body: subscription%5Bendpoint%5D=https%3A%2F%2Fexample.com&subscription%5Bkeys%5D%5Bp256dh%5D=BNf5vOWrGdkIa%2B0ymfGGguAJJqG0vJgw%2FXYtQaQBAf67LUQj7wL61kqqR%2F4JTjXJFu%2FXBbp%2FudchIsmU556gb9Y%3D&subscription%5Bkeys%5D%5Bauth%5D=KYw%2BrnihQdlsaTlYIsFwXw%3D%3D&data%5Balerts%5D%5Bfollow%5D=False&data%5Balerts%5D%5Bfavourite%5D=False&data%5Balerts%5D%5Breblog%5D=False&data%5Balerts%5D%5Bmention%5D=False
    headers:
      Accept: ['*/*']
      Accept-Encoding: ['gzip, deflate']
      Authorization: [Bearer __MASTODON_PY_TEST_ACCESS_TOKEN]
      Connection: [keep-alive]
      Content-Length: ['396']
      Content-Type: [application/x-www-form-urlencoded]
      User-Agent: [python-requests/2.18.4]
    method: POST
    uri: http://localhost:3000/api/v1/push/subscription
  response:
    body: {string: '{"id":8,"endpoint":"https://example.com","alerts":{"follow":"False","favourite":"False","reblog":"False","mention":"False"},"server_key":"BFUzywftzA81kLihlpi_bTniTwxuGp_D2gX9CHRq4qJQJgsKQUFyc8juKZ-fHMR6YxnA1A1qhgVvMTChH21CMhY="}'}
    headers:
      Cache-Control: ['max-age=0, private, must-revalidate']
      Content-Type: [application/json; charset=utf-8]
      ETag: [W/"cb873fcf08406f258972bef68fe34f3e"]
      Referrer-Policy: [strict-origin-when-cross-origin]
      Transfer-Encoding: [chunked]
      Vary: ['Accept-Encoding, Origin']
      X-Content-Type-Options: [nosniff]
      X-Download-Options: [noopen]
      X-Frame-Options: [SAMEORIGIN]
      X-Permitted-Cross-Domain-Policies: [none]
      X-Request-Id: [dc740d07-571d-40a7-850e-d62d16771f6b]
      X-Runtime: ['0.037476']
      X-XSS-Protection: [1; mode=block]
      content-length: ['228']
    status: {code: 200, message: OK}
- request:
    body: data%5Balerts%5D%5Bfollow%5D=True&data%5Balerts%5D%5Bfavourite%5D=True&data%5Balerts%5D%5Breblog%5D=True&data%5Balerts%5D%5Bmention%5D=True
    headers:
      Accept: ['*/*']
      Accept-Encoding: ['gzip, deflate']
      Authorization: [Bearer __MASTODON_PY_TEST_ACCESS_TOKEN]
      Connection: [keep-alive]
      Content-Length: ['139']
      Content-Type: [application/x-www-form-urlencoded]
      User-Agent: [python-requests/2.18.4]
    method: PUT
    uri: http://localhost:3000/api/v1/push/subscription
  response:
    body: {string: '{"id":8,"endpoint":"https://example.com","alerts":{"follow":"True","favourite":"True","reblog":"True","mention":"True"},"server_key":"BFUzywftzA81kLihlpi_bTniTwxuGp_D2gX9CHRq4qJQJgsKQUFyc8juKZ-fHMR6YxnA1A1qhgVvMTChH21CMhY="}'}
    headers:
      Cache-Control: ['max-age=0, private, must-revalidate']
      Content-Type: [application/json; charset=utf-8]
      ETag: [W/"3aa680a6852f654c4978e92abac3835b"]
      Referrer-Policy: [strict-origin-when-cross-origin]
      Transfer-Encoding: [chunked]
      Vary: ['Accept-Encoding, Origin']
      X-Content-Type-Options: [nosniff]
      X-Download-Options: [noopen]
      X-Frame-Options: [SAMEORIGIN]
      X-Permitted-Cross-Domain-Policies: [none]
      X-Request-Id: [9c0f65db-6c7d-4a33-8b36-7dcc2538d739]
      X-Runtime: ['0.027803']
      X-XSS-Protection: [1; mode=block]
      content-length: ['224']
    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: [python-requests/2.18.4]
    method: GET
    uri: http://localhost:3000/api/v1/push/subscription
  response:
    body: {string: '{"id":8,"endpoint":"https://example.com","alerts":{"follow":"True","favourite":"True","reblog":"True","mention":"True"},"server_key":"BFUzywftzA81kLihlpi_bTniTwxuGp_D2gX9CHRq4qJQJgsKQUFyc8juKZ-fHMR6YxnA1A1qhgVvMTChH21CMhY="}'}
    headers:
      Cache-Control: ['max-age=0, private, must-revalidate']
      Content-Type: [application/json; charset=utf-8]
      ETag: [W/"c634d8dcb9a3ad60e3dafc74cc311246"]
      Referrer-Policy: [strict-origin-when-cross-origin]
      Transfer-Encoding: [chunked]
      Vary: ['Accept-Encoding, Origin']
      X-Content-Type-Options: [nosniff]
      X-Download-Options: [noopen]
      X-Frame-Options: [SAMEORIGIN]
      X-Permitted-Cross-Domain-Policies: [none]
      X-Request-Id: [bc57a4d9-d409-41ea-9a73-5831798fc911]
      X-Runtime: ['0.040363']
      X-XSS-Protection: [1; mode=block]
      content-length: ['224']
    status: {code: 200, message: OK}
- request:
    body: data%5Balerts%5D%5Bfollow%5D=False&data%5Balerts%5D%5Bfavourite%5D=False&data%5Balerts%5D%5Breblog%5D=False&data%5Balerts%5D%5Bmention%5D=False
    headers:
      Accept: ['*/*']
      Accept-Encoding: ['gzip, deflate']
      Authorization: [Bearer __MASTODON_PY_TEST_ACCESS_TOKEN]
      Connection: [keep-alive]
      Content-Length: ['143']
      Content-Type: [application/x-www-form-urlencoded]
      User-Agent: [python-requests/2.18.4]
    method: PUT
    uri: http://localhost:3000/api/v1/push/subscription
  response:
    body: {string: '{"id":8,"endpoint":"https://example.com","alerts":{"follow":"False","favourite":"False","reblog":"False","mention":"False"},"server_key":"BFUzywftzA81kLihlpi_bTniTwxuGp_D2gX9CHRq4qJQJgsKQUFyc8juKZ-fHMR6YxnA1A1qhgVvMTChH21CMhY="}'}
    headers:
      Cache-Control: ['max-age=0, private, must-revalidate']
      Content-Type: [application/json; charset=utf-8]
      ETag: [W/"20acfc2e3be503e3b91d0643fe1b99e4"]
      Referrer-Policy: [strict-origin-when-cross-origin]
      Transfer-Encoding: [chunked]
      Vary: ['Accept-Encoding, Origin']
      X-Content-Type-Options: [nosniff]
      X-Download-Options: [noopen]
      X-Frame-Options: [SAMEORIGIN]
      X-Permitted-Cross-Domain-Policies: [none]
      X-Request-Id: [77fdd51d-3d92-4512-88b4-8c71bf87e399]
      X-Runtime: ['0.063999']
      X-XSS-Protection: [1; mode=block]
      content-length: ['228']
    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: [python-requests/2.18.4]
    method: GET
    uri: http://localhost:3000/api/v1/push/subscription
  response:
    body: {string: '{"id":8,"endpoint":"https://example.com","alerts":{"follow":"False","favourite":"False","reblog":"False","mention":"False"},"server_key":"BFUzywftzA81kLihlpi_bTniTwxuGp_D2gX9CHRq4qJQJgsKQUFyc8juKZ-fHMR6YxnA1A1qhgVvMTChH21CMhY="}'}
    headers:
      Cache-Control: ['max-age=0, private, must-revalidate']
      Content-Type: [application/json; charset=utf-8]
      ETag: [W/"c87557e258dc7ac7ab2aa5f083020884"]
      Referrer-Policy: [strict-origin-when-cross-origin]
      Transfer-Encoding: [chunked]
      Vary: ['Accept-Encoding, Origin']
      X-Content-Type-Options: [nosniff]
      X-Download-Options: [noopen]
      X-Frame-Options: [SAMEORIGIN]
      X-Permitted-Cross-Domain-Policies: [none]
      X-Request-Id: [fe7eb705-967f-40a8-9b76-416b6f2d8879]
      X-Runtime: ['0.031638']
      X-XSS-Protection: [1; mode=block]
      content-length: ['228']
    status: {code: 200, message: OK}
version: 1
