1use crate::{
2 domain::{
3 BalanceResponse, RelayerUpdateRequest, SignDataRequest, SignDataResponse,
4 SignTypedDataRequest,
5 },
6 models::{
7 ApiResponse, DeletePendingTransactionsResponse, JsonRpcRequest, JsonRpcResponse,
8 NetworkRpcRequest, NetworkRpcResult, NetworkTransactionRequest, RelayerResponse,
9 RelayerStatus, TransactionResponse,
10 },
11};
12#[utoipa::path(
18 get,
19 path = "/api/v1/relayers",
20 tag = "Relayers",
21 operation_id = "listRelayers",
22 security(
23 ("bearer_auth" = [])
24 ),
25 params(
26 ("page" = Option<usize>, Query, description = "Page number for pagination (starts at 1)"),
27 ("per_page" = Option<usize>, Query, description = "Number of items per page (default: 10)")
28 ),
29 responses(
30 (
31 status = 200,
32 description = "Relayer list retrieved successfully",
33 body = ApiResponse<Vec<RelayerResponse>>
34 ),
35 (
36 status = 400,
37 description = "BadRequest",
38 body = ApiResponse<String>,
39 example = json!({
40 "success": false,
41 "message": "Bad Request",
42 "data": null
43 })
44 ),
45 (
46 status = 401,
47 description = "Unauthorized",
48 body = ApiResponse<String>,
49 example = json!({
50 "success": false,
51 "message": "Unauthorized",
52 "data": null
53 })
54 ),
55 (
56 status = 429,
57 description = "Too Many Requests",
58 body = ApiResponse<String>,
59 example = json!({
60 "success": false,
61 "message": "Too Many Requests",
62 "data": null
63 })
64 ),
65 (
66 status = 500,
67 description = "Internal server error",
68 body = ApiResponse<String>,
69 example = json!({
70 "success": false,
71 "message": "Internal Server Error",
72 "data": null
73 })
74 ),
75 )
76)]
77#[allow(dead_code)]
78fn doc_list_relayers() {}
79
80#[utoipa::path(
82 get,
83 path = "/api/v1/relayers/{relayer_id}",
84 tag = "Relayers",
85 operation_id = "getRelayer",
86 security(
87 ("bearer_auth" = [])
88 ),
89 params(
90 ("relayer_id" = String, Path, description = "The unique identifier of the relayer")
91 ),
92 responses(
93 (
94 status = 200,
95 description = "Relayer details retrieved successfully",
96 body = ApiResponse<RelayerResponse>
97 ),
98 (
99 status = 400,
100 description = "BadRequest",
101 body = ApiResponse<String>,
102 example = json!({
103 "success": false,
104 "message": "Bad Request",
105 "data": null
106 })
107 ),
108 (
109 status = 401,
110 description = "Unauthorized",
111 body = ApiResponse<String>,
112 example = json!({
113 "success": false,
114 "message": "Unauthorized",
115 "data": null
116 })
117 ),
118 (
119 status = 404,
120 description = "Not Found",
121 body = ApiResponse<String>,
122 example = json!({
123 "success": false,
124 "message": "Relayer with ID relayer_id not found",
125 "data": null
126 })
127 ),
128 (
129 status = 429,
130 description = "Too Many Requests",
131 body = ApiResponse<String>,
132 example = json!({
133 "success": false,
134 "message": "Too Many Requests",
135 "data": null
136 })
137 ),
138 (
139 status = 500,
140 description = "Internal server error",
141 body = ApiResponse<String>,
142 example = json!({
143 "success": false,
144 "message": "Internal Server Error",
145 "data": null
146 })
147 ),
148 )
149)]
150#[allow(dead_code)]
151fn doc_get_relayer() {}
152
153#[utoipa::path(
155 patch,
156 path = "/api/v1/relayers/{relayer_id}",
157 tag = "Relayers",
158 operation_id = "updateRelayer",
159 security(
160 ("bearer_auth" = [])
161 ),
162 params(
163 ("relayer_id" = String, Path, description = "The unique identifier of the relayer")
164 ),
165 request_body = RelayerUpdateRequest,
166 responses(
167 (status = 200, description = "Relayer updated successfully", body = ApiResponse<RelayerResponse>),
168 (
169 status = 400,
170 description = "BadRequest",
171 body = ApiResponse<String>,
172 example = json!({
173 "success": false,
174 "message": "Bad Request",
175 "data": null
176 })
177 ),
178 (
179 status = 401,
180 description = "Unauthorized",
181 body = ApiResponse<String>,
182 example = json!({
183 "success": false,
184 "message": "Unauthorized",
185 "data": null
186 })
187 ),
188 (
189 status = 404,
190 description = "Not Found",
191 body = ApiResponse<String>,
192 example = json!({
193 "success": false,
194 "message": "Relayer with ID relayer_id not found",
195 "data": null
196 })
197 ),
198 (
199 status = 429,
200 description = "Too Many Requests",
201 body = ApiResponse<String>,
202 example = json!({
203 "success": false,
204 "message": "Too Many Requests",
205 "data": null
206 })
207 ),
208 (
209 status = 500,
210 description = "Internal server error",
211 body = ApiResponse<String>,
212 example = json!({
213 "success": false,
214 "message": "Internal Server Error",
215 "data": null
216 })
217 ),
218 )
219)]
220#[allow(dead_code)]
221fn doc_update_relayer() {}
222
223#[utoipa::path(
225 get,
226 path = "/api/v1/relayers/{relayer_id}/status",
227 tag = "Relayers",
228 operation_id = "getRelayerStatus",
229 security(
230 ("bearer_auth" = [])
231 ),
232 params(
233 ("relayer_id" = String, Path, description = "The unique identifier of the relayer")
234 ),
235 responses(
236 (status = 200, description = "Relayer status retrieved successfully", body = ApiResponse<RelayerStatus>),
237 (
238 status = 400,
239 description = "BadRequest",
240 body = ApiResponse<String>,
241 example = json!({
242 "success": false,
243 "message": "Bad Request",
244 "data": null
245 })
246 ),
247 (
248 status = 401,
249 description = "Unauthorized",
250 body = ApiResponse<String>,
251 example = json!({
252 "success": false,
253 "message": "Unauthorized",
254 "data": null
255 })
256 ),
257 (
258 status = 404,
259 description = "Not Found",
260 body = ApiResponse<String>,
261 example = json!({
262 "success": false,
263 "message": "Relayer with ID relayer_id not found",
264 "data": null
265 })
266 ),
267 (
268 status = 429,
269 description = "Too Many Requests",
270 body = ApiResponse<String>,
271 example = json!({
272 "success": false,
273 "message": "Too Many Requests",
274 "data": null
275 })
276 ),
277 (
278 status = 500,
279 description = "Internal server error",
280 body = ApiResponse<String>,
281 example = json!({
282 "success": false,
283 "message": "Internal Server Error",
284 "data": null
285 })
286 ),
287 )
288)]
289#[allow(dead_code)]
290fn doc_get_relayer_status() {}
291
292#[utoipa::path(
294 get,
295 path = "/api/v1/relayers/{relayer_id}/balance",
296 tag = "Relayers",
297 operation_id = "getRelayerBalance",
298 security(
299 ("bearer_auth" = [])
300 ),
301 params(
302 ("relayer_id" = String, Path, description = "The unique identifier of the relayer")
303 ),
304 responses(
305 (status = 200, description = "Relayer balance retrieved successfully", body = ApiResponse<BalanceResponse>),
306 (
307 status = 400,
308 description = "BadRequest",
309 body = ApiResponse<String>,
310 example = json!({
311 "success": false,
312 "message": "Bad Request",
313 "data": null
314 })
315 ),
316 (
317 status = 401,
318 description = "Unauthorized",
319 body = ApiResponse<String>,
320 example = json!({
321 "success": false,
322 "message": "Unauthorized",
323 "data": null
324 })
325 ),
326 (
327 status = 404,
328 description = "Not Found",
329 body = ApiResponse<String>,
330 example = json!({
331 "success": false,
332 "message": "Relayer with ID relayer_id not found",
333 "data": null
334 })
335 ),
336 (
337 status = 429,
338 description = "Too Many Requests",
339 body = ApiResponse<String>,
340 example = json!({
341 "success": false,
342 "message": "Too Many Requests",
343 "data": null
344 })
345 ),
346 (
347 status = 500,
348 description = "Internal server error",
349 body = ApiResponse<String>,
350 example = json!({
351 "success": false,
352 "message": "Internal Server Error",
353 "data": null
354 })
355 ),
356 )
357)]
358#[allow(dead_code)]
359fn doc_get_relayer_balance() {}
360
361#[utoipa::path(
363 post,
364 path = "/api/v1/relayers/{relayer_id}/transactions",
365 tag = "Relayers",
366 operation_id = "sendTransaction",
367 security(
368 ("bearer_auth" = [])
369 ),
370 params(
371 ("relayer_id" = String, Path, description = "The unique identifier of the relayer")
372 ),
373 request_body = NetworkTransactionRequest,
374 responses(
375 (status = 200, description = "Relayer transactions sent successfully", body = ApiResponse<TransactionResponse>),
376 (
377 status = 400,
378 description = "BadRequest",
379 body = ApiResponse<String>,
380 example = json!({
381 "success": false,
382 "message": "Bad Request",
383 "data": null
384 })
385 ),
386 (
387 status = 401,
388 description = "Unauthorized",
389 body = ApiResponse<String>,
390 example = json!({
391 "success": false,
392 "message": "Unauthorized",
393 "data": null
394 })
395 ),
396 (
397 status = 404,
398 description = "Not Found",
399 body = ApiResponse<String>,
400 example = json!({
401 "success": false,
402 "message": "Relayer with ID relayer_id not found",
403 "data": null
404 })
405 ),
406 (
407 status = 429,
408 description = "Too Many Requests",
409 body = ApiResponse<String>,
410 example = json!({
411 "success": false,
412 "message": "Too Many Requests",
413 "data": null
414 })
415 ),
416 (
417 status = 500,
418 description = "Internal server error",
419 body = ApiResponse<String>,
420 example = json!({
421 "success": false,
422 "message": "Internal Server Error",
423 "data": null
424 })
425 ),
426 )
427)]
428#[allow(dead_code)]
429fn doc_send_transaction() {}
430
431#[utoipa::path(
433 get,
434 path = "/api/v1/relayers/{relayer_id}/transactions/{transaction_id}",
435 operation_id = "getTransactionById",
436 tag = "Relayers",
437 security(
438 ("bearer_auth" = [])
439 ),
440 params(
441 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
442 ("transaction_id" = String, Path, description = "The unique identifier of the transaction")
443 ),
444 responses(
445 (status = 200, description = "Relayer transaction retrieved successfully", body = ApiResponse<TransactionResponse>),
446 (
447 status = 400,
448 description = "BadRequest",
449 body = ApiResponse<String>,
450 example = json!({
451 "success": false,
452 "message": "Bad Request",
453 "data": null
454 })
455 ),
456 (
457 status = 401,
458 description = "Unauthorized",
459 body = ApiResponse<String>,
460 example = json!({
461 "success": false,
462 "message": "Unauthorized",
463 "data": null
464 })
465 ),
466 (
467 status = 429,
468 description = "Too Many Requests",
469 body = ApiResponse<String>,
470 example = json!({
471 "success": false,
472 "message": "Too Many Requests",
473 "data": null
474 })
475 ),
476 (
477 status = 404,
478 description = "Not Found",
479 body = ApiResponse<String>,
480 example = json!({
481 "success": false,
482 "message": "Not Found",
483 "data": null
484 })
485 ),
486 (
487 status = 500,
488 description = "Internal server error",
489 body = ApiResponse<String>,
490 example = json!({
491 "success": false,
492 "message": "Internal Server Error",
493 "data": null
494 })
495 ),
496 )
497)]
498#[allow(dead_code)]
499fn doc_get_transaction_by_id() {}
500
501#[utoipa::path(
503 get,
504 path = "/api/v1/relayers/{relayer_id}/transactions/by-nonce/{nonce}",
505 tag = "Relayers",
506 operation_id = "getTransactionByNonce",
507 security(
508 ("bearer_auth" = [])
509 ),
510 params(
511 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
512 ("nonce" = usize, Path, description = "The nonce of the transaction")
513 ),
514 responses(
515 (status = 200, description = "Relayer transaction retrieved successfully", body = ApiResponse<TransactionResponse>),
516 (
517 status = 400,
518 description = "BadRequest",
519 body = ApiResponse<String>,
520 example = json!({
521 "success": false,
522 "message": "Bad Request",
523 "data": null
524 })
525 ),
526 (
527 status = 401,
528 description = "Unauthorized",
529 body = ApiResponse<String>,
530 example = json!({
531 "success": false,
532 "message": "Unauthorized",
533 "data": null
534 })
535 ),
536 (
537 status = 404,
538 description = "Not Found",
539 body = ApiResponse<String>,
540 example = json!({
541 "success": false,
542 "message": "Not found",
543 "data": null
544 })
545 ),
546 (
547 status = 429,
548 description = "Too Many Requests",
549 body = ApiResponse<String>,
550 example = json!({
551 "success": false,
552 "message": "Too Many Requests",
553 "data": null
554 })
555 ),
556 (
557 status = 500,
558 description = "Internal server error",
559 body = ApiResponse<String>,
560 example = json!({
561 "success": false,
562 "message": "Internal Server Error",
563 "data": null
564 })
565 ),
566 )
567)]
568#[allow(dead_code)]
569fn doc_get_transaction_by_nonce() {}
570
571#[utoipa::path(
573 get,
574 path = "/api/v1/relayers/{relayer_id}/transactions/",
575 tag = "Relayers",
576 operation_id = "listTransactions",
577 security(
578 ("bearer_auth" = [])
579 ),
580 params(
581 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
582 ("page" = Option<usize>, Query, description = "Page number for pagination (starts at 1)"),
583 ("per_page" = Option<usize>, Query, description = "Number of items per page (default: 10)")
584 ),
585 responses(
586 (status = 200, description = "Relayer transactions retrieved successfully", body = ApiResponse<Vec<TransactionResponse>>),
587 (
588 status = 400,
589 description = "BadRequest",
590 body = ApiResponse<String>,
591 example = json!({
592 "success": false,
593 "message": "Bad Request",
594 "data": null
595 })
596 ),
597 (
598 status = 401,
599 description = "Unauthorized",
600 body = ApiResponse<String>,
601 example = json!({
602 "success": false,
603 "message": "Unauthorized",
604 "data": null
605 })
606 ),
607 (
608 status = 404,
609 description = "Not Found",
610 body = ApiResponse<String>,
611 example = json!({
612 "success": false,
613 "message": "Relayer with ID relayer_id not found",
614 "data": null
615 })
616 ),
617 (
618 status = 429,
619 description = "Too Many Requests",
620 body = ApiResponse<String>,
621 example = json!({
622 "success": false,
623 "message": "Too Many Requests",
624 "data": null
625 })
626 ),
627 (
628 status = 500,
629 description = "Internal server error",
630 body = ApiResponse<String>,
631 example = json!({
632 "success": false,
633 "message": "Internal Server Error",
634 "data": null
635 })
636 ),
637 )
638)]
639#[allow(dead_code)]
640fn doc_list_transactions() {}
641
642#[utoipa::path(
644 delete,
645 path = "/api/v1/relayers/{relayer_id}/transactions/pending",
646 tag = "Relayers",
647 operation_id = "deletePendingTransactions",
648 security(
649 ("bearer_auth" = [])
650 ),
651 params(
652 ("relayer_id" = String, Path, description = "The unique identifier of the relayer")
653 ),
654 responses(
655 (status = 200, description = "Relayer pending transactions successfully", body = ApiResponse<DeletePendingTransactionsResponse>),
656 (
657 status = 400,
658 description = "BadRequest",
659 body = ApiResponse<String>,
660 example = json!({
661 "success": false,
662 "message": "Bad Request",
663 "data": null
664 })
665 ),
666 (
667 status = 401,
668 description = "Unauthorized",
669 body = ApiResponse<String>,
670 example = json!({
671 "success": false,
672 "message": "Unauthorized",
673 "data": null
674 })
675 ),
676 (
677 status = 404,
678 description = "Not Found",
679 body = ApiResponse<String>,
680 example = json!({
681 "success": false,
682 "message": "Relayer with ID relayer_id not found",
683 "data": null
684 })
685 ),
686 (
687 status = 429,
688 description = "Too Many Requests",
689 body = ApiResponse<String>,
690 example = json!({
691 "success": false,
692 "message": "Too Many Requests",
693 "data": null
694 })
695 ),
696 (
697 status = 500,
698 description = "Internal server error",
699 body = ApiResponse<String>,
700 example = json!({
701 "success": false,
702 "message": "Internal Server Error",
703 "data": null
704 })
705 ),
706 )
707)]
708#[allow(dead_code)]
709fn doc_delete_pending_transactions() {}
710
711#[utoipa::path(
713 delete,
714 path = "/api/v1/relayers/{relayer_id}/transactions/{transaction_id}",
715 tag = "Relayers",
716 operation_id = "cancelTransaction",
717 security(
718 ("bearer_auth" = [])
719 ),
720 params(
721 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
722 ("transaction_id" = String, Path, description = "The unique identifier of the transaction")
723 ),
724 responses(
725 (status = 200, description = "Relayer transaction canceled successfully", body = ApiResponse<TransactionResponse>),
726 (
727 status = 400,
728 description = "BadRequest",
729 body = ApiResponse<String>,
730 example = json!({
731 "success": false,
732 "message": "Bad Request",
733 "data": null
734 })
735 ),
736 (
737 status = 401,
738 description = "Unauthorized",
739 body = ApiResponse<String>,
740 example = json!({
741 "success": false,
742 "message": "Unauthorized",
743 "data": null
744 })
745 ),
746 (
747 status = 404,
748 description = "Not Found",
749 body = ApiResponse<String>,
750 example = json!({
751 "success": false,
752 "message": "Not found",
753 "data": null
754 })
755 ),
756 (
757 status = 429,
758 description = "Too Many Requests",
759 body = ApiResponse<String>,
760 example = json!({
761 "success": false,
762 "message": "Too Many Requests",
763 "data": null
764 })
765 ),
766 (
767 status = 500,
768 description = "Internal server error",
769 body = ApiResponse<String>,
770 example = json!({
771 "success": false,
772 "message": "Internal Server Error",
773 "data": null
774 })
775 ),
776 )
777)]
778#[allow(dead_code)]
779fn doc_cancel_transaction() {}
780
781#[utoipa::path(
783 put,
784 path = "/api/v1/relayers/{relayer_id}/transactions/{transaction_id}",
785 tag = "Relayers",
786 operation_id = "replaceTransaction",
787 security(
788 ("bearer_auth" = [])
789 ),
790 params(
791 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
792 ("transaction_id" = String, Path, description = "The unique identifier of the transaction")
793 ),
794 responses(
795 (status = 200, description = "Relayer transaction replaced successfully", body = ApiResponse<TransactionResponse>),
796 (
797 status = 400,
798 description = "BadRequest",
799 body = ApiResponse<String>,
800 example = json!({
801 "success": false,
802 "message": "Bad Request",
803 "data": null
804 })
805 ),
806 (
807 status = 401,
808 description = "Unauthorized",
809 body = ApiResponse<String>,
810 example = json!({
811 "success": false,
812 "message": "Unauthorized",
813 "data": null
814 })
815 ),
816 (
817 status = 404,
818 description = "Not Found",
819 body = ApiResponse<String>,
820 example = json!({
821 "success": false,
822 "message": "Not found",
823 "data": null
824 })
825 ),
826 (
827 status = 429,
828 description = "Too Many Requests",
829 body = ApiResponse<String>,
830 example = json!({
831 "success": false,
832 "message": "Too Many Requests",
833 "data": null
834 })
835 ),
836 (
837 status = 500,
838 description = "Internal server error",
839 body = ApiResponse<String>,
840 example = json!({
841 "success": false,
842 "message": "Internal Server Error",
843 "data": null
844 })
845 ),
846 )
847)]
848#[allow(dead_code)]
849fn doc_replace_transaction() {}
850
851#[utoipa::path(
853 post,
854 path = "/api/v1/relayers/{relayer_id}/sign",
855 operation_id = "sign",
856 tag = "Relayers",
857 security(
858 ("bearer_auth" = [])
859 ),
860 params(
861 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
862 ),
863 request_body = SignDataRequest,
864 responses(
865 (status = 200, description = "Relayer signed data successfully", body = ApiResponse<SignDataResponse>),
866 (
867 status = 400,
868 description = "BadRequest",
869 body = ApiResponse<String>,
870 example = json!({
871 "success": false,
872 "message": "Bad Request",
873 "data": null
874 })
875 ),
876 (
877 status = 401,
878 description = "Unauthorized",
879 body = ApiResponse<String>,
880 example = json!({
881 "success": false,
882 "message": "Unauthorized",
883 "data": null
884 })
885 ),
886 (
887 status = 404,
888 description = "Not Found",
889 body = ApiResponse<String>,
890 example = json!({
891 "success": false,
892 "message": "Not found",
893 "data": null
894 })
895 ),
896 (
897 status = 429,
898 description = "Too Many Requests",
899 body = ApiResponse<String>,
900 example = json!({
901 "success": false,
902 "message": "Too Many Requests",
903 "data": null
904 })
905 ),
906 (
907 status = 500,
908 description = "Internal server error",
909 body = ApiResponse<String>,
910 example = json!({
911 "success": false,
912 "message": "Internal Server Error",
913 "data": null
914 })
915 ),
916 )
917)]
918#[allow(dead_code)]
919fn doc_sign() {}
920
921#[utoipa::path(
923 post,
924 path = "/api/v1/relayers/{relayer_id}/sign-typed-data",
925 tag = "Relayers",
926 operation_id = "signTypedData",
927 security(
928 ("bearer_auth" = [])
929 ),
930 params(
931 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
932 ),
933 request_body = SignTypedDataRequest,
934 responses(
935 (status = 200, description = "Relayer signed typed data successfully", body = ApiResponse<SignDataResponse>),
936 (
937 status = 400,
938 description = "BadRequest",
939 body = ApiResponse<String>,
940 example = json!({
941 "success": false,
942 "message": "Bad Request",
943 "data": null
944 })
945 ),
946 (
947 status = 401,
948 description = "Unauthorized",
949 body = ApiResponse<String>,
950 example = json!({
951 "success": false,
952 "message": "Unauthorized",
953 "data": null
954 })
955 ),
956 (
957 status = 404,
958 description = "Not Found",
959 body = ApiResponse<String>,
960 example = json!({
961 "success": false,
962 "message": "Relayer with ID relayer_id not found",
963 "data": null
964 })
965 ),
966 (
967 status = 429,
968 description = "Too Many Requests",
969 body = ApiResponse<String>,
970 example = json!({
971 "success": false,
972 "message": "Too Many Requests",
973 "data": null
974 })
975 ),
976 (
977 status = 500,
978 description = "Internal server error",
979 body = ApiResponse<String>,
980 example = json!({
981 "success": false,
982 "message": "Internal Server Error",
983 "data": null
984 })
985 ),
986 )
987)]
988#[allow(dead_code)]
989fn doc_sign_typed_data() {}
990
991#[utoipa::path(
993 post,
994 path = "/api/v1/relayers/{relayer_id}/rpc",
995 tag = "Relayers",
996 operation_id = "rpc",
997 security(
998 ("bearer_auth" = [])
999 ),
1000 params(
1001 ("relayer_id" = String, Path, description = "The unique identifier of the relayer"),
1002 ),
1003 request_body(content = JsonRpcRequest<NetworkRpcRequest>,
1004 description = "JSON-RPC request with method and parameters", content_type = "application/json", example = json!({
1005 "jsonrpc": "2.0",
1006 "method": "feeEstimate",
1007 "params": {
1008 "network": "solana",
1009 "transaction": "base64_encoded_transaction",
1010 "fee_token": "SOL"
1011 },
1012 "id": 1
1013 })),
1014 responses(
1015 (status = 200, description = "RPC method executed successfully", body = JsonRpcResponse<NetworkRpcResult>),
1016 (
1017 status = 400,
1018 description = "BadRequest",
1019 body = ApiResponse<String>,
1020 example = json!({
1021 "success": false,
1022 "message": "Bad Request",
1023 "data": null
1024 })
1025 ),
1026 (
1027 status = 401,
1028 description = "Unauthorized",
1029 body = ApiResponse<String>,
1030 example = json!({
1031 "success": false,
1032 "message": "Unauthorized",
1033 "data": null
1034 })
1035 ),
1036 (
1037 status = 404,
1038 description = "Not Found",
1039 body = ApiResponse<String>,
1040 example = json!({
1041 "success": false,
1042 "message": "Relayer with ID relayer_id not found",
1043 "data": null
1044 })
1045 ),
1046 (
1047 status = 429,
1048 description = "Too Many Requests",
1049 body = ApiResponse<String>,
1050 example = json!({
1051 "success": false,
1052 "message": "Too Many Requests",
1053 "data": null
1054 })
1055 ),
1056 (
1057 status = 500,
1058 description = "Internal server error",
1059 body = ApiResponse<String>,
1060 example = json!({
1061 "success": false,
1062 "message": "Internal Server Error",
1063 "data": null
1064 })
1065 ),
1066 )
1067)]
1068#[allow(dead_code)]
1069fn doc_rpc() {}