DevenConnect Technical Overview
The DevenConnect Web API provides programmatic access to core M&A deal pipeline data, including Targets, Programs, Activity Maps, Contacts, and supporting reference collections. The API enables secure machine‑to‑machine integrations and supports dynamic UI construction through configuration and metadata endpoints.
Devensoft Web API Overview
Version
-
- API Version: v1.0
Environment
-
- Environment: UAT / Production
- Documentation: Swagger
- Base URL:
https://{tenant-name}.devensoft.com/swagger/ui/index#/
Supported Protocols
-
- HTTPS (recommended)
Authentication
OAuth 2.0 Client Credentials Flow
All endpoints require a valid Bearer token obtained via the OAuth 2.0 client credentials grant.
Token Endpoint
POST /token
Content-Type: application/x-www-form-urlencoded
Required Parameters
-
grant_type=client_credentialsclient_idclient_secret
Usage
Once retrieved, include the token in all API requests:
Authorization: Bearer {access_token}
-
- Tokens expire after 3600 seconds (1 hour) and must be refreshed.
Core API Modules
1. Targets
Targets represent acquisition or investment opportunities in the deal pipeline.
Endpoints
-
GET /v1/targets– Retrieve Targets with advanced filtering and paginationGET /v1/targets/{id}– Retrieve a single Target with all propertiesPOST /v1/targets– Create a new Target using human‑readable reference valuesDELETE /v1/targets/{id}– Soft delete a Target
Key Capabilities
-
- Filter by Status, Phase, Deal Type, Priority, Country, Business Unit, and Deal Lead
- Select specific response fields using
properties - Automatically resolve names (e.g., currency “USD”, contact email) to internal IDs on create
2. Programs
Programs represent active M&A Integrations or Divestitures.
Endpoints
-
GET /v1/programs– List Programs with filtersGET /v1/programs/{id}– Retrieve a Program by ID
Filters Supported
-
- Program Type
- Schedule Status (On Schedule, At‑Risk, Delayed)
- Deal Stage
- Business Unit
- Program Name (free‑text search)
3. Activity Map
The Activity Map models hierarchical execution plans within a program (Projects → Workstreams → Milestones → Tasks).
Hierarchy Levels
Endpoints
-
GET /v1/programs/{programId}/activity-map/itemsGET /v1/programs/{programId}/activity-map/levels/{level}/itemsGET /v1/programs/{programId}/activity-map/levels/{level}/items/{itemId}
Key Features
-
- Support for depth-based and level-based traversal
- Status filtering (Closed, On Schedule, At‑Risk, Delayed)
- Paginated responses
- Dynamic fields driven by configuration
4. Contacts
Contacts are used as deal leads, owners, and assignment references.
Endpoint
-
GET /v1/contacts– Retrieve contacts with search and pagination
Filters
-
- Name or Email search
- Deal Lead binary flag
- Page number and page size
5. Configuration & Metadata
Configuration endpoints allow clients to dynamically render forms and listings without hardcoding fields.
Target & Program Fields
-
GET /v1/configuration/targets/fieldsGET /v1/configuration/programs/fields
Features
-
- Returns field labels, data types, required/read‑only flags
- Supports
jsonorcsvformats - Filter by standard vs custom fields
- Includes
CollectionUrlfor dropdown lookups
Activity Map Configuration
-
GET /v1/configuration/programs/activity-map
Returns:
-
- Level names and hierarchy definitions
- Field metadata per hierarchy level
6. Reference Collections
Used to populate dropdowns and resolve human‑readable values.
Available Collections
-
GET /v1/collections/countriesGET /v1/collections/deal-phasesGET /v1/collections/program-typesGET /v1/collections/picklists/{category}/{subcategory}
Response Conventions
-
- 200 OK – Successful retrieval
- 201 Created – Entity created
- 400 Bad Request – Invalid parameters
- 401 Unauthorized – Missing or invalid token
- 404 Not Found – Entity or configuration missing
- 429 Too Many Requests – Rate limit exceeded
- 500 Internal Server Error – Server failure
Pagination Model
Most list endpoints return a consistent pagination structure:
-
ItemsPageNumberPageSizeTotalCountTotalPagesHasPreviousPageHasNextPage
Best Practices
-
- Always retrieve configuration metadata before building forms or UI
- Cache lookup collections locally to reduce API calls
- Handle
429responses using theRetry‑Afterheader - Automate token renewal before expiration