API/Endpoints: Models: Difference between revisions
m Root moved page API/Endpoints to API/Endpoints: Models |
No edit summary |
||
| Line 293: | Line 293: | ||
---- | ---- | ||
== Settings == | |||
The Settings endpoints allow clients to read configuration values stored in the system’s internal setting table. | |||
Sensitive items (such as <code>overwatch.password</code>) are automatically excluded. | |||
=== List Setting Keys === | |||
Return the list of available setting names. | |||
<pre>GET {api_url}/{version}/setting/keys</pre> | |||
Example: | |||
<pre>GET https://api.veronetworks.com/v1/setting/keys</pre> | |||
Response: | |||
<syntaxhighlight lang="json"> | |||
[ | |||
"general.document_tags", | |||
"overwatch.username", | |||
"general.google_maps_api_key", | |||
"security.mfa_enabled" | |||
] | |||
</syntaxhighlight> | |||
=== Get Setting Record === | |||
Retrieve the full definition of a setting. | |||
<pre>GET {api_url}/{version}/setting/get?name={settingName}</pre> | |||
Example: | |||
<pre>GET https://api.veronetworks.com/v1/setting/get?name=security.mfa_enabled</pre> | |||
Response: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"id": 8, | |||
"name": "security.mfa_enabled", | |||
"label": "MFA Enabled", | |||
"value": "0", | |||
"defaultValue": null, | |||
"type": "bool", | |||
"category": "Security", | |||
"description": "Activating MFA will prompt a code...", | |||
"readOnly": 0, | |||
"updatedAt": "2025-10-22 02:22:12" | |||
} | |||
</syntaxhighlight> | |||
=== Get Effective Value === | |||
Retrieve the runtime value of a setting. | |||
The API returns: | |||
<code>value</code> (if set) | |||
Otherwise <code>default_value</code> | |||
Otherwise the fallback (if provided) | |||
<pre>GET {api_url}/{version}/setting/value?name={settingName}&fallback={value}</pre> | |||
Example: | |||
<pre>GET https://api.veronetworks.com/v1/setting/value?name=mapping_tool.background_segment_width</pre> | |||
Response: | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"name": "mapping_tool.background_segment_width", | |||
"value": "5" | |||
} | |||
</syntaxhighlight> | |||
== CRM Endpoints == | == CRM Endpoints == | ||
Revision as of 06:59, 28 November 2025
Endpoints
This page documents key Verofy API endpoints and usage patterns.
Projects
Map Project (map-project)
A Map Project groups multiple mapping elements, such as segments, sites, and access points.
Fields
| 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
- 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
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
Additional operations related to Map Projects that provide extended functionality.
Check User Permissions
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
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
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
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
Map Access Point
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
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
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.
Settings
The Settings endpoints allow clients to read configuration values stored in the system’s internal setting table.
Sensitive items (such as overwatch.password) are automatically excluded.
List Setting Keys
Return the list of available setting names.
GET {api_url}/{version}/setting/keys
Example:
GET https://api.veronetworks.com/v1/setting/keys
Response:
[
"general.document_tags",
"overwatch.username",
"general.google_maps_api_key",
"security.mfa_enabled"
]
Get Setting Record
Retrieve the full definition of a setting.
GET {api_url}/{version}/setting/get?name={settingName}
Example:
GET https://api.veronetworks.com/v1/setting/get?name=security.mfa_enabled
Response:
{
"id": 8,
"name": "security.mfa_enabled",
"label": "MFA Enabled",
"value": "0",
"defaultValue": null,
"type": "bool",
"category": "Security",
"description": "Activating MFA will prompt a code...",
"readOnly": 0,
"updatedAt": "2025-10-22 02:22:12"
}
Get Effective Value
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
Authentication
All CRM endpoints require an **API Key**.
Include it in the Authorization header.
GET /v1/crm-vendors
- 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
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
- All responses follow the same structure as
crm-vendors. - Pagination is supported with the
?page=Nquery parameter. - Replace
YOUR-API-KEYin examples with a valid API key.