API/Endpoints: Models

From wiki
(Redirected from API/Endpoints)

Endpoints

[edit]

This page documents key Verofy API endpoints and usage patterns.

Projects

[edit]

Map Project (map-project)

[edit]

A Map Project groups multiple mapping elements, such as segments, sites, and access points.

Fields

[edit]
Field Type Description
id int Unique identifier
name string Project name
description string Detailed project description
status string Project status (e.g., active, completed, archived)
created_at datetime Creation timestamp
updated_at datetime Last update timestamp

Endpoints for Projects

[edit]
Read (VIEW)
GET {api_url}/{version}/map-project/{id}
Create
POST {api_url}/{version}/map-project
Update
PATCH {api_url}/{version}/map-project/{id}
Upload Document
POST {api_url}/{version}/map-document/upload
Download Document
GET {api_url}/{version}/map-document/download/{id}

Project Permissions

[edit]

Permissions can be managed at the project level to restrict or allow access to users.

Check user access to a project
GET {api_url}/{version}/map-project/permission/{mapProjectId}
Bookmark a project for quick access
POST {api_url}/{version}/map-project/bookmark/{mapProjectId}

Miscellaneous Actions

[edit]

Additional operations related to Map Projects that provide extended functionality.

Check User Permissions
[edit]

Retrieve the access permissions for a specific project.

GET {api_url}/{version}/map-project/permission/{mapProjectId}

Example:

GET https://api.veronetworks.com/v1/map-project/permission/12345
Bookmark a Project
[edit]

Mark a project for quick access.

POST {api_url}/{version}/map-project/bookmark/{mapProjectId}

Example:

POST https://api.veronetworks.com/v1/map-project/bookmark/12345

Models

[edit]

The Verofy API is RESTful. Most actions are addressed as:

<api_url>/<version>/<model>/<id>

Where:

  • <api_url> is the base URL (e.g., https://api.veronetworks.com)
  • <version> is the API version (e.g., v1)
  • <model> is the object type (e.g., map-segment)
  • <id> is the object id (when a specific record is required)

Action Types

[edit]

The following actions are supported:

Read
Method: GET
Endpoint: {api_url}/{version}/{model}/{id}
Create
Method: POST
Endpoint: {api_url}/{version}/{model}
Update
Method: PATCH
Endpoint: {api_url}/{version}/{model}/{id}

Modules and Endpoints

[edit]

Map Access Point

[edit]
Read
GET {api_url}/{version}/map-access-points/{id}
Read All
GET {api_url}/{version}/map-access-points
Create
POST {api_url}/{version}/map-access-points
Update
PATCH {api_url}/{version}/map-access-points/{id}

Map Cable

[edit]
Read
GET {api_url}/{version}/map-cables/{id}
Read All
GET {api_url}/{version}/map-cables
Create
POST {api_url}/{version}/map-cables
Update
PATCH {api_url}/{version}/map-cables/{id}

Map Document

[edit]
Read
GET {api_url}/{version}/map-documents/{id}
Read All
GET {api_url}/{version}/map-documents
Create
POST {api_url}/{version}/map-documents
Update
PATCH {api_url}/{version}/map-documents/{id}

Map Element

[edit]
Read
GET {api_url}/{version}/map-elements/{id}
Read All
GET {api_url}/{version}/map-elements
Create
POST {api_url}/{version}/map-elements
Update
PATCH {api_url}/{version}/map-elements/{id}

Map Info Object

[edit]
Read
GET {api_url}/{version}/map-info-objects/{id}
Read All
GET {api_url}/{version}/map-info-objects
Create
POST {api_url}/{version}/map-info-objects
Update
PATCH {api_url}/{version}/map-info-objects/{id}

Map Note

[edit]
Read
GET {api_url}/{version}/map-notes/{id}
Read All
GET {api_url}/{version}/map-notes
Create
POST {api_url}/{version}/map-notes
Update
PATCH {api_url}/{version}/map-notes/{id}

Map Permit

[edit]
Read
GET {api_url}/{version}/map-permits/{id}
Read All
GET {api_url}/{version}/map-permits
Create
POST {api_url}/{version}/map-permits
Update
PATCH {api_url}/{version}/map-permits/{id}

Example:

PATCH https://api.veronetworks.com/v1/map-permits/30768

Request body:

{
  "mapProjectId": "11572",
  "poly": [
    [
      { "lat": "37.129198", "lng": "-87.791584" },
      { "lat": "36.127619", "lng": "-88.790082" }
    ],
    [
      { "lat": "35.126390", "lng": "-89.792399" },
      { "lat": "35.124500", "lng": "-89.794000" }
    ]
  ]
}

Map Pole

[edit]
Read
GET {api_url}/{version}/map-poles/{id}
Read All
GET {api_url}/{version}/map-poles
Create
POST {api_url}/{version}/map-poles
Update
PATCH {api_url}/{version}/map-poles/{id}

Map Segment

[edit]
Read
GET {api_url}/{version}/map-segments/{id}
Read All
GET {api_url}/{version}/map-segments
Create
POST {api_url}/{version}/map-segments
Update
PATCH {api_url}/{version}/map-segments/{id}

Example:

PATCH https://api.veronetworks.com/v1/map-segments/1177

Request body:

{
  "mapProjectId": 41,
  "poly": [
    { "lat": 32.7714169834758, "lng": -96.12168230422975 },
    { "lat": 32.77138, "lng": -97.12287 },
    { "lat": 32.770140000000005, "lng": -97.12288000000001 },
    { "lat": 32.77015, "lng": -97.1213 },
    { "lat": 32.77013598463115, "lng": -97.11901284516131 },
    { "lat": 32.769634804144374, "lng": -97.11900020370484 }
  ]
}

Map Site

[edit]
Read
GET {api_url}/{version}/map-sites/{id}
Read All
GET {api_url}/{version}/map-sites
Create
POST {api_url}/{version}/map-sites
Update
PATCH {api_url}/{version}/map-sites/{id}

Map Splice

[edit]
Read
GET {api_url}/{version}/map-splices/{id}
Read All
GET {api_url}/{version}/map-splices
Create
POST {api_url}/{version}/map-splices
Update
PATCH {api_url}/{version}/map-splices/{id}

Expanding Tags

[edit]

Some models support retrieving related tags directly in the response using the expand query parameter.

Usage
GET {api_url}/{version}/{model}/{id}?expand=tags

This returns the base model plus its associated tags. Only models that extend MapItem and define the tags relation will support this.

Example:

GET https://api.veronetworks.com/v1/map-permit/9540?expand=tags

Response (snippet):

{
  "id": 9540,
  "name": "Lower - Woodruff Rd S-417 (2) PH2",
  "tags": [
    { "id": 857, "name": "Lower", "mapprojectId": 216 }
  ]
}

To expand multiple fields, separate them with commas. Example: ?expand=tags,owner


Filters

[edit]

The Verofy API supports filters for refined queries via query parameters.

Example: filter map poles by mapProjectId

GET {api_url}/{version}/map-pole?filter%5BmapProjectId%5D=38

This retrieves all map poles associated with mapProjectId=38.



Get Effective Value

[edit]

Retrieve the runtime value of a setting. The API returns:

value (if set)

Otherwise default_value

Otherwise the fallback (if provided)

GET {api_url}/{version}/setting/value?name={settingName}&fallback={value}

Example:

GET https://api.veronetworks.com/v1/setting/value?name=mapping_tool.background_segment_width

Response:

{
"name": "mapping_tool.background_segment_width",
"value": "5"
}

CRM Endpoints

[edit]

Authentication

[edit]

All CRM endpoints require an **API Key**. Include it in the Authorization header.

GET /v1/crm-vendors

[edit]
Description

Retrieve a list of CRM vendors.

Request Example
curl -X GET "https://api.veronetworks.com/v1/crm-vendors" \
  -H "Authorization: YOUR-API-KEY"
Response Example
{
  "items": [
    {
      "id": 1001,
      "name": "Vendor One",
      "email": "vendor1@example.com",
      "layout": "Standard",
      "primaryContactId": null,
      "backupContactId": null,
      "ownerId": 1
    },
    {
      "id": 1002,
      "name": "Vendor Two",
      "email": "vendor2@example.com",
      "layout": "Advanced",
      "primaryContactId": null,
      "backupContactId": null,
      "ownerId": 2
    }
  ],
  "_links": {
    "self":  { "href": "https://api.veronetworks.com/v1/crm-vendors?page=1" },
    "first": { "href": "https://api.veronetworks.com/v1/crm-vendors?page=1" },
    "last":  { "href": "https://api.veronetworks.com/v1/crm-vendors?page=10" },
    "next":  { "href": "https://api.veronetworks.com/v1/crm-vendors?page=2" }
  },
  "_meta": { "totalCount": 200, "pageCount": 10, "currentPage": 1, "perPage": 20 }
}

List of Other CRM Endpoints

[edit]

All follow the same authentication and response format.

GET /v1/crm-contacts

Retrieve a list of CRM contacts.

GET /v1/crm-accounts

Retrieve a list of CRM accounts.

GET /v1/crm-services

Retrieve a list of CRM services.

GET /v1/crm-capital-projects

Retrieve a list of CRM capital projects.

GET /v1/crm-billing-items

Retrieve a list of CRM billing items.


Notes

[edit]
  • All responses follow the same structure as crm-vendors.
  • Pagination is supported with the ?page=N query parameter.
  • Replace YOUR-API-KEY in examples with a valid API key.