# Transport Client VS REST Client

**URL:** <https://discuss.elastic.co/t/transport-client-vs-rest-client/13936>\
**Category:** Elasticsearch\
**Created:** [October 14, 2013, 5:29am UTC](https://discuss.elastic.co/t/transport-client-vs-rest-client/13936 "2013-10-14T05:29:55Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![paul1](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/paul1/32/46819_2.png) [@paul1](https://discuss.elastic.co/u/paul1)\
**Post date:** [October 14, 2013, 5:29am UTC](https://discuss.elastic.co/t/transport-client-vs-rest-client/13936/1 "2013-10-14T05:29:55Z")

</div>

Hi ,

I have started using elastic search , i have very basic question .  
After Installing and running elastic search the server can be accessed in  
two ways.

REST client i.e. using curl which listens at 9200  
Transport Client or Node Client that listens at 9300.

1. why do we need two different ways of accessing the same server?
2. we can index, search , delete etc etc using REST client why do we need a  
transport client?
3. what is the advantage of transport client over rest client ? which  
scenario we should use these clients?

Regards  
Paul

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<div class="post-metadata">

**Author:** ![Runar\_Myklebust\_2](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/runar_myklebust_2/32/2047_2.png) [@Runar\_Myklebust\_2](https://discuss.elastic.co/u/Runar_Myklebust_2)\
**Post date:** [October 14, 2013, 7:01am UTC](https://discuss.elastic.co/t/transport-client-vs-rest-client/13936/2 "2013-10-14T07:01:31Z")

</div>

The transport client handles communication between nodes. The rest-client  
is for http-api.

On Mon, Oct 14, 2013 at 7:29 AM, paul [avinashpaul85@gmail.com](mailto:avinashpaul85@gmail.com) wrote:

> Hi ,
> 
> I have started using Elasticsearch , i have very basic question .  
> After Installing and running Elasticsearch the server can be accessed in  
> two ways.
> 
> REST client i.e. using curl which listens at 9200  
> Transport Client or Node Client that listens at 9300.
> 
> 1. why do we need two different ways of accessing the same server?
> 2. we can index, search , delete etc etc using REST client why do we need  
> a transport client?
> 3. what is the advantage of transport client over rest client ? which  
> scenario we should use these clients?
> 
> Regards  
> Paul
> 
> --  
> You received this message because you are subscribed to the Google Groups  
> "elasticsearch" group.  
> To unsubscribe from this group and stop receiving emails from it, send an  
> email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

--  
Runar Myklebust  
Enonic AS  
Senior Developer

[http://enonic.com/download](http://enonic.com/download)

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<div class="post-metadata">

**Author:** ![jprante](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jprante/32/44941_2.png) [@jprante](https://discuss.elastic.co/u/jprante)\
**Post date:** [October 14, 2013, 7:07am UTC](https://discuss.elastic.co/t/transport-client-vs-rest-client/13936/3 "2013-10-14T07:07:02Z")

</div>

The NodeClient and the TranspotClient are basic Java clients. They can not  
be accessed by Perl, Python, Ruby etc.

The REST HTTP client exposes the NodeClient so that ES can be used by all  
languages who have a REST client.

Jörg  
Am 14.10.2013 07:30 schrieb "paul" [avinashpaul85@gmail.com](mailto:avinashpaul85@gmail.com):

> Hi ,
> 
> I have started using Elasticsearch , i have very basic question .  
> After Installing and running Elasticsearch the server can be accessed in  
> two ways.
> 
> REST client i.e. using curl which listens at 9200  
> Transport Client or Node Client that listens at 9300.
> 
> 1. why do we need two different ways of accessing the same server?
> 2. we can index, search , delete etc etc using REST client why do we need  
> a transport client?
> 3. what is the advantage of transport client over rest client ? which  
> scenario we should use these clients?
> 
> Regards  
> Paul
> 
> --  
> You received this message because you are subscribed to the Google Groups  
> "elasticsearch" group.  
> To unsubscribe from this group and stop receiving emails from it, send an  
> email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<div class="post-metadata">

**Author:** ![jprante](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jprante/32/44941_2.png) [@jprante](https://discuss.elastic.co/u/jprante)\
**Post date:** [October 14, 2013, 7:12am UTC](https://discuss.elastic.co/t/transport-client-vs-rest-client/13936/4 "2013-10-14T07:12:09Z")

</div>

The advantage of the TransportClient is that remote JVM can connect to ES  
cluster(s) over configurable network interface without becoming a full  
cluster node. This is useful for adding support of ES to Java 3rd party  
software and it can scale independently of ES.

Jörg  
Am 14.10.2013 09:07 schrieb "[joergprante@gmail.com](mailto:joergprante@gmail.com)" [joergprante@gmail.com](mailto:joergprante@gmail.com):

> The NodeClient and the TranspotClient are basic Java clients. They can not  
> be accessed by Perl, Python, Ruby etc.
> 
> The REST HTTP client exposes the NodeClient so that ES can be used by all  
> languages who have a REST client.
> 
> Jörg  
> Am 14.10.2013 07:30 schrieb "paul" [avinashpaul85@gmail.com](mailto:avinashpaul85@gmail.com):
> 
> > Hi ,
> > 
> > I have started using Elasticsearch , i have very basic question .  
> > After Installing and running Elasticsearch the server can be accessed in  
> > two ways.
> > 
> > REST client i.e. using curl which listens at 9200  
> > Transport Client or Node Client that listens at 9300.
> > 
> > 1. why do we need two different ways of accessing the same server?
> > 2. we can index, search , delete etc etc using REST client why do we need  
> > a transport client?
> > 3. what is the advantage of transport client over rest client ? which  
> > scenario we should use these clients?
> > 
> > Regards  
> > Paul
> > 
> > --  
> > You received this message because you are subscribed to the Google Groups  
> > "elasticsearch" group.  
> > To unsubscribe from this group and stop receiving emails from it, send an  
> > email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
> > For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 2:12am UTC](https://discuss.elastic.co/t/transport-client-vs-rest-client/13936/5 "2017-07-06T02:12:40Z")

</div>


