├── .github ├── CODEOWNERS ├── pull_request_template.md └── workflows │ └── test.yml ├── .gitignore ├── .idea ├── .gitignore ├── modules.xml ├── rpc-endpoint.iml └── vcs.xml ├── CODE_OF_CONDUCT.md ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── adapters ├── flashbots │ ├── signature.go │ └── signature_test.go └── webfile │ ├── fetcher.go │ └── fetcher_test.go ├── application ├── builder_info.go └── rpc_cache.go ├── cmd ├── mockbackend │ └── main.go ├── server │ └── main.go └── txdecoder │ └── main.go ├── database ├── mem_store.go ├── mock_store.go ├── postgres_store.go ├── store.go └── types.go ├── docker-compose.yaml ├── docs ├── metamask.md └── testing.md ├── go.mod ├── go.sum ├── metrics ├── http.go ├── integrations_metrics.go ├── internal_metrics.go ├── metrics.go └── tx_metrics.go ├── openrpc.json ├── server ├── configuration.go ├── configuration_watcher.go ├── configuration_watcher_test.go ├── fingerprint.go ├── fingerprint_test.go ├── http_client.go ├── middleware.go ├── ofacblacklist.go ├── ofacblacklist_test.go ├── redisstate.go ├── redisstate_test.go ├── request_handler.go ├── request_handler_test.go ├── request_intercepts.go ├── request_processor.go ├── request_processor_test.go ├── request_record.go ├── request_record_test.go ├── request_response.go ├── request_sendprivatetx.go ├── request_sendrawtx.go ├── server.go ├── url_params.go ├── url_params_test.go ├── util.go └── whitelist.go ├── sql ├── psql │ ├── 001_initial.schema.down.sql │ ├── 001_initial.schema.up.sql │ ├── 002_add_fast.down.sql │ ├── 002_add_fast.up.sql │ ├── 003_alter_is_blocked.down.sql │ └── 003_alter_is_blocked.up.sql └── redshift │ ├── 001_initial.schema.down.sql │ ├── 001_initial.schema.up.sql │ ├── 002_add_fast.down.sql │ ├── 002_add_fast.up.sql │ ├── 003_alter_is_blocked.down.sql │ └── 003_alter_is_blocked.up.sql ├── staticcheck.conf ├── tests └── e2e_test.go ├── testutils ├── mock_rpcbackend.go ├── mock_txapibackend.go ├── rpctesthelpers.go └── transactions.go └── types └── types.go /.github/CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.github/CODEOWNERS -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.idea/.gitignore -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/rpc-endpoint.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.idea/rpc-endpoint.iml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/README.md -------------------------------------------------------------------------------- /adapters/flashbots/signature.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/adapters/flashbots/signature.go -------------------------------------------------------------------------------- /adapters/flashbots/signature_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/adapters/flashbots/signature_test.go -------------------------------------------------------------------------------- /adapters/webfile/fetcher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/adapters/webfile/fetcher.go -------------------------------------------------------------------------------- /adapters/webfile/fetcher_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/adapters/webfile/fetcher_test.go -------------------------------------------------------------------------------- /application/builder_info.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/application/builder_info.go -------------------------------------------------------------------------------- /application/rpc_cache.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/application/rpc_cache.go -------------------------------------------------------------------------------- /cmd/mockbackend/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/cmd/mockbackend/main.go -------------------------------------------------------------------------------- /cmd/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/cmd/server/main.go -------------------------------------------------------------------------------- /cmd/txdecoder/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/cmd/txdecoder/main.go -------------------------------------------------------------------------------- /database/mem_store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/database/mem_store.go -------------------------------------------------------------------------------- /database/mock_store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/database/mock_store.go -------------------------------------------------------------------------------- /database/postgres_store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/database/postgres_store.go -------------------------------------------------------------------------------- /database/store.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/database/store.go -------------------------------------------------------------------------------- /database/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/database/types.go -------------------------------------------------------------------------------- /docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/docker-compose.yaml -------------------------------------------------------------------------------- /docs/metamask.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/docs/metamask.md -------------------------------------------------------------------------------- /docs/testing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/docs/testing.md -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/go.sum -------------------------------------------------------------------------------- /metrics/http.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/metrics/http.go -------------------------------------------------------------------------------- /metrics/integrations_metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/metrics/integrations_metrics.go -------------------------------------------------------------------------------- /metrics/internal_metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/metrics/internal_metrics.go -------------------------------------------------------------------------------- /metrics/metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/metrics/metrics.go -------------------------------------------------------------------------------- /metrics/tx_metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/metrics/tx_metrics.go -------------------------------------------------------------------------------- /openrpc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/openrpc.json -------------------------------------------------------------------------------- /server/configuration.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/configuration.go -------------------------------------------------------------------------------- /server/configuration_watcher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/configuration_watcher.go -------------------------------------------------------------------------------- /server/configuration_watcher_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/configuration_watcher_test.go -------------------------------------------------------------------------------- /server/fingerprint.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/fingerprint.go -------------------------------------------------------------------------------- /server/fingerprint_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/fingerprint_test.go -------------------------------------------------------------------------------- /server/http_client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/http_client.go -------------------------------------------------------------------------------- /server/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/middleware.go -------------------------------------------------------------------------------- /server/ofacblacklist.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/ofacblacklist.go -------------------------------------------------------------------------------- /server/ofacblacklist_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/ofacblacklist_test.go -------------------------------------------------------------------------------- /server/redisstate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/redisstate.go -------------------------------------------------------------------------------- /server/redisstate_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/redisstate_test.go -------------------------------------------------------------------------------- /server/request_handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_handler.go -------------------------------------------------------------------------------- /server/request_handler_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_handler_test.go -------------------------------------------------------------------------------- /server/request_intercepts.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_intercepts.go -------------------------------------------------------------------------------- /server/request_processor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_processor.go -------------------------------------------------------------------------------- /server/request_processor_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_processor_test.go -------------------------------------------------------------------------------- /server/request_record.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_record.go -------------------------------------------------------------------------------- /server/request_record_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_record_test.go -------------------------------------------------------------------------------- /server/request_response.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_response.go -------------------------------------------------------------------------------- /server/request_sendprivatetx.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_sendprivatetx.go -------------------------------------------------------------------------------- /server/request_sendrawtx.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/request_sendrawtx.go -------------------------------------------------------------------------------- /server/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/server.go -------------------------------------------------------------------------------- /server/url_params.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/url_params.go -------------------------------------------------------------------------------- /server/url_params_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/url_params_test.go -------------------------------------------------------------------------------- /server/util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/util.go -------------------------------------------------------------------------------- /server/whitelist.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/server/whitelist.go -------------------------------------------------------------------------------- /sql/psql/001_initial.schema.down.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/psql/001_initial.schema.down.sql -------------------------------------------------------------------------------- /sql/psql/001_initial.schema.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/psql/001_initial.schema.up.sql -------------------------------------------------------------------------------- /sql/psql/002_add_fast.down.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/psql/002_add_fast.down.sql -------------------------------------------------------------------------------- /sql/psql/002_add_fast.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/psql/002_add_fast.up.sql -------------------------------------------------------------------------------- /sql/psql/003_alter_is_blocked.down.sql: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sql/psql/003_alter_is_blocked.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/psql/003_alter_is_blocked.up.sql -------------------------------------------------------------------------------- /sql/redshift/001_initial.schema.down.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/redshift/001_initial.schema.down.sql -------------------------------------------------------------------------------- /sql/redshift/001_initial.schema.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/redshift/001_initial.schema.up.sql -------------------------------------------------------------------------------- /sql/redshift/002_add_fast.down.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/redshift/002_add_fast.down.sql -------------------------------------------------------------------------------- /sql/redshift/002_add_fast.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/redshift/002_add_fast.up.sql -------------------------------------------------------------------------------- /sql/redshift/003_alter_is_blocked.down.sql: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /sql/redshift/003_alter_is_blocked.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/sql/redshift/003_alter_is_blocked.up.sql -------------------------------------------------------------------------------- /staticcheck.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/staticcheck.conf -------------------------------------------------------------------------------- /tests/e2e_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/tests/e2e_test.go -------------------------------------------------------------------------------- /testutils/mock_rpcbackend.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/testutils/mock_rpcbackend.go -------------------------------------------------------------------------------- /testutils/mock_txapibackend.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/testutils/mock_txapibackend.go -------------------------------------------------------------------------------- /testutils/rpctesthelpers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/testutils/rpctesthelpers.go -------------------------------------------------------------------------------- /testutils/transactions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/testutils/transactions.go -------------------------------------------------------------------------------- /types/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/flashbots/rpc-endpoint/HEAD/types/types.go --------------------------------------------------------------------------------