API/Endpoints: Models: Difference between revisions
No edit summary |
No edit summary |
||
| Line 293: | Line 293: | ||
---- | ---- | ||
=== Get Effective Value === | === Get Effective Value === | ||
Latest revision as of 20:45, 3 December 2025
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=Nquery parameter. - Replace
YOUR-API-KEYin examples with a valid API key.