github.com/googleapis/api-linter@v1.65.2/docs/rules/0132/response-message-name.md (about) 1 --- 2 rule: 3 aip: 132 4 name: [core, '0132', response-message-name] 5 summary: List methods must have standardized response message names. 6 permalink: /132/response-message-name 7 redirect_from: 8 - /0132/response-message-name 9 --- 10 11 # List methods: Response message 12 13 This rule enforces that all `List` RPCs have a response message name of 14 `List*Response`, as mandated in [AIP-132][]. 15 16 ## Details 17 18 This rule looks at any message matching beginning with `List`, and complains if 19 the name of the corresponding returned message does not match the name of the 20 RPC with the suffix `Response` appended. 21 22 ## Examples 23 24 **Incorrect** code for this rule: 25 26 ```proto 27 // Incorrect. 28 // Should be `ListBooksResponse`. 29 rpc ListBooks(ListBooksRequest) returns (Books) { 30 option (google.api.http) = { 31 get: "/v1/{parent=publishers/*}/books" 32 }; 33 } 34 ``` 35 36 **Correct** code for this rule: 37 38 ```proto 39 // Correct. 40 rpc ListBooks(ListBooksRequest) returns (ListBooksResponse) { 41 option (google.api.http) = { 42 get: "/v1/{parent=publishers/*}/books" 43 }; 44 } 45 ``` 46 47 ## Disabling 48 49 If you need to violate this rule, use a leading comment above the method. 50 Remember to also include an [aip.dev/not-precedent][] comment explaining why. 51 52 ```proto 53 // (-- api-linter: core::0132::response-message-name=disabled 54 // aip.dev/not-precedent: We need to do this because reasons. --) 55 rpc ListBooks(ListBooksRequest) returns (Books) { 56 option (google.api.http) = { 57 get: "/v1/{parent=publishers/*}/books" 58 }; 59 } 60 ``` 61 62 If you need to violate this rule for an entire file, place the comment at the 63 top of the file. 64 65 [aip-132]: https://aip.dev/132 66 [aip.dev/not-precedent]: https://aip.dev/not-precedent