Duplicate parcels

URL:
https://<root>/<serviceName/ParcelFabricServer/duplicateParcels
Methods:
POST
Required Capability:
ArcGIS Advanced Editing
Version Introduced:
10.8

Description

The duplicateParcels 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

ParameterDetails

gdbVersion

(Required)

Introduced at 10.8.

The name of the geodatabase version (the default is the DEFAULT version).

Syntax

Use dark colors for code blocksCopy
1
gdbVersion=<version>

sessionId

(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 sessionId value is not provided. If the specified version is currently locked by another session, the request will fail if the sessionId value is not provided or does not match the sessionId value that holds the exclusive lock.

Syntax

Use dark colors for code blocksCopy
1
sessionId=<guid>

parcels

(Required)

Introduced at 10.8.

The parcels that will be duplicated.

Syntax

Use dark colors for code blocksCopy
1
parcels=[{"id":"<parcelguid>","layerId":"16"},{...}]

targetParcelType

(Required)

Introduced at 10.8.

The target parcel type to which to duplicate the parcels.

Syntax

Use dark colors for code blocksCopy
1
targetParcelType=<layer id>

targetParcelSubtype

(Required)

Introduced at 10.8.

The target parcel subtype.

Syntax

Use dark colors for code blocksCopy
1
2
3
4
targetParcelSubtype=<subtype id>

//If not using a subtype
targetParcelSubtype=0

record

(Required)

Introduced at 10.8.

The unique identifier (GUID) of the record. The duplicated parcels will be associated with the specified record.

Syntax

Use dark colors for code blocksCopy
1
record=<guid>

repeatCount

(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

Use dark colors for code blocksCopy
1
repeatCount=<long>

updateField

(Optional)

Introduced at 11.1.

The field that will be updated incrementally. If the parcel type supports the storage of strata parcels, the FloorOrder field can be specified as the updateField value. The FloorOrder field is updated with the floor number when duplicating parcels vertically. The floor number will start with the numeric value specified for the startValue parameter.

Syntax

Use dark colors for code blocksCopy
1
updateField=<string>

startValue

(Optional)

Introduced at 11.1.

The starting floor or level when duplicating parcels to create strata parcels. The start value is populated in the FloorOrder fields (polygon and line field) of the first parcel duplicated.

Syntax

Use dark colors for code blocksCopy
1
startValue=<long>

incrementValue

(Optional)

Introduced at 11.1.

The interval at which the value in the FloorOrder field will increase. For example, if the increment value is 2, the value in the FloorOrder field will increase by two for each duplicated parcel.

Syntax

Use dark colors for code blocksCopy
1
incrementValue=<long>

async

(Optional)

Introduced at 11.1.

Specifies whether the request will be processed asynchronously. If true, the request will be processed as an asynchronous job and a URL that points to a location displaying the status of the job will be returned. The default is false. This parameter is optional.

Values: true | false

Syntax

Use dark colors for code blocksCopy
1
async=true|false

f

Specifies the output format of the response. The default response format is html.

Values: html | json

Example usage

This example shows the steps for duplicating a parcel to create two floors of strata parcels using the duplicateParcels operation.

  1. Start a service session on the version.

    Request URL and parameters:

    Use dark colors for code blocksCopy
    1
    2
    3
    https://machine.domain.com/webadaptor/rest/services/CountyFabric/VersionManagementServer/versions/E4DAED9D-C859-489B-9053-767A45F1D97C/startReading
    f=json
    sessionId={bba242fc-e671-4aa2-83d4-1c013347fa4f}
  2. Start an edit session on the version.

    Request URL and parameters:

    Use dark colors for code blocksCopy
    1
    2
    3
    https://machine.domain.com/webadaptor/rest/services/CountyFabric/VersionManagementServer/versions/E4DAED9D-C859-489B-9053-767A45F1D97C/startEditing
    f=json
    sessionId={bba242fc-e671-4aa2-83d4-1c013347fa4f}
  3. 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 blocksCopy
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    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
  4. If edits are complete, stop the edit session.

  5. Stop and release the service session.

JSON Response syntax

The following response is returned when async is false:

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
  "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 :

Use dark colors for code blocksCopy
1
2
3
{
		"statusUrl": <url>
}

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.