)]}'
{"specs/train/add_reset_scope_state_api_endpoint.rst":[{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"1c7ea9dbdc28f591aefaa6595aa050cb93489719","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Add a v2 API endpoint to reset state of different scopes"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://storyboard.openstack.org/#!/story/2005395"}],"source_content_type":"text/x-rst","patch_set":3,"id":"dfbec78f_29e1fb2a","line":8,"range":{"start_line":8,"start_character":26,"end_line":8,"end_character":32},"updated":"2019-05-14 12:44:28.000000000","message":"reset the","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"c9af5fcc40a4d8f100333581fc142800c3172a0b","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Add a v2 API endpoint to reset state of different scopes"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://storyboard.openstack.org/#!/story/2005395"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bfb3d3c7_b9c40042","line":8,"range":{"start_line":8,"start_character":26,"end_line":8,"end_character":32},"in_reply_to":"dfbec78f_29e1fb2a","updated":"2019-05-17 13:41:16.000000000","message":"Done","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"1c7ea9dbdc28f591aefaa6595aa050cb93489719","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://storyboard.openstack.org/#!/story/2005395"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"CloudKitty needs an endpoint for resetting a scope state for its v2 API."},{"line_number":14,"context_line":"This spec aims at defining what is to be done and why."},{"line_number":15,"context_line":"Everything in this document is open to discussion, equally on the associated"},{"line_number":16,"context_line":"storyboard and gerrit."}],"source_content_type":"text/x-rst","patch_set":3,"id":"dfbec78f_8959078f","line":13,"range":{"start_line":13,"start_character":17,"end_line":13,"end_character":71},"updated":"2019-05-14 12:44:28.000000000","message":"Maybe there\u0027s a better formulation ? How about \"needs an endpoint in its v2 API to reset the state of one or several scopes\"","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"c9af5fcc40a4d8f100333581fc142800c3172a0b","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://storyboard.openstack.org/#!/story/2005395"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"CloudKitty needs an endpoint for resetting a scope state for its v2 API."},{"line_number":14,"context_line":"This spec aims at defining what is to be done and why."},{"line_number":15,"context_line":"Everything in this document is open to discussion, equally on the associated"},{"line_number":16,"context_line":"storyboard and gerrit."}],"source_content_type":"text/x-rst","patch_set":3,"id":"bfb3d3c7_79dc4818","line":13,"range":{"start_line":13,"start_character":17,"end_line":13,"end_character":71},"in_reply_to":"dfbec78f_8959078f","updated":"2019-05-17 13:41:16.000000000","message":"I agree with you, it\u0027s indeed better. Done.","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"1c7ea9dbdc28f591aefaa6595aa050cb93489719","unresolved":false,"context_lines":[{"line_number":92,"context_line":"The response will then have the following format:"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":".. code-block:: javascript"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"   {"},{"line_number":97,"context_line":"       \"results\": ["},{"line_number":98,"context_line":"           {"},{"line_number":99,"context_line":"               \"collector\": \"gnocchi\","},{"line_number":100,"context_line":"               \"fetcher\": \"keystone\","},{"line_number":101,"context_line":"               \"scope_id\": \"7a7e5183264644a7a79530eb56e59941\","},{"line_number":102,"context_line":"               \"scope_key\": \"project_id\","},{"line_number":103,"context_line":"               \"state\": \"2019-05-09 10:00:00\""},{"line_number":104,"context_line":"           },"},{"line_number":105,"context_line":"           {"},{"line_number":106,"context_line":"               \"collector\": \"gnocchi\","},{"line_number":107,"context_line":"               \"fetcher\": \"keystone\","},{"line_number":108,"context_line":"               \"scope_id\": \"9084fadcbd46481788e0ad7405dcbf12\","},{"line_number":109,"context_line":"               \"scope_key\": \"project_id\","},{"line_number":110,"context_line":"               \"state\": \"2019-05-09 10:00:00\""},{"line_number":111,"context_line":"           },"},{"line_number":112,"context_line":"           {"},{"line_number":113,"context_line":"               \"collector\": \"gnocchi\","},{"line_number":114,"context_line":"               \"fetcher\": \"keystone\","},{"line_number":115,"context_line":"               \"scope_id\": \"1f41d183fca5490ebda5c63fbaca026a\","},{"line_number":116,"context_line":"               \"scope_key\": \"project_id\","},{"line_number":117,"context_line":"               \"state\": \"2019-05-09 10:00:00\""},{"line_number":118,"context_line":"           }"},{"line_number":119,"context_line":"       ]"},{"line_number":120,"context_line":"   }"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"The expected HTTP success response code for a ``PUT`` request on this endpoint"},{"line_number":123,"context_line":"is ``200 OK``."},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"Expected HTTP error response codes for a ``PUT`` request on this endpoint are:"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"dfbec78f_29dfbbd6","line":123,"range":{"start_line":95,"start_character":0,"end_line":123,"end_character":14},"updated":"2019-05-14 12:44:28.000000000","message":"Given that data deletion/reset may take some time, this will async. Thus, a 202 Accepted HTTP code should be returned once the AMQP notifications have been sent (See https://review.opendev.org/#/c/657393). The body can be either empty or contain some information about the notifications, both possibilities are fine for me","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"c9af5fcc40a4d8f100333581fc142800c3172a0b","unresolved":false,"context_lines":[{"line_number":92,"context_line":"The response will then have the following format:"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":".. code-block:: javascript"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"   {"},{"line_number":97,"context_line":"       \"results\": ["},{"line_number":98,"context_line":"           {"},{"line_number":99,"context_line":"               \"collector\": \"gnocchi\","},{"line_number":100,"context_line":"               \"fetcher\": \"keystone\","},{"line_number":101,"context_line":"               \"scope_id\": \"7a7e5183264644a7a79530eb56e59941\","},{"line_number":102,"context_line":"               \"scope_key\": \"project_id\","},{"line_number":103,"context_line":"               \"state\": \"2019-05-09 10:00:00\""},{"line_number":104,"context_line":"           },"},{"line_number":105,"context_line":"           {"},{"line_number":106,"context_line":"               \"collector\": \"gnocchi\","},{"line_number":107,"context_line":"               \"fetcher\": \"keystone\","},{"line_number":108,"context_line":"               \"scope_id\": \"9084fadcbd46481788e0ad7405dcbf12\","},{"line_number":109,"context_line":"               \"scope_key\": \"project_id\","},{"line_number":110,"context_line":"               \"state\": \"2019-05-09 10:00:00\""},{"line_number":111,"context_line":"           },"},{"line_number":112,"context_line":"           {"},{"line_number":113,"context_line":"               \"collector\": \"gnocchi\","},{"line_number":114,"context_line":"               \"fetcher\": \"keystone\","},{"line_number":115,"context_line":"               \"scope_id\": \"1f41d183fca5490ebda5c63fbaca026a\","},{"line_number":116,"context_line":"               \"scope_key\": \"project_id\","},{"line_number":117,"context_line":"               \"state\": \"2019-05-09 10:00:00\""},{"line_number":118,"context_line":"           }"},{"line_number":119,"context_line":"       ]"},{"line_number":120,"context_line":"   }"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"The expected HTTP success response code for a ``PUT`` request on this endpoint"},{"line_number":123,"context_line":"is ``200 OK``."},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"Expected HTTP error response codes for a ``PUT`` request on this endpoint are:"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bfb3d3c7_d9d694f2","line":123,"range":{"start_line":95,"start_character":0,"end_line":123,"end_character":14},"in_reply_to":"dfbec78f_29dfbbd6","updated":"2019-05-17 13:41:16.000000000","message":"Done.\n\nI have added a ``quiet`` option to disable response data. I don\u0027t know if it\u0027s gonna be used though. Expecting your thoughts on this.","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"1c7ea9dbdc28f591aefaa6595aa050cb93489719","unresolved":false,"context_lines":[{"line_number":130,"context_line":"* ``403 Forbidden``: The user is not authorized to reset the state of any scope."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"* ``404 Not Found``: No scope was found for the provided parameters. This will"},{"line_number":133,"context_line":"  also happen in the case where both ``all_scopes`` and ``scope_id`` parameters"},{"line_number":134,"context_line":"  are missing."},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"This endpoint will be only authorized to admins."},{"line_number":137,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"dfbec78f_09fbd746","line":134,"range":{"start_line":133,"start_character":32,"end_line":134,"end_character":14},"updated":"2019-05-14 12:44:28.000000000","message":"Shouldn\u0027t this rather be a 400 ?","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"c9af5fcc40a4d8f100333581fc142800c3172a0b","unresolved":false,"context_lines":[{"line_number":130,"context_line":"* ``403 Forbidden``: The user is not authorized to reset the state of any scope."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"* ``404 Not Found``: No scope was found for the provided parameters. This will"},{"line_number":133,"context_line":"  also happen in the case where both ``all_scopes`` and ``scope_id`` parameters"},{"line_number":134,"context_line":"  are missing."},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"This endpoint will be only authorized to admins."},{"line_number":137,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bfb3d3c7_990a5c88","line":134,"range":{"start_line":133,"start_character":32,"end_line":134,"end_character":14},"in_reply_to":"dfbec78f_09fbd746","updated":"2019-05-17 13:41:16.000000000","message":"It would be simpler to grasp indeed. Done.","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"1c7ea9dbdc28f591aefaa6595aa050cb93489719","unresolved":false,"context_lines":[{"line_number":146,"context_line":"Notifications Impact"},{"line_number":147,"context_line":"--------------------"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"None."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"Other end user impact"},{"line_number":152,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"dfbec78f_6987f3b6","line":149,"range":{"start_line":149,"start_character":0,"end_line":149,"end_character":5},"updated":"2019-05-14 12:44:28.000000000","message":"Notifications will be sent to an AMQP listener in order to trigger state reset. Could you also specify the format of the notification you intend to use ?","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"c9af5fcc40a4d8f100333581fc142800c3172a0b","unresolved":false,"context_lines":[{"line_number":146,"context_line":"Notifications Impact"},{"line_number":147,"context_line":"--------------------"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"None."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"Other end user impact"},{"line_number":152,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bfb3d3c7_19f66c91","line":149,"range":{"start_line":149,"start_character":0,"end_line":149,"end_character":5},"in_reply_to":"dfbec78f_6987f3b6","updated":"2019-05-17 13:41:16.000000000","message":"Done","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"1c7ea9dbdc28f591aefaa6595aa050cb93489719","unresolved":false,"context_lines":[{"line_number":157,"context_line":"Performance Impact"},{"line_number":158,"context_line":"------------------"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"None."},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"Other deployer impact"},{"line_number":163,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"dfbec78f_a9a16b48","line":160,"range":{"start_line":160,"start_character":0,"end_line":160,"end_character":5},"updated":"2019-05-14 12:44:28.000000000","message":"Data deletion and locking may have an impact on performance. You put something similar to what can be found in https://review.opendev.org/#/c/657393 here","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"c9af5fcc40a4d8f100333581fc142800c3172a0b","unresolved":false,"context_lines":[{"line_number":157,"context_line":"Performance Impact"},{"line_number":158,"context_line":"------------------"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"None."},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"Other deployer impact"},{"line_number":163,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bfb3d3c7_b9f2c099","line":160,"range":{"start_line":160,"start_character":0,"end_line":160,"end_character":5},"in_reply_to":"dfbec78f_a9a16b48","updated":"2019-05-17 13:41:16.000000000","message":"Done","commit_id":"822bcf9b3e60a9d1ac00a4728a9b5c8499008a59"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"8166f282e558b6fa74f8bb022c9053dd266842ec","unresolved":false,"context_lines":[{"line_number":78,"context_line":"* ``collector``: (optional) Can be specified several times. One or several"},{"line_number":79,"context_line":"  collectors to filter on to reset associated scope states."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"* ``fetcher``: (optional) Can be specified several 3times. One or several"},{"line_number":82,"context_line":"  fetchers to filter on to reset associated scope states."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"* ``scope_key``: (optional) Can be specified several times. One or several"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_79b768da","line":81,"range":{"start_line":81,"start_character":51,"end_line":81,"end_character":52},"updated":"2019-05-20 08:10:00.000000000","message":"typo","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"662c4fb1bf7965251c7798e3cb7f5c5e820a03b6","unresolved":false,"context_lines":[{"line_number":78,"context_line":"* ``collector``: (optional) Can be specified several times. One or several"},{"line_number":79,"context_line":"  collectors to filter on to reset associated scope states."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"* ``fetcher``: (optional) Can be specified several 3times. One or several"},{"line_number":82,"context_line":"  fetchers to filter on to reset associated scope states."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"* ``scope_key``: (optional) Can be specified several times. One or several"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_853aae95","line":81,"range":{"start_line":81,"start_character":51,"end_line":81,"end_character":52},"in_reply_to":"bfb3d3c7_79b768da","updated":"2019-05-22 07:50:15.000000000","message":"Done","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"8166f282e558b6fa74f8bb022c9053dd266842ec","unresolved":false,"context_lines":[{"line_number":92,"context_line":"respond to the caller with a ``202 Accepted``, once the notifications have been"},{"line_number":93,"context_line":"sent across the message queue."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"If the ``quiet`` option is not set. The response will be similar to what"},{"line_number":96,"context_line":"returns the ``GET /v2/scope`` endpoint which is a paginated list of scopes."},{"line_number":97,"context_line":"In this case, only the scopes targeted for a state reset will be returned."},{"line_number":98,"context_line":"The response output can be paginated using the ``offset`` and ``limit``"},{"line_number":99,"context_line":"parameters."}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_99e1fcd3","line":96,"range":{"start_line":95,"start_character":65,"end_line":96,"end_character":39},"updated":"2019-05-20 08:10:00.000000000","message":"\"To what the xx endpoint returns\" ?","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"662c4fb1bf7965251c7798e3cb7f5c5e820a03b6","unresolved":false,"context_lines":[{"line_number":92,"context_line":"respond to the caller with a ``202 Accepted``, once the notifications have been"},{"line_number":93,"context_line":"sent across the message queue."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"If the ``quiet`` option is not set. The response will be similar to what"},{"line_number":96,"context_line":"returns the ``GET /v2/scope`` endpoint which is a paginated list of scopes."},{"line_number":97,"context_line":"In this case, only the scopes targeted for a state reset will be returned."},{"line_number":98,"context_line":"The response output can be paginated using the ``offset`` and ``limit``"},{"line_number":99,"context_line":"parameters."}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_2541820c","line":96,"range":{"start_line":95,"start_character":65,"end_line":96,"end_character":39},"in_reply_to":"bfb3d3c7_99e1fcd3","updated":"2019-05-22 07:50:15.000000000","message":"Done","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"8166f282e558b6fa74f8bb022c9053dd266842ec","unresolved":false,"context_lines":[{"line_number":131,"context_line":"Expected HTTP error response codes for a ``PUT`` request on this endpoint are:"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"* ``400 Bad Request``: Malformed request. This will also happen in the case"},{"line_number":134,"context_line":"  where ``all_scopes`` and ``scope_id`` parameters are both present or both"},{"line_number":135,"context_line":"  missing."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"* ``403 Forbidden``: The user is not authorized to reset the state of any scope."}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_395b3088","line":134,"range":{"start_line":134,"start_character":71,"end_line":134,"end_character":75},"updated":"2019-05-20 08:10:00.000000000","message":"not needed","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"662c4fb1bf7965251c7798e3cb7f5c5e820a03b6","unresolved":false,"context_lines":[{"line_number":131,"context_line":"Expected HTTP error response codes for a ``PUT`` request on this endpoint are:"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"* ``400 Bad Request``: Malformed request. This will also happen in the case"},{"line_number":134,"context_line":"  where ``all_scopes`` and ``scope_id`` parameters are both present or both"},{"line_number":135,"context_line":"  missing."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"* ``403 Forbidden``: The user is not authorized to reset the state of any scope."}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_4544b61b","line":134,"range":{"start_line":134,"start_character":71,"end_line":134,"end_character":75},"in_reply_to":"bfb3d3c7_395b3088","updated":"2019-05-22 07:50:15.000000000","message":"Done","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"8166f282e558b6fa74f8bb022c9053dd266842ec","unresolved":false,"context_lines":[{"line_number":190,"context_line":"------------------"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":"The deletion operation carried by the scope state reset call will depend on the"},{"line_number":193,"context_line":"amount of data associated to the targeted scopes and may be time consuming,"},{"line_number":194,"context_line":"impairing the database performance in the same course."},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"Other deployer impact"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_6dc5518e","line":193,"range":{"start_line":193,"start_character":15,"end_line":193,"end_character":28},"updated":"2019-05-20 08:10:00.000000000","message":"associated with ? Not 100% sure about this one though","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"662c4fb1bf7965251c7798e3cb7f5c5e820a03b6","unresolved":false,"context_lines":[{"line_number":190,"context_line":"------------------"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":"The deletion operation carried by the scope state reset call will depend on the"},{"line_number":193,"context_line":"amount of data associated to the targeted scopes and may be time consuming,"},{"line_number":194,"context_line":"impairing the database performance in the same course."},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"Other deployer impact"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_0546be22","line":193,"range":{"start_line":193,"start_character":15,"end_line":193,"end_character":28},"in_reply_to":"bfb3d3c7_6dc5518e","updated":"2019-05-22 07:50:15.000000000","message":"Done","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":23060,"name":"Luka Peschke","email":"mail@lukapeschke.com","username":"lukapeschke"},"change_message_id":"8166f282e558b6fa74f8bb022c9053dd266842ec","unresolved":false,"context_lines":[{"line_number":248,"context_line":"References"},{"line_number":249,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"Spec to get/reset the state of a scope: https://review.opendev.org/#/c/657393/"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_0d3cd591","line":251,"range":{"start_line":251,"start_character":40,"end_line":251,"end_character":78},"updated":"2019-05-20 08:10:00.000000000","message":"The spec has been merged, let\u0027s put the final link instead: https://specs.openstack.org/openstack/cloudkitty-specs/specs/train/reset_scope_state.html","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"},{"author":{"_account_id":29503,"name":"Justin Ferrieu","email":"jferrieu@objectif-libre.com","username":"jferrieu"},"change_message_id":"662c4fb1bf7965251c7798e3cb7f5c5e820a03b6","unresolved":false,"context_lines":[{"line_number":248,"context_line":"References"},{"line_number":249,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":250,"context_line":""},{"line_number":251,"context_line":"Spec to get/reset the state of a scope: https://review.opendev.org/#/c/657393/"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bfb3d3c7_c568a688","line":251,"range":{"start_line":251,"start_character":40,"end_line":251,"end_character":78},"in_reply_to":"bfb3d3c7_0d3cd591","updated":"2019-05-22 07:50:15.000000000","message":"Done","commit_id":"567111ca1929b3f0ef90483c480c7aa4ae19d068"}]}
