Stay organized with collections
Save and categorize content based on your preferences.
Available interfaces
You can use one of several programmatic interfaces when interacting with
Dataproc. These are the available interfaces, in the order that
we recommend using them:
Google Cloud Client Libraries:
Dataproc
(alpha and beta release)
client libraries are available in multiple languages and
are built on gRPC. These client
libraries provide a layer of abstraction on top of
gRPC and handle the details of operation polling, retries, and more.
gRPC: If a client library is not available
for your programming language of choice, you can generate gRPC client
libraries for Dataproc in any gRPC-supported language. To do this, you'll
need the
protocol buffers
service definition available from
our repository on GitHub.
You can then follow the instructions for your preferred language on
grpc.io to generate and use your
client.
REST API: If you're unable
to use Dataproc's client libraries or the gRPC API, use the REST API.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-01 UTC."],[[["\u003cp\u003eDataproc offers multiple programmatic interfaces for interaction, with Google Cloud Client Libraries being the recommended option.\u003c/p\u003e\n"],["\u003cp\u003eGoogle Cloud Client Libraries are available in various languages, built on gRPC, and manage operational details like polling and retries.\u003c/p\u003e\n"],["\u003cp\u003eIf a client library is unavailable for your programming language, you can generate gRPC client libraries using protocol buffers from the Google repository.\u003c/p\u003e\n"],["\u003cp\u003eAs an alternative when client libraries or gRPC API is not an option, the Dataproc REST API can be utilized.\u003c/p\u003e\n"]]],[],null,["Available interfaces\n\nYou can use one of several programmatic interfaces when interacting with\nDataproc. These are the available interfaces, in the order that\nwe recommend using them:\n\n- [Google Cloud Client Libraries](/apis/docs/client-libraries-explained#google_cloud_client_libraries):\n Dataproc\n ([alpha and beta release](/terms/launch-stages#launch-stages))\n client libraries are available in multiple languages and\n are built on [gRPC](https://grpc.io/). These client\n libraries provide a layer of abstraction on top of\n gRPC and handle the details of operation polling, retries, and more.\n\n | **Note:** Although the Cloud Client Libraries are the preferred library choice, [Google API Client Libraries](https://developers.google.com/api-client-library/) for Dataproc are also available. These \"legacy\" libraries access REST but not gRPC APIs (see [Google API Client Libraries](/apis/docs/client-libraries-explained#google_api_client_libraries) for additional information).\n- [gRPC](/dataproc/docs/reference/rpc): If a client library is not available\n for your programming language of choice, you can generate gRPC client\n libraries for Dataproc in any gRPC-supported language. To do this, you'll\n need the\n [protocol buffers](https://developers.google.com/protocol-buffers/)\n service definition available from\n [our repository on GitHub](https://github.com/googleapis/googleapis).\n You can then follow the instructions for your preferred language on\n [grpc.io](https://grpc.io/) to generate and use your\n client.\n\n- [REST API](/dataproc/docs/reference/rest): If you're unable\n to use Dataproc's client libraries or the gRPC API, use the REST API."]]