- URL:
- https://<geoanalytics-url>/JoinFeatures
- Methods:
- GET
- Version Introduced:
- 10.5
Description
      
   
    
The Join operation works with two layers. Join joins attributes from one feature to another based on spatial, temporal, and attribute relationships or a combination of the three. The tool determines all input features that meet the specified join conditions and joins the second input layer to the first. You can join all features to the matching features or summarize the matching features.
Join can be applied to points, lines, polygons, and tables.
Request parameters
| Parameter | Details | 
|---|---|
| 
 | The table, point, line, or polygon features to which the  Syntax: As described in Feature input, this parameter can be one of the following: 
 REST examples  | 
| 
 | The point, line, or polygon features that will be joined to the  Syntax: As described in Feature input, this parameter can be one of the following: 
 REST examples  | 
| 
 | A string representing the type of join that will be applied. There are two options available:  REST examples  | 
| 
 | This parameter is available at ArcGIS GeoAnalytics Server 10.9 or later. Specifies whether all target features will be maintained in the output feature class (known as a left outer join) or only those that have the specified relationships with the join features (inner join). This parameter is only available when the  REST examples  | 
| 
 | A list of modifications to field names in the  REST examples  | 
| 
 | A list of field names and statistical summary types you want to calculate. Note that the count is always returned. By default, all statistics are returned. 
 
 REST examples  | 
| 
 | Specifies the spatial relationship used to spatially join features. To learn more about the supported spatial relationships, see Spatial relationships in ArcGIS GeoAnalytics Server. Values:  REST examples  | 
| 
 | A double value used for the search distance to determine if the  Analysis using a Near spatial relationship requires that the  REST examples  | 
| 
 | The linear unit to be used with the distance value specified in  Values:  REST examples  | 
| 
 | Specifies the temporal relationship used to temporally join features. Values:  REST examples  | 
| 
 | An integer value used for the temporal search distance to determine if the  REST examples  | 
| 
 | The temporal unit to be used with the distance value specified in  Values:  REST examples  | 
| 
 | This parameter is available at ArcGIS GeoAnalytics Server 11.2 or later. Specifies whether or not to include the spatial distance and/or temporal difference calculated between target and join features when  REST examples  | 
| 
 | This parameter is available at ArcGIS GeoAnalytics Server 11.2 or later. Specifies the unit of measure that will be used for distance values in the result. The default is  Values:  REST examples  | 
| 
 | A target field, relationship, and join field used to join equal attributes. You can join strings that are equal without comparing casing or trailing and leading spaces using  REST examples  | 
| 
 | Applies a condition to specified fields. Only features with fields that meet these conditions will be joined. This should always be used with a spatial, temporal, or field attribute relationship, or a combination of the three. For example, to apply a join to a dataset for only those features in which  REST examples  | 
| 
 | The task will create a feature service of the results. You define the name of the service. REST examples  | 
| 
 | The  
 Syntax:  | 
| 
 | The response format. The default response format is  Values:  | 
Example usage
The following is a sample request URL for Join:
https://webadaptor.domain.com/server/rest/services/System/GeoAnalyticsTools/GPServer/GeneralizedLinearRegression/submitJob?predictionType=Train&inputLayer={"url":"https://webadaptor.domain.com/server/rest/services/Hurricane/hurricaneTrack2017/0"}&featuresToPredict={"url":"https://webadaptor.domain.com/server/rest/services/Hosted/corpusChristi/0"}&dependentVariable=ShelterCapacity&explanatoryVariables=CityDensity, ShelterLocations®ressionFamily=Binary&generateCoefficientTable=false&explanatoryVariableMatching=[{"predictionLayerField":"Hurricane2019","trainingLayerField":"hurricanesIn2019"},{"predictionLayerField":"ShelterLocations","trainingLayerField":"CorpusChristiShelters"}&dependentMapping=[{"value0":"Shelter"},{"value1":"NoShelter"}]&outputName=myOutput&context={"extent":{"xmin":-122.68,"ymin":45.53,"xmax":-122.45,"ymax":45.6,"spatialReference":{"wkid":4326}}}&f=jsonResponse
When you submit a request, the service assigns a unique job ID for the transaction.
Syntax:
{
  "jobId": "<unique job identifier>",
  "jobStatus": "<job status>"
}After the initial request is submitted, you can use job  to periodically check the status of the job and messages as described in Check job status. Once the job has successfully completed, use job  to retrieve the results. To track the status, you can make a request of the following form:
https://<analysis url>/JoinFeatures/jobs/<jobId>Access results
When the status of the job request is esri , you can access the results of the analysis by making a request of the following form:
http://<analysis-url>/JoinFeatures/jobs/<jobId>/results/output?token=<your token>&f=json| Response | Description | 
|---|---|
| 
 | The  The  The result has properties for parameter name, data type, and value. The contents of  See Feature output for more information about how the result layer is accessed. |