Skip to content

Jumpers

Jumper endpoints create, retrieve, update, and delete jumpers that point to project elements.

Endpoints

Create jumper # POST/api/v1/{hash}/jumper

Request

http
POST /api/v1/{hash}/jumper
bash
curl --request POST \
  --header "Authorization: Bearer YOUR_API_KEY" \
  --header "Accept: application/json" \
  --header "Content-Type: application/json" \
  --data @payload.json \
  "https://arcweave.com/api/v1/PROJECT_HASH/jumper"
json
{
  "boardId": "b1",
  "x": 450,
  "y": 650.5,
  "elementId": "e1"
}
PropertyRequiredTypeDescription
boardIdYesStringBoard that will contain the jumper.
xYesNumberHorizontal board coordinate.
yYesNumberVertical board coordinate.
widthNoNumberJumper width. Defaults to 185.
heightNoNumberJumper height. Defaults to 86.
elementIdNoString or nullTarget element. Defaults to null; a string must identify an existing element.

The jumper must fit inside the 40000 by 40000 board canvas. width and height must each be between 0 and 40000; x must be between 0 and 40000 - width, and y must be between 0 and 40000 - height.

The server generates the jumper ID.

Response

Returns 201 Created with the generated resource ID and project version data:

json
{
  "version": 12,
  "newVersion": 13,
  "versionTime": ["1720788000", "123456"],
  "id": "65139ea3-331f-4b25-88b4-ea7a65ff106c"
}

Get jumper # GET/api/v1/{hash}/jumper/{jumperID}

Request

http
GET /api/v1/{hash}/jumper/{jumperID}
bash
curl --request GET \
  --header "Authorization: Bearer YOUR_API_KEY" \
  --header "Accept: application/json" \
  "https://arcweave.com/api/v1/PROJECT_HASH/jumper/{jumperID}"

Response

Returns 200 OK.

json
{
  "id": "jump1",
  "boardId": "b1",
  "x": 900,
  "y": 15000,
  "elementId": "e1"
}

Update jumper # PATCH/api/v1/{hash}/jumper/{jumperID}

Request

http
PATCH /api/v1/{hash}/jumper/{jumperID}
bash
curl --request PATCH \
  --header "Authorization: Bearer YOUR_API_KEY" \
  --header "Accept: application/json" \
  --header "Content-Type: application/json" \
  --data @payload.json \
  "https://arcweave.com/api/v1/PROJECT_HASH/jumper/{jumperID}"
json
{
  "x": 500.25,
  "elementId": "e4"
}
FieldRequiredTypeDescription
xNoNumberUpdated horizontal coordinate.
yNoNumberUpdated vertical coordinate.
widthNoNumberUpdated width.
heightNoNumberUpdated height.
elementIdNoString or nullUpdated target element. Use null to clear the target.

Geometry updates must keep the complete jumper inside the 40000 by 40000 board canvas. The server uses the jumper's current geometry for fields omitted from the request.

The request must contain at least one supported field.

Response

Returns 200 OK with project version data:

json
{
  "version": 12,
  "newVersion": 13,
  "versionTime": ["1720788000", "123456"]
}

Delete jumper # DELETE/api/v1/{hash}/jumper/{jumperID}

Request

http
DELETE /api/v1/{hash}/jumper/{jumperID}
bash
curl --request DELETE \
  --header "Authorization: Bearer YOUR_API_KEY" \
  --header "Accept: application/json" \
  "https://arcweave.com/api/v1/PROJECT_HASH/jumper/{jumperID}"

Deleting a jumper also deletes connections that target it.

Response

Returns 200 OK with project version data:

json
{
  "version": 12,
  "newVersion": 13,
  "versionTime": ["1720788000", "123456"]
}

Common errors

StatusMeaning
400Invalid payload, unsupported field, or invalid numeric value.
403Project permission denied.
404Project, jumper, board, or target element not found.
409The board, jumper, or target element changed before the command was applied.