EVM Exposed APIs
API Documentation
Introduction
This document provides detailed information on the external API endpoints for managing companies and projects. The API uses an API key for authentication, which should be generated through EVM settings.
Authentication
All API requests must include an Authorization
header with a valid API key. The API key can be generated through the EVM settings.
Generating API Key
Navigate to EVM settings -> API.
Generate the API key.
Use the API key in the
Authorization
header for all requests.
Base URL
The base URL for all endpoints is https://pa.aneto-apps.com
.
Error Codes
403 Unauthorized
: If theAuthorization
header is missing.403 Forbidden
: If the API key is invalid or does not have the necessary permissions.400 Bad Request
: If the request data is invalid.
Endpoints
1. Get Companies
Endpoint:
GET /external/api/v1/companies
Description: Retrieves a paginated list of companies.
Headers:
Authorization: Bearer {API_KEY}
Query Parameters:
page
(optional, integer): The page number for pagination. Default is1
.perPage
(optional, integer): The number of companies per page. Default is10
.
Response:
{
"data": [
{
"id": 1,
"name": "Company A"
},
{
"id": 2,
"name": "Company B"
}
],
"meta": {
"page": 1,
"perPage": 10,
"total": 20
}
}
Error Responses:
403 Forbidden
: If the API key is invalid or does not have the necessary permissions.
2. Create Project
Endpoint:
POST /external/api/v1/projects
Description: Creates a new project.
Headers:
Authorization: Bearer {API_KEY}
Content-Type: application/json
Request Body:
{
"company_id*": 1,
"name*": "New Project",
"duration_format": "hours|days",
"money_format": "default|thousands|millions",
"start_date": "2024-07-01",
"due_date": "2024-12-31",
"jira_jql*": "project = TEST",
"status*": "Proposal|Initiating|Planning|Ready to Start|Executing|On Hold|Blocked|QA Validation|QA Failed|PO / Client validation|Done|Canceled",
“budget”: 10000,
“reset_on_import”: true|false or 1|0,
“ignore_time_entered_before_this_date”: true|false or 1|0,
“description”: “New Project Description”,
“notes”: “New Project Notes”
}
Response:
201 Created:
{
"data": {
"id": 1,
"companyId": 1,
"name": "New Project",
"durationFormat": "days",
"moneyFormat": "default",
"startDate": "2024-07-01",
"dueDate": "2024-12-31",
"jiraJql": "project = TEST",
"status": 4,
"statueName”: “Executing”,
“budget”: 10000,
“reset_on_import”: false,
“ignore_time_entered_before_this_date”: false,
“description”: “New Project Description”,
“notes”: “New Project Notes”
}
}
Error Responses:
400 Bad Request
: If the request data is invalid.403 Forbidden
: If the API key is invalid or does not have the necessary permissions.