- URL:
- https://<root>/<serviceName/ParcelFabricServer/duplicateParcels
- Methods:
POST
- Required Capability:
- ArcGIS Advanced Editing
- Version Introduced:
- 10.8
Description
The duplicate
operation duplicates parcels to a specified parcel type and subtype. A record is required to duplicate parcels.
If the parcel type supports the storage of strata parcels, parcels can be duplicated multiple times vertically to create strata parcels. Strata parcels represent floors both above and below the ground and are also known as condominiums, units, apartments, flats, basements, and vertical parcels.
After duplicating parcels, run the build
operation to build the parcel fabric so that the record polygon and parcel count reflects the newly added parcels.
Learn more about duplicating parcels
Request parameters
Parameter | Details |
---|---|
(Required) | Introduced at 10.8. The name of the geodatabase version (the default is the Syntax
|
(Required) | Introduced at 10.8. The token (GUID) used to lock the version. If the calling client has previously started a service session (editing) and holds an exclusive lock on the specified version, the request will fail if the Syntax
|
(Required) | Introduced at 10.8. The parcels that will be duplicated. Syntax
|
(Required) | Introduced at 10.8. The target parcel type to which to duplicate the parcels. Syntax
|
(Required) | Introduced at 10.8. The target parcel subtype. Syntax
|
(Required) | Introduced at 10.8. The unique identifier (GUID) of the record. The duplicated parcels will be associated with the specified record. Syntax
|
(Optional) | Introduced at 10.8. The number of times the specified parcels will be duplicated. This parameter is generally used to duplicate parcels vertically to create strata parcels. Syntax
|
(Optional) | Introduced at 11.1. The field that will be updated incrementally. If the parcel type supports the storage of strata parcels, the Syntax
|
(Optional) | Introduced at 11.1. The starting floor or level when duplicating parcels to create strata parcels. The start value is populated in the Syntax
|
(Optional) | Introduced at 11.1. The interval at which the value in the Syntax
|
(Optional) | Introduced at 11.1. Specifies whether the request will be processed asynchronously. If Values: Syntax
|
| Specifies the output format of the response. The default response format is Values: |
Example usage
This example shows the steps for duplicating a parcel to create two floors of strata parcels using the duplicate
operation.
-
Start a service session on the version.
Request URL and parameters:
Use dark colors for code blocks Copy https://machine.domain.com/webadaptor/rest/services/CountyFabric/VersionManagementServer/versions/E4DAED9D-C859-489B-9053-767A45F1D97C/startReading f=json sessionId={bba242fc-e671-4aa2-83d4-1c013347fa4f}
-
Start an edit session on the version.
Request URL and parameters:
Use dark colors for code blocks Copy https://machine.domain.com/webadaptor/rest/services/CountyFabric/VersionManagementServer/versions/E4DAED9D-C859-489B-9053-767A45F1D97C/startEditing f=json sessionId={bba242fc-e671-4aa2-83d4-1c013347fa4f}
-
Duplicate a parcel in the tax parcel type to create two additional floors of strata parcels. Increment the floor level by one for each parcel duplicated.
Request URL and parameters:
Use dark colors for code blocks Copy https://machine.domain.com/webadaptor/rest/services/CountyFabric/ParcelFabricServer/duplicateParcels f=json gdbVersion=admin.Version1 sessionId={bba242fc-e671-4aa2-83d4-1c013347fa4f} parcels=[{"id":"{5B9C7139-FBE0-4B43-B9BB-092EB98635E6}","layerId":"13"}] targetParcelType=10 targetParcelSubtype=0 record={78BEE123-4A76-4B6C-9B12-C30786E46B48} repeatCount=2 updateField=floororder startValue=1 incrementValue=1 async=false
-
If edits are complete, stop the edit session.
-
Stop and release the service session.
JSON Response syntax
The following response is returned when async
is false
:
{
"exceededTransferLimit: <true | false>,
"moment": <datetime>,
"error": { // only if success is false
"extendedCode": <HRESULT>,
"message": <error message>,
"details": [<detail>]
},
"serviceEdits": { // only if transfer limit is not exceeded
"editedFeatures": {
"updates": {
"attributes": {...},
"geometry": {...}
},
{
"spatialReference": {<spatial reference>}
},
"id": <layerID>
}
"editedFeatures": {
"adds": {
"attributes": {...},
"geometry": {...}
},
{
"spatialReference": {<spatial reference>}
},
"id": <layerID>
},
"success": <true | false>
}
}
The following response is returned when async
is true
:
{
"statusUrl": <url>
}