Info
Welcome to the generated API reference. Get Postman Collection
This info section contains relevant information regarding integration with ProLøn, not only the technical side but also some of the business rules, which integrated systems tends to get wrong.
Handling credentials / login
There are 4 types of logins into the ProLøn salary system
- Company login
- User login
- Administrator login
- Partner login
Which login to use depends heavily on the type of system integrating with the API. Of the 4 only the partner login requires the integrating system to store credentials. In all other types of logins there is no need to store user/customer credentials(!).
In the following subsections, the "system" means the system integrating with the API. When refering to a user, that user is an "internal user" to the users own company only, but is an "external user" in regard to all others. An internal user typically handles book keeping or approvals for that users own company only. An external user typically handles book keeping for multiple companies.
A company login has all privileges for that company, and hence is allowed to perform all actions. Internal and external users (This includes administrator and partner logins) are assigned priviledges when created (internal user) or assigned to a company (external user). That means priviledges depends on the user and the company and can change when accesing more the once company (external user).
A succesful login yields a cookie, which must be included in all requests. The cookie expires after 10 hours, and can be stored by the system in order to avoid storing company / user credentials.
Company login
The user logs into the system using the ProLøn company credentials. The system forwards the credentials to the API, which verifies them. If successful a cookie is returned, which the system stores and uses in future request by the same user. Access rights are checked and validated against the cookie. Only one company at a time can be accessed with the same cookie. There is no need to store company credentials.
User login
Same as company login but possible with less priviledges. The user logs into the system using their ProLøn user credentials. The system forwards the credentials to the API, which verifies them. If successful a cookie is returned, which the system stores and uses in future request by the same user. Access rights are checked and validated against the cookie. Only one company at a time can be accessed with the same cookie. There is no need to store user credentials.
Administrator login
Almost the same as user login except the administrator has access to multiple companies. The cookie is used when verifying access to and actions on the different companies. If an administrator has access to company A and B, then for getting the company data for A the URL “/company/A” is used and for B the URL “/company/B” – In essence only the company number need to be changed in order to access different companies.
Partner login
Almost the same as administrator login. The partner login must be added as external user to the companies, the partner login are to administer with the right access rights / priviledges of course. The difference between administrator login and partner login is that the system can store the partner login credential and perform login “behind the scenes” while the administrator login requires the administrator to provide credentials when the cookie expires.
422 error descriptions
Validation errors found in input or business rules are returned as an 422 error. All returned 422 errors contains an error description, that (mostly) make sence to the end user, and should therefore be given to the end user, if no other error message can be provided. All error descriptions are in Danish.
Following this guideline should reduce calls to both ProLøn support and partners.
A few examples of error descriptions:
- "Medarbejdernummeret findes allerede" / "Employee number already exists".
- "Medarbejder findes ikke" / "Employee does not exists".
- "Lønarten for løntransaktionen må ikke ændres." / "Salary type for salary transaction cannot be changed".
- "Løntransaktion findes ikke." / "Salary transaction does not exist".
Reset codes
Each salary type has a reset code (In Danish called "Nulstillingskode" and in database referred to as "loenart_nulstil"). This code is used when either a reset of salary transactions are invoked or when creating salary transactions.
The possible values are
- 0 None
- 1 Reset number and amount
- 2 Delete all
- 3 Reset number, rate and amount
- 4 No reset, sum number, keep rate
- 5 Reset number and amount, sum numbers, keep rate
- 6 No reset, max 1 transaction with this salary type
- 7 Reset number and amount, max 1 transaction with the salary type
- 8 Reset number and amount, keep rate (Deprecated, so avoid usage)
A reset of salary transactions can be invoked by the following actions
- Every time a salary order has been processed.
- A request for reset is handled by ProLøn support (Typically as a customer request).
- A request to the API is processed (see Reset)
When resetting all salary transactions are evaluated by their reset code and reset accordingly. The reset also targets salary transaction for employees not sheduled for payment, so reset with caution.
Another usage (abuse) of reset codes is doing sums when salary transactions are created. When doing sums (Reset code 4 and 5) the numbers for the salary transactions using the same salary type are added together and the rate kept in one final salary transaction. This is normally used for employees paid by the hour with different rates.
For example for an employee with a hourly pay rate at 150,00, this employee will typically have one existing salary transaction with the rate set to 150,00 and the number set to 0 after a processed salary order. When salary transactions with hours are created (either by the ProLøn frontend, CSV or by API), the hours will be added to the number for that existing salary transaction. When all the (new) salary transactions have been processed, the employee will have exactly one salary transaction containing the sum of all the numbers and the rate of 150,00.
Reset codes are initially set up, when the customer / company joins ProLøn. A ProLøn supporter goes through all relevant salary types and makes sure the setup matches the customers/ companys needs. If the need to change the reset codes arises, please consult both the customer and ProLøn support.
.NET DLL
A .NET library file is available for download targeting solutions using .NET v4.0 or v4.5+. The functionality covered by the file is listed below together with a simple example. The implementation aims to simplify interaction with the REST API and generalise the way data is send and returned including processing error messages.
The file is available for download here as a ZIP (including additional DLLs which might be required by your system)
The .NET 4.0 uses the System.Net.WebRequest class to communicate with the API, and the .NET 4.5+ uses the System.Net.Http.HttpClient class.
Models
- AccessRightModel (Contains access rights for the logged in user)
- CompanyModel (Contains company data for company belonging to current logged in user)
- EmployeeModel (Contains employee data)
- SalaryTransactionModel (Contains salary transaction data)
- UserModel (Contains user data for currently logged in user)
Authenticate
- Login(string login, string password)
- Logout()
Employee
- GetEmployee(int companyNumber, int employeeNumber)
- GetEmployeeList(int companyNumber)
- GetDraftEmployeeList(int companyNumber)
- CreateEmployee(int companyNumber, EmployeeModel employee)
- CreateDraftEmployee(int companyNumber, EmployeeModel employee)
- UpdateEmployee(int companyNumber, int employeeNumber, EmployeeModel employee)
- UpdateDraftEmployee(int companyNumber, int employeeNumber, EmployeeModel employee)
- UpdateEmployeeList(int companyNumber, List
employeeList)
SalaryTransaction
- GetSalaryTransaction(int companyNumber, int employeeNumber, int salaryTypeId, int salaryTransactionNumber)
- GetSalaryTransactionList(int companyNumber)
- GetSalaryTransactionListForEmployee(int companyNumber, int employeeNumber)
- ValidateSalaryTransactionList(int companyNumber, List
salaryTransactionList) - CreateSalaryTransactionForEmployee(int companyNumber, int employeeNumber,
List
salaryTransactionList) - CreateSalaryTransactionForMultipleEmployee(int companyNumber, List
salaryTransactionList) - UpdateSalaryTransactionForEmployee(int companyNumber, int employeeNumber,
List
salaryTransactionList) - UpdateSalaryTransactionForMultipleEmployee(int companyNumber, List
salaryTransactionList) - DeleteSalaryTransactionForEmployee(int companyNumber, int employeeNumber, List
salaryTransactionIdList) - DeleteSalaryTransactionForMultipleEmployee(int companyNumber, List
salaryTransactionList)
Salary
- Reset(int companyNumber, int employeeTypeId)
C# library file console program example
using System;
using System.Collections.Generic;
namespace TestAPIConsoleApp {
class Program {
static string APIKEY = "";
static string DOMAINURL = "https://proloendemo.proinfo.dk/demo/api";
static string LOGIN = "";
static string PASSWORD = "";
static int COMPANY_ID = -1;
static int EMPLOYEE_TYPE = -1;
static void Main(string[] args) {
// Read and assign values for ApiKey, DomainUrl, Login, Password, Company and
// EmployeeType - Code omitted
// Create api reference object
ProLoenAPI.ProLoenAPI proloenApi = new ProLoenAPI.ProLoenAPI(APIKEY, DOMAINURL);
// Login
var loginResponse = proloenApi.Authenticate.Login(LOGIN, PASSWORD);
DisplayResponse(loginResponse);
// Create employee - Assuming everything is fine for this example
var draftEmployee = GetPartialEmployeeFromDB();
var createDraftEmployeeResponse = proloenApi.Employee
.CreateDraftEmployee(COMPANY_ID, draftEmployee);
DisplayResponse(createDraftEmployeeResponse);
// Create salary transaction - Assuming everything is fine for this example
// First validate transactions before commiting these
var salaryTransactionList =
GetSalaryTransactionListFromDB(COMPANY_ID, draftEmployee.arbejder_nr);
var validateSalaryTransactionListResponse = proloenApi.SalaryTransaction
.ValidateSalaryTransactionList(COMPANY_ID, salaryTransactionList);
DisplayResponse(validateSalaryTransactionListResponse);
// Assuming everything is fine, commit transactions
var createSalaryTransactionResponse = proloenApi.SalaryTransaction
.CreateSalaryTransactionForEmployee(COMPANY_ID,
draftEmployee.arbejder_nr,
salaryTransactionList);
DisplayResponse(createSalaryTransactionResponse);
// Reset salary transactions (Depends on reset codes!)
var resetSalaryResponse = proloenApi.Salary.Reset(COMPANY_ID, EMPLOYEE_TYPE);
DisplayResponse(resetSalaryResponse);
// Logout
var logoutResponse = proloenApi.Authenticate.Logout();
DisplayResponse(logoutResponse);
var _ = Console.ReadKey();
}
/// <summary>
/// Returns an draft emploee object with test data - Should be pulled from another source
/// </summary>
/// <returns></returns>
private static ProLoenAPI.Model.EmployeeModel GetPartialEmployeeFromDB() {
Random random = new Random();
return new ProLoenAPI.Model.EmployeeModel() {
arbejder_nr = random.Next(1, 99999),
arbejder_arbejdertype = EMPLOYEE_TYPE,
arbejder_fornavn = "DRAFT"
};
}
/// <summary>
/// Returns test salary transaction - Should be pulled from another source
/// </summary>
/// <param name="companyId"></param>
/// <param name="employeeId"></param>
/// <returns></returns>
private static List<ProLoenAPI.Model.SalaryTransactionModel>
GetSalaryTransactionListFromDB(int companyId, int employeeId) {
return new List<ProLoenAPI.Model.SalaryTransactionModel>() {
new ProLoenAPI.Model.SalaryTransactionModel(){
loentransaktion_firma = companyId,
loentransaktion_arbejder = employeeId,
loentransaktion_loenart = 1002,
loentransaktion_antal = 2,
loentransaktion_sats = 100,
loentransaktion_beloeb = 0
},
new ProLoenAPI.Model.SalaryTransactionModel(){
loentransaktion_firma = companyId,
loentransaktion_arbejder = employeeId,
loentransaktion_loenart = 1002,
loentransaktion_antal = 2,
loentransaktion_sats = 100,
loentransaktion_beloeb = 0
}
};
}
/// <summary>
/// Displays all data in response as an example
/// </summary>
/// <param name="response"></param>
private static void DisplayResponse(ProLoenAPI.Response.ApiResponse response) {
Console.WriteLine("Displaying response:");
Console.WriteLine($"\tResponse type is: {response.GetType().FullName}");
Console.WriteLine($"\tStatus code is: {response.StatusCode}");
Console.WriteLine($"\tNumber of errors is: {response.ErrorList.Count}");
foreach (var error in response.ErrorList) {
Console.WriteLine($"\tField: {error.Field}");
Console.WriteLine($"\tDescription: {error.Description}");
Console.WriteLine($"\tValidator: {error.Validator}\n");
}
if (response.GetType().IsSubclassOf(typeof(ProLoenAPI.Response.ApiResponse))) {
var dynamicResponse = (ProLoenAPI.Response.ApiResponse<dynamic>)response;
Console.WriteLine($"\tNumber of elements is: {dynamicResponse.ElementList.Count}");
foreach (var element in dynamicResponse.ElementList) {
Console.WriteLine($"\t\telement: {element}");
}
}
if (response.GetType().FullName.Equals("ProLoenAPI.Response.LoginResponse")) {
var loginResponse = (ProLoenAPI.Response.LoginResponse)response;
Console.WriteLine($"\tUser is: {loginResponse.User}");
Console.WriteLine($"\tCompany is: {loginResponse.Company}");
Console.WriteLine($"\tAccess rights is: {loginResponse.AccessRight}");
}
}
}
}
Often used functionality
The functionality listed here are the most used by 3rd party systems. The API has a lot of endpoints but most are not used very often. Any 3rd party system would benefit for implementing most of these. An C# console application example for sending requests is listed below.
Authenticate
Storing and updating employees
- POST api/company/{companyId}/employee/draft
- POST api/company/{companyId}/employee
- PATCH api/company/{companyId}/employee/{employeeId}/draft
- PATCH api/company/{companyId}/employee/{employeeId}
Salary transactions
- POST api/company/{companyId}/salarytransaction/validation
- POST api/company/{companyId}/employee/{employeeId}/salarytransaction/validation
- POST api/company/{companyId}/salarytransaction/list
- POST api/company/{companyId}/salarytransaction/fileupload
- POST api/company/{companyId}/salarytransaction/field
- PUT api/company/{companyId}/employee/{employeeId}/salarytransaction
Prepare salary
- PATCH api/company/{companyId}/salarytransaction/paymentstatus
- POST api/company/{companyId}/salary/employeetype/{employeeTypeId}/reset
C# HttpClient console program example
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
namespace CSharpExampleCode {
class Program {
private const string API_KEY = "xxxxxxxxxxxxxxxxxxxx";
private const string COMPANY = "xxxxx"; // Should be set in a config file
private const string EMPLOYEE_NUMBER = "x"; // Should come from other data source
private const string EMPLOYEE_CPR_NUMBER = "010160xxxx"; // Should come from other sources
// (010160 skips CVR validation)
private const string LOGIN_USER = "xxxxx"; // Should be set in a config file
private const string LOGIN_PASSWORD = "xxxxxxxx"; // Should be set in a config file
private static string SESSION_COOKIE; // Storing cookie from login and subsequent calls
// URLS
private const string DOMAIN_URL = "https://proloendemo.proinfo.dk"; // Cookie domain.
private const string BASE_URL = DOMAIN_URL + "/demo/api/"; // Used for base in all API URLs.
private const string LOGIN_URL = BASE_URL + "authenticate/login";
private const string BASE_EMPLOYEE_URL = BASE_URL + "company/" + COMPANY + "/employee";
private const string EMPLOYEE_URL = BASE_EMPLOYEE_URL + "/" + EMPLOYEE_NUMBER;
private const string EMPLOYEE_SALARY_TRANSACTION_URL =
BASE_EMPLOYEE_URL + "/" + EMPLOYEE_NUMBER + "/" + "salarytransaction";
private const string BASE_SALARY_TRANSACTION_URL =
BASE_URL + "company/" + COMPANY + "/salarytransaction";
private const string SALARY_TRANSACTION_LIST_URL = BASE_SALARY_TRANSACTION_URL + "/list";
private const string SALARY_ORDER_URL = BASE_URL + "company/" + COMPANY + "/salaryorder";
private enum RequestMethod { GET, POST, PATCH, DELETE }
static void Main(string[] args) {
PerformLogin();
CreateEmployee();
UpdateEmployee();
CreateSalaryTransactions();
MarkEmployeeForSalaryPayout();
GetSalaryData();
// Note calling this function locks the company making only read operations allowed!
//CreateSalaryOrder();
}
/// <summary>
/// Generic method for setting headers, transforming data, calling the API and storing
/// any relevant cookies
/// </summary>
/// <param name="uri">API endpoint</param>
/// <param name="data">Data to send if any, empty if no data is to be send</param>
/// <param name="requestMethod">Type of request</param>
/// <returns></returns>
private static async Task<HttpResponseMessage> SendRequest(Uri uri,
dynamic data,
RequestMethod requestMethod) {
// Setup
CookieContainer cookieContainer = new CookieContainer();
HttpClientHandler handler = new HttpClientHandler();
handler.CookieContainer = cookieContainer;
HttpClient client = new HttpClient(handler);
client.DefaultRequestHeaders.Add("api-key", API_KEY);
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json")
);
if (SESSION_COOKIE != null) {
cookieContainer.Add(
new Uri(DOMAIN_URL),
new Cookie("laravel_session", SESSION_COOKIE)
);
}
// Prepare call
var myContent = JsonConvert.SerializeObject(data);
var buffer = Encoding.UTF8.GetBytes(myContent);
var byteContent = new ByteArrayContent(buffer);
byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
//Call
HttpResponseMessage response = null;
switch (requestMethod) {
case RequestMethod.POST:
response = client.PostAsync(uri, byteContent).Result;
break;
case RequestMethod.PATCH:
// HttpClient does not "native" support PATCH, so use generic method SendAsync
// Alternative use PUT, but it requires all parameters to be included in data
var method = new HttpMethod("PATCH");
var request = new HttpRequestMessage(method, uri) {
Content = byteContent
};
var httpResponseMessage = new HttpResponseMessage();
response = await client.SendAsync(request);
break;
case RequestMethod.DELETE:
response = client.DeleteAsync(uri).Result;
break;
case RequestMethod.GET:
default:
response = client.GetAsync(uri).Result;
break;
}
// Get cookies
IEnumerable<Cookie> responseCookies = cookieContainer.GetCookies(uri).Cast<Cookie>();
foreach (Cookie cookie in responseCookies) {
if (cookie.Name.Equals("laravel_session")) {
SESSION_COOKIE = cookie.Value;
}
}
return response;
}
/// <summary>
/// Generic method for handling responses. Ideally this should be handled in the calling
/// method, but for testing purpose, it is placed here.
/// </summary>
/// <param name="response"></param>
/// <param name="url"></param>
/// <param name="expectArray"></param>
private static void HandleResponse(HttpResponseMessage response, string url,
bool expectArray = false) {
// One could use response.EnsureSuccessStatusCode() instead in a try-catch
if (response.IsSuccessStatusCode) {
Console.WriteLine($"Call to {url} successfull");
}
else {
Console.WriteLine($"Call to {url} failed: {response.StatusCode}");
}
var responseContent = response.Content.ReadAsStringAsync().Result;
if (!responseContent.Equals("")) {
var responseJson = (expectArray
? JArray.Parse(responseContent).ToString()
: JObject.Parse(responseContent).ToString()
);
Console.WriteLine(responseJson);
}
}
private static void PerformLogin() {
var data = new {
login = LOGIN_USER,
password = LOGIN_PASSWORD
};
var response = SendRequest(new Uri(LOGIN_URL), data, RequestMethod.POST).Result;
HandleResponse(response, LOGIN_URL);
var unusedKey = Console.ReadKey();
}
private static void CreateEmployee() {
// Please note, that the number of fields depends on the company setup. These are
// only a suggestion of the most commonly used
var data = new {
arbejder_nr = Convert.ToInt32(EMPLOYEE_NUMBER),
arbejder_fornavn = "Test",
arbejder_efternavn = "Testing",
arbejder_cprnr = EMPLOYEE_CPR_NUMBER,
arbejder_arbejdertype = 2,
arbejder_afdeling = 1,
arbejder_adresse1 = "Some street",
arbejder_postnr = 1234,
arbejder_by = "Somewhere",
arbejder_ansatdato = "2018-11-30",
arbejder_bankregnr = 1234,
arbejder_bankkontonr = "12345678",
arbejder_atpkode = 0,
arbejder_feriekode = 0,
arbejder_shkode = 0,
arbejder_beskaeftigelseskode = 0,
arbejder_skattekort = "H"
};
var response = SendRequest(new Uri(BASE_EMPLOYEE_URL), data, RequestMethod.POST).Result;
HandleResponse(response, BASE_EMPLOYEE_URL);
var unusedKey = Console.ReadKey();
}
private static void UpdateEmployee() {
var data = new {
arbejder_fornavn = "Test 2"
};
var response = SendRequest(new Uri(EMPLOYEE_URL), data, RequestMethod.PATCH).Result;
HandleResponse(response, EMPLOYEE_URL);
var unusedKey = Console.ReadKey();
}
private static void CreateSalaryTransactions() {
var data = new {
loentransaktioner = new[] {
new {
loentransaktion_arbejder = Convert.ToInt32(EMPLOYEE_NUMBER),
loentransaktion_loenart = 571,
loentransaktion_antal = 5.0,
loentransaktion_sats = 5.50,
loentransaktion_beloeb = 0.0,
loentransaktion_afdeling = 0
},
new {
loentransaktion_arbejder = Convert.ToInt32(EMPLOYEE_NUMBER),
loentransaktion_loenart = 2240,
loentransaktion_antal = 0.0,
loentransaktion_sats = 0.0,
loentransaktion_beloeb = 500.0,
loentransaktion_afdeling = 0
}
}
};
var response = SendRequest(
new Uri(SALARY_TRANSACTION_LIST_URL),
data,
RequestMethod.POST)
.Result;
HandleResponse(response, SALARY_TRANSACTION_LIST_URL, true);
var unusedKey = Console.ReadKey();
}
private static void MarkEmployeeForSalaryPayout() {
var data = new {
arbejder_loen = 1
};
var response = SendRequest(new Uri(EMPLOYEE_URL), data, RequestMethod.PATCH).Result;
HandleResponse(response, EMPLOYEE_URL);
var unusedKey = Console.ReadKey();
}
private static void GetSalaryData() {
var response = SendRequest(
new Uri(EMPLOYEE_SALARY_TRANSACTION_URL),
new { },
RequestMethod.GET)
.Result;
HandleResponse(response, EMPLOYEE_SALARY_TRANSACTION_URL, true);
var unusedKey = Console.ReadKey();
}
/// <summary>
/// Note calling this function locks the company making only read operations allowed!
///
/// To unlock, contact [email protected]
/// </summary>
private static void CreateSalaryOrder() {
var data = new {
firma_bemaerkning = "Console app ordering",
bestilling = new[] {
new {
arbejdertype_nr = 2,
dispositions_dato = "2018-12-27",
ekstra_loenkoersel = false,
kortfrist_bestilling = false,
test_koersel = false,
fremrykket_udbetaling = false,
bestilt_for_sent = false,
anden_aarsag_notat = "Console app ordering"
}
}
};
var response = SendRequest(new Uri(SALARY_ORDER_URL), data, RequestMethod.POST).Result;
HandleResponse(response, EMPLOYEE_SALARY_TRANSACTION_URL);
var unusedKey = Console.ReadKey();
}
}
}
(Remember to replace all "x*" with data given by Proløn or from your own data source)
Employee in draft
An employee can be fully created once all required data are provided. Until then an employee can be created as a draft. This is useful if all the required data is not present in the integrating system and allows the integrating system to transfer what data is present. Only the employee number (arbejder_nr) is required in order to create an employee as a draft.
Once all required data are provided, the employee can be updated to a full employee by calling the update employee endpoint
A full employee cannot ever go back to being in draft. Also an employee in draft cannot be a part of a salary order and hence cannot receive any payments.
In order to determine whether or not an employee is in draft, retrieve employee data at the following endpoint and check the draft field (arbejder_kladde) - If the field value is 1, then the employee is still in draft.
Do note, that the endpoints for creating and updating employees in draft are different from those where the employee are fully created.
- POST api/company/{companyId}/employee/draft
- PATCH api/company/{companyId}/employee/{employeeId}/draft
Access to DEMO environment
To be able to access the DEMO environment, a request must be send to [email protected], stating
- Purpose and intent for requesting access.
- Requesting company name.
- Requesting company CVR.
- System name.
- Contact information (Name and email).
No access is granted to the PROD environment without thorough testing in the DEMO environment. The DEMO environment is as stable as can be and very close to identical to the PROD environment.
Once the request has been processed, access will be granted and the following will be returned
- Company login
- Password
- API key
All requests to the API must use HTTPS (TLS 1.0, TLS 1.1, TLS 1.2 or TLS 1.3) - Any connections using HTTP will be redirected or ignored.
A cookie is returned on successful login. This cookie is to be included in all following requests. The same goes for the API key. The API key is be sent in the header:
api-key: <APIKEY>
The API key is specifically made for the system and only grants access to the DEMO environment, not the PROD environment. The API key is not a part of the security system and only serves to identify requests from that system.
Standard responses:
- 200 – Everything is ok, requested data are returned.
- 401 – The user has not sufficient privilegies / Missing cookie in header.
- 403 – Incorrect API key.
- 404 – End point is not found / Requested resource does not exists.
- 422 – Data are in error, error message included in response.
- 500 – Server error - Please inform [email protected]
Access to PROD environment
After thorough testing have been performed in the DEMO environment, access to PROD can be requested. Send an email to [email protected] stating
- Contact information (Name and email).
- Login method, see Handling credentials / login
- Start date of your integration.
Once the request has been processed, access will be granted and a PROD environment API key will be returned. Depending on your choise of login, more information are included.
If your choose Partner Login as your choise of login, a guide can be provided instructing users how to add your partner login as external user.
Contact information
Questions regarding this documentation can be send to ProLøn IT at [email protected]
Absence statistics (Fraværsstatistik)
Get absence statistics list
The following parameters can be used to narrow the search
fravaersstatistik_arbejder
- Default/Zero: Search allfravaersstatistik_startdato
- Default: No start datefravaersstatistik_slutdato
- Default: No end datefravaersstatistik_fravaerskode
- Default/Zero: Search all
if fravaersstatistik_slutdato
and fravaersstatistik_startdato
is not supplied
results is filtered to current year
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"fravaersstatistik_arbejder": 78509,
"fravaersstatistik_startdato": 96151278,
"fravaersstatistik_slutdato": 59211303,
"fravaersstatistik_fravaerskode": 291
}
fetch(url, {
method: "GET",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/absencestatistics',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'fravaersstatistik_arbejder' => 78509,
'fravaersstatistik_startdato' => 96151278,
'fravaersstatistik_slutdato' => 59211303,
'fravaersstatistik_fravaerskode' => 291,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics'
payload = {
"fravaersstatistik_arbejder": 78509,
"fravaersstatistik_startdato": 96151278,
"fravaersstatistik_slutdato": 59211303,
"fravaersstatistik_fravaerskode": 291
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"fravaersstatistik_id": 123,
"fravaersstatistik_firma": 123,
"fravaersstatistik_arbejder": 1234,
"fravaersstatistik_startdato": "2016-02-05",
"fravaersstatistik_slutdato": "2016-02-09",
"fravaersstatistik_fravaerskode": 1234,
"fravaersstatistik_timer": 12.3,
"arbejder_firma": "123",
"arbejder_nr": "1234",
"arbejder_arbejdertype": "1",
"arbejder_profil": "FER18",
"arbejder_fornavn": "MATILDA",
"arbejder_efternavn": "OLSEN",
"arbejder_adresse1": "NAVNEVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": "2500",
"arbejder_by": "VALBY",
"arbejder_cprnr": "0101901111",
"arbejder_ansatdato": "20150803",
"arbejder_rejstdato": "20161201",
"arbejder_afdeling": "9",
"arbejder_skattefrd1dag": "0",
"arbejder_skattefrdperioden": "0",
"arbejder_traekprocent": "36",
"arbejder_restfrikort": "0",
"arbejder_bankregnr": "1234",
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": "1",
"arbejder_feriekode": "1",
"arbejder_shkode": "0",
"arbejder_ampension": "8913",
"arbejder_amstartdato": "20161010",
"arbejder_ansaettelsestype": "1",
"arbejder_ansaettelsevilkaer": "2",
"arbejder_jobstatus": "9",
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": "9",
"arbejder_bruttoloen": null,
"arbejder_sidstopdstamdata": "20161231",
"arbejder_sidstopdtrans": "20161228",
"arbejder_slettet": "1",
"arbejder_loen": "0",
"arbejder_changed": "0",
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": "0",
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": "0",
"arbejder_garantiloendeltid": "0",
"arbejder_frivilligtraekprocent": "0",
"arbejder_beskaeftigelseskode": "0",
"arbejder_produktionsenhedsnr": "1234567890",
"arbejder_groenlandskkommune": "0",
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": "0",
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": "1",
"arbejder_udlaertdato": "0",
"arbejder_arbejdsfunktion2": "522300",
"arbejder_sundhedsordning": "0",
"arbejder_mokode": "0",
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": "0",
"arbejder_kompetencefond": "10056",
"arbejder_samarbuddannelsesfond": "10056",
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "20150803",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": "0",
"fravaerskode_nr": "1100",
"fravaerskode_tekst": "Egen sygdom"
}
]
HTTP Request
GET api/company/{companyId}/absencestatistics
Requirements
- User is logged in
- User has access right salary.read
- Company has absence statistics enabled
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
fravaersstatistik_arbejder |
integer | optional | Minimum: 1 and maximum: 99999 |
fravaersstatistik_startdato |
integer | optional | Minimum: 10000000 and maximum: 99999999 |
fravaersstatistik_slutdato |
integer | optional | Minimum: 10000000 and maximum: 99999999 |
fravaersstatistik_fravaerskode |
integer | optional | Maximum: 9999 |
Get absence code list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics/codelist"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/absencestatistics/codelist',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics/codelist'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"fravaerskode_nr": 1100,
"fravaerskode_tekst": "Egen sygdom"
}
]
HTTP Request
GET api/company/{companyId}/absencestatistics/codelist
Requirements
- User is logged in
- User has access right salary.read
- Company has absence statistics enabled
Get single absence statistics
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/absencestatistics/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"fravaersstatistik_id": 5,
"fravaersstatistik_firma": 123,
"fravaersstatistik_arbejder": 1234,
"fravaersstatistik_startdato": "2015-02-05",
"fravaersstatistik_slutdato": "2015-02-09",
"fravaersstatistik_fravaerskode": 1234,
"fravaersstatistik_timer": 12.3
}
HTTP Request
GET api/company/{companyId}/absencestatistics/{absenceStatisticsId}
Requirements
- User is logged in
- User has access right salary.read
- Company has absence statistics enabled
Create absence statistic
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"fravaersstatistik_arbejder": 5605297,
"fravaersstatistik_startdato": 54308067,
"fravaersstatistik_slutdato": 23538877,
"fravaersstatistik_fravaerskode": 59211,
"fravaersstatistik_timer": 213.32
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/absencestatistics',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'fravaersstatistik_arbejder' => 5605297,
'fravaersstatistik_startdato' => 54308067,
'fravaersstatistik_slutdato' => 23538877,
'fravaersstatistik_fravaerskode' => 59211,
'fravaersstatistik_timer' => 213.32,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics'
payload = {
"fravaersstatistik_arbejder": 5605297,
"fravaersstatistik_startdato": 54308067,
"fravaersstatistik_slutdato": 23538877,
"fravaersstatistik_fravaerskode": 59211,
"fravaersstatistik_timer": 213.32
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"fravaersstatistik_firma": 123,
"fravaersstatistik_arbejder": 1234,
"fravaersstatistik_startdato": 12032017,
"fravaersstatistik_slutdato": 12032017,
"fravaersstatistik_fravaerskode": 123,
"fravaersstatistik_timer": 12.3
}
HTTP Request
POST api/company/{companyId}/absencestatistics
Requirements
- User is logged in
- User has access right salary.read
- Company has absence statistics enabled
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
fravaersstatistik_arbejder |
integer | required | |
fravaersstatistik_startdato |
integer | required | Minimum: 10000000 and maximum: 99999999 |
fravaersstatistik_slutdato |
integer | required | Minimum: 10000000 and maximum: 99999999 |
fravaersstatistik_fravaerskode |
integer | required | |
fravaersstatistik_timer |
numeric | required |
api/company/{companyId}/absencestatistics/bulk/file
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics/bulk/file"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/absencestatistics/bulk/file',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics/bulk/file'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers)
response.json()
HTTP Request
POST api/company/{companyId}/absencestatistics/bulk/file
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
fravaersFil |
file | required | Must be a file upload and allowed mime types: text/csv , text/plain , application/csv , application/x-csv , text/comma-separated-values , text/x-comma-separated-values or text/tab-separated-values |
api/company/{companyId}/absencestatistics/bulk/field
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics/bulk/field"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"absencestatistics": "quod"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/absencestatistics/bulk/field',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'absencestatistics' => 'quod',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics/bulk/field'
payload = {
"absencestatistics": "quod"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
HTTP Request
POST api/company/{companyId}/absencestatistics/bulk/field
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
absencestatistics |
string | required |
Update absence statistic
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"fravaersstatistik_arbejder": 5605297,
"fravaersstatistik_startdato": 54308067,
"fravaersstatistik_slutdato": 23538877,
"fravaersstatistik_fravaerskode": 59211,
"fravaersstatistik_timer": 213.32
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/absencestatistics/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'fravaersstatistik_arbejder' => 5605297,
'fravaersstatistik_startdato' => 54308067,
'fravaersstatistik_slutdato' => 23538877,
'fravaersstatistik_fravaerskode' => 59211,
'fravaersstatistik_timer' => 213.32,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics/1'
payload = {
"fravaersstatistik_arbejder": 5605297,
"fravaersstatistik_startdato": 54308067,
"fravaersstatistik_slutdato": 23538877,
"fravaersstatistik_fravaerskode": 59211,
"fravaersstatistik_timer": 213.32
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/absencestatistics/{absenceStatisticsId}
Requirements
- User is logged in
- User has access right salary.read
- Company has absence statistics enabled
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
fravaersstatistik_arbejder |
integer | optional | |
fravaersstatistik_startdato |
integer | optional | Minimum: 10000000 and maximum: 99999999 |
fravaersstatistik_slutdato |
integer | optional | Minimum: 10000000 and maximum: 99999999 |
fravaersstatistik_fravaerskode |
integer | optional | |
fravaersstatistik_timer |
numeric | optional |
Delete absence statistic
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/absencestatistics/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/absencestatistics/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/absencestatistics/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/absencestatistics/{absenceStatisticsId}
Requirements
- User is logged in
- User has access right salary.read
- Company has absence statistics enabled
Account number voucher
Get account number voucher list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/accountnumbervoucher"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/accountnumbervoucher',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/accountnumbervoucher'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"stdktbilag_kontoplanversion": 2,
"stdktbilag_linjenr": 2114000,
"stdktbilag_kontonr": 0,
"stdktbilag_tekst": "A-INDKOMST: AI",
"stdktbilag_specafdnr": 0,
"stdktbilag_specloenart": 0,
"stdktbilag_bogfoeringskode": 0,
"firmaktbilag": []
}
]
HTTP Request
GET api/company/{companyId}/accountnumbervoucher
Requirements
- User is logged in
- User has access to company
Get account number voucher list for version number
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/accountnumbervoucher/version/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/accountnumbervoucher/version/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/accountnumbervoucher/version/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"stdktbilag_kontoplanversion": 3,
"stdktbilag_linjenr": 3116000,
"stdktbilag_kontonr": 0,
"stdktbilag_tekst": "FERIEBERETTIGET: FB",
"stdktbilag_specafdnr": 0,
"stdktbilag_specloenart": 0,
"stdktbilag_bogfoeringskode": 0,
"firmaktbilag": []
},
{
"stdktbilag_kontoplanversion": 3,
"stdktbilag_linjenr": 3117000,
"stdktbilag_kontonr": 11500,
"stdktbilag_tekst": "AI:JA BS:JA FB:JA",
"stdktbilag_specafdnr": 1,
"stdktbilag_specloenart": 1,
"stdktbilag_bogfoeringskode": 1,
"firmaktbilag": [
{
"firmaktbilag_id": 603,
"firmaktbilag_firma": 737,
"firmaktbilag_stdkontoplanversion": 3,
"firmaktbilag_stdlinjenr": 3117000,
"firmaktbilag_stdkontonr": 11500,
"firmaktbilag_kontonr": 0,
"firmaktbilag_afdnr": 1,
"firmaktbilag_loenart": 0,
"firmaktbilag_arbejder": 0
}
]
}
]
HTTP Request
GET api/company/{companyId}/accountnumbervoucher/version/{versionNumber}
Requirements
- User is logged in
- User has access to company
Create account number voucher
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/accountnumbervoucher"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firmaktbilag_stdkontoplanversion": 5605297,
"firmaktbilag_stdlinjenr": 78,
"firmaktbilag_kontonr": 45931688,
"firmaktbilag_afdnr": 23538,
"firmaktbilag_loenart": 2619,
"firmaktbilag_arbejder": 73305
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/accountnumbervoucher',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firmaktbilag_stdkontoplanversion' => 5605297,
'firmaktbilag_stdlinjenr' => 78,
'firmaktbilag_kontonr' => 45931688,
'firmaktbilag_afdnr' => 23538,
'firmaktbilag_loenart' => 2619,
'firmaktbilag_arbejder' => 73305,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/accountnumbervoucher'
payload = {
"firmaktbilag_stdkontoplanversion": 5605297,
"firmaktbilag_stdlinjenr": 78,
"firmaktbilag_kontonr": 45931688,
"firmaktbilag_afdnr": 23538,
"firmaktbilag_loenart": 2619,
"firmaktbilag_arbejder": 73305
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"firmaktbilag_firma": 123,
"firmaktbilag_stdkontoplanversion": 1,
"firmaktbilag_stdkontonr": 1234,
"firmaktbilag_stdlinjenr": 1234,
"firmaktbilag_kontonr": 0,
"firmaktbilag_afdnr": 1,
"firmaktbilag_loenart": 0,
"firmaktbilag_arbejder": 0
}
HTTP Request
POST api/company/{companyId}/accountnumbervoucher
Requirements
- User is logged in
- User has access to company
- User has access right salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firmaktbilag_stdkontoplanversion |
integer | required | |
firmaktbilag_stdlinjenr |
integer | required | |
firmaktbilag_kontonr |
integer | required | Between: 0 and 99999999 |
firmaktbilag_afdnr |
integer | optional | Between: 0 and 99999 |
firmaktbilag_loenart |
integer | optional | Between: 0 and 9999 |
firmaktbilag_arbejder |
integer | optional | Between: 0 and 99999 |
Update account number voucher
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/accountnumbervoucher/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firmaktbilag_kontonr": 15868397,
"firmaktbilag_afdnr": 54308,
"firmaktbilag_loenart": 6747,
"firmaktbilag_arbejder": 59211
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/accountnumbervoucher/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firmaktbilag_kontonr' => 15868397,
'firmaktbilag_afdnr' => 54308,
'firmaktbilag_loenart' => 6747,
'firmaktbilag_arbejder' => 59211,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/accountnumbervoucher/1'
payload = {
"firmaktbilag_kontonr": 15868397,
"firmaktbilag_afdnr": 54308,
"firmaktbilag_loenart": 6747,
"firmaktbilag_arbejder": 59211
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/accountnumbervoucher/{voucherId}
Requirements
- User is logged in
- User has access to company
- User has access right salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firmaktbilag_kontonr |
integer | optional | Between: 0 and 99999999 |
firmaktbilag_afdnr |
integer | optional | Between: 0 and 99999 |
firmaktbilag_loenart |
integer | optional | Between: 0 and 9999 |
firmaktbilag_arbejder |
integer | optional | Between: 0 and 99999 |
Delete account number voucher
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/accountnumbervoucher/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/accountnumbervoucher/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/accountnumbervoucher/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/accountnumbervoucher/{voucherId}
Requirements
- User is logged in
- User has access to company
- User has access right salary.write
Admin info
get list of info for a specific industry
Remark about {industryId}:
- -2 info front page
- -1 general info for all branches
- 1+ branch specific info
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/admininfo/industry/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/admininfo/industry/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/admininfo/industry/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"info_id": 1,
"info_titel": "Afleveringsfrister",
"info_tekst": "beskrivende tekst",
"info_tildato": "2018-12-15",
"info_brance": -2
}
]
HTTP Request
GET api/company/{companyId}/admininfo/industry/{industryId}
Requirements
- User is logged in
- User has access to company
- User is super admin
Get single info
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/admininfo/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/admininfo/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/admininfo/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"info_id": 1,
"info_titel": "Afleveringsfrister",
"info_tekst": "beskrivende tekst",
"info_tildato": "2018-12-15",
"info_brance": -2
}
HTTP Request
GET api/company/{companyId}/admininfo/{id}
Requirements
- User is logged in
- User has access to company
- User is super admin
Create new info
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/admininfo"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"info_brance": 5605297,
"info_tildato": "2021-01-13",
"info_titel": "HsIChLYERa",
"info_tekst": "rLoe=Qr44i"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/admininfo',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'info_brance' => 5605297,
'info_tildato' => '2021-01-13',
'info_titel' => 'HsIChLYERa',
'info_tekst' => 'rLoe=Qr44i',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/admininfo'
payload = {
"info_brance": 5605297,
"info_tildato": "2021-01-13",
"info_titel": "HsIChLYERa",
"info_tekst": "rLoe=Qr44i"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"info_id": 1,
"info_titel": "Afleveringsfrister",
"info_tekst": "beskrivende tekst",
"info_tildato": "2018-12-15",
"info_brance": -2
}
HTTP Request
POST api/company/{companyId}/admininfo
Requirements
- User is logged in
- User has access to company
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
info_brance |
integer | required | |
info_tildato |
date | required | Date format: Y-m-d |
info_titel |
string | required | Can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
info_tekst |
string | required | Can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
Update info
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/admininfo/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"info_brance": 5605297,
"info_tildato": "2021-01-13",
"info_titel": "HsIChLYERa",
"info_tekst": "rLoe=Qr44i"
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/admininfo/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'info_brance' => 5605297,
'info_tildato' => '2021-01-13',
'info_titel' => 'HsIChLYERa',
'info_tekst' => 'rLoe=Qr44i',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/admininfo/1'
payload = {
"info_brance": 5605297,
"info_tildato": "2021-01-13",
"info_titel": "HsIChLYERa",
"info_tekst": "rLoe=Qr44i"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/admininfo/{id}
Requirements
- User is logged in
- User has access to company
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
info_brance |
integer | required | |
info_tildato |
date | required | Date format: Y-m-d |
info_titel |
string | required | Can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
info_tekst |
string | required | Can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
Destroy info
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/admininfo/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/admininfo/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/admininfo/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/admininfo/{id}
Requirements
- User is logged in
- User has access to company
- User is super admin
Admin matrix
Get list of selectable Matrix fields
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminmatrix/selection"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminmatrix/selection',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminmatrix/selection'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"matrix_feltnr": 1,
"matrix_feltbeskrivelse": "MedarbejderNr",
"firmamatrix_matrix_feltnr": null
}
]
HTTP Request
GET api/company/{companyId}/adminmatrix/selection
Requirements
- User is logged in
- User is super admin
Get list of company selected Matrix fields
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminmatrix/current"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminmatrix/current',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminmatrix/current'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"matrix_feltnr": 1,
"matrix_feltbeskrivelse": "MedarbejderNr",
"firmamatrix_matrix_feltnr": null
}
]
HTTP Request
GET api/company/{companyId}/adminmatrix/current
Requirements
- User is logged in
- User is super admin
Check if company has Matrix
this returns 404 if company does not have a matrix else it returns 200
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminmatrix/hasmatrix"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminmatrix/hasmatrix',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminmatrix/hasmatrix'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/adminmatrix/hasmatrix
Requirements
- User is logged in
- User is super admin
Update company Matrix
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminmatrix"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "PATCH",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/adminmatrix',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminmatrix'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers)
response.json()
HTTP Request
PATCH api/company/{companyId}/adminmatrix
Requirements
- User is logged in
- User is super admin
Admin salary
Get list of companies all companies that is not locked
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminsalary',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"bestilt": null,
"bestilttid": 0,
"firma_laast": 0,
"firma_overfoert": 0,
"firma_logonlocked": 0,
"firma_spaerret": 0,
"firma_papir": 0,
"firma_manspaerdato": null,
"arbejdertype_testkoersel": 0,
"arbejdertype_bestiltkl": 0
}
]
HTTP Request
GET api/company/{companyId}/adminsalary
Requirements
- User is logged in
- User is super admin
Returns a list of the companies who have ordered salary
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/ordered"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminsalary/ordered',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/ordered'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"bestilt": null,
"bestilttid": 0,
"firma_laast": 1,
"firma_overfoert": 0,
"firma_logonlocked": 0,
"firma_spaerret": 0,
"firma_papir": 0,
"firma_manspaerdato": null,
"arbejdertype_testkoersel": 0,
"arbejdertype_bestiltkl": 0,
"arbejdertype1_dispdato": 20180202,
"arbejdertype2_dispdato": 0,
"arbejdertype3_dispdato": 0
}
]
HTTP Request
GET api/company/{companyId}/adminsalary/ordered
Requirements
- User is logged in
- User is super admin
Returns a list of all the companies who have locked themselves out of the system
This includes the last registered attempt, and the machine ip
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/locked"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminsalary/locked',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/locked'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"bestilt": null,
"bestilttid": 0,
"firma_laast": 1,
"firma_overfoert": 0,
"firma_logonlocked": 1,
"firma_spaerret": 0,
"firma_papir": 0,
"firma_manspaerdato": null,
"arbejdertype_testkoersel": 0,
"arbejdertype_bestiltkl": 0,
"firma_logontime": "20180130115805",
"firma_logonip": "127.0.0.1"
}
]
HTTP Request
GET api/company/{companyId}/adminsalary/locked
Requirements
- User is logged in
- User is super admin
This returns a list of the companies that has been blocked
Also includes employee type extra data
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/blocked"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminsalary/blocked',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/blocked'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"bestilt": null,
"bestilttid": 0,
"firma_laast": 0,
"firma_overfoert": 0,
"firma_logonlocked": 0,
"firma_spaerret": 1,
"firma_papir": 0,
"firma_manspaerdato": null,
"arbejdertype_testkoersel": 0,
"arbejdertype_bestiltkl": 0,
"arbejdertype_data": [
{
"arbejdertype_nr": 1,
"arbejdertype_dispdato": 0
}
]
}
]
HTTP Request
GET api/company/{companyId}/adminsalary/blocked
Requirements
- User is logged in
- User is super admin
Returns a list of the companies who have been manually blocked
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/manuallyblocked"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminsalary/manuallyblocked',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/manuallyblocked'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"bestilt": null,
"bestilttid": 0,
"firma_laast": 0,
"firma_overfoert": 0,
"firma_logonlocked": 0,
"firma_spaerret": 0,
"firma_papir": 0,
"firma_manspaerdato": "20171203111213",
"arbejdertype_testkoersel": 0,
"arbejdertype_bestiltkl": 0
}
]
HTTP Request
GET api/company/{companyId}/adminsalary/manuallyblocked
Requirements
- User is logged in
- User is super admin
Returns the salary data for a specific company. Based on that company´s number.
Also includes employee type extra data
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/adminsalary/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firma_nr": 737,
"firma_navn": "BODENHOFFS BAGERI APS",
"bestilt": "20170929",
"bestilttid": 1917,
"firma_laast": 0,
"firma_overfoert": 0,
"firma_logonlocked": 0,
"firma_spaerret": 0,
"firma_papir": 0,
"firma_manspaerdato": null,
"arbejdertype_testkoersel": 0,
"arbejdertype_bestiltkl": 1144,
"arbejdertype_data": [
{
"arbejdertype_nr": 1,
"arbejdertype_dispdato": 0
}
]
}
]
HTTP Request
GET api/company/{companyId}/adminsalary/{otherCompanyId}
Requirements
- User is logged in
- User is super admin
Removes a manual block from a company, based on that company´s number
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/removeblock/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "PATCH",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/adminsalary/removeblock/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/removeblock/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers)
response.json()
HTTP Request
PATCH api/company/{companyId}/adminsalary/removeblock/{otherCompanyId}
Requirements
- User is logged in
- User is super admin
Removes a lock from the designated company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/unlock/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "PATCH",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/adminsalary/unlock/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/unlock/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers)
response.json()
HTTP Request
PATCH api/company/{companyId}/adminsalary/unlock/{unlockCompanyId}
Requirements
- User is logged in
- User is super admin
Puts a block on the designated company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/adminsalary/manualblock/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"initialer": "ALsJDiL.HS"
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/adminsalary/manualblock/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'initialer' => 'ALsJDiL.HS',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/adminsalary/manualblock/1'
payload = {
"initialer": "ALsJDiL.HS"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/adminsalary/manualblock/{otherCompanyId}
Requirements
- User is logged in
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
initialer |
string | required | Between: 0 and 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
Authenticate
Login
Example request:
const url = new URL(
"https://mit.proloen.dk/api/authenticate/login"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"login": "quod",
"password": "natus"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/authenticate/login',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'login' => 'quod',
'password' => 'natus',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/authenticate/login'
payload = {
"login": "quod",
"password": "natus"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"access": {
"superadmin": false,
"read": true,
"write": true,
"archive": true,
"salary": {
"read": true,
"write": true,
"order": {
"read": true,
"write": true
},
"approve": {
"read": true,
"write": true
}
}
},
"user": null,
"company": {
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"firma_adresse1": "NAVNVEJ1",
"firma_adresse2": "",
"firma_postnr": 2000,
"firma_by": "FREDERIKSBERG",
"firma_telefon": "12345678",
"firma_cvrnr": 21061883,
"firma_regnr": 1234,
"firma_kontonr": "12345678 ",
"firma_statistik": 5,
"firma_14dagsloen": 1,
"firma_maanedsloenbagud": 1,
"firma_maanedsloenforud": 0,
"firma_brance": 2,
"firma_automatisksats": 1,
"firma_laast": 0,
"firma_bemaerkning1": "0",
"firma_bemaerkning2": "0",
"firma_bemaerkning3": "0",
"firma_overfoert": 0,
"firma_logonlocked": "0",
"firma_logoncount": 0,
"firma_logontime": "20170904095226",
"firma_logonip": "194.239.23.202",
"firma_dabarsel": "1",
"firma_email": "[email protected]",
"firma_testkoersel": "1",
"firma_spaerret": "0",
"firma_accessInternet": "1",
"firma_accessPAS": "1",
"firma_fravaersstatistik": "1",
"firma_papir": "0",
"firma_visloentransafdnr": "1",
"firma_manuelskattekort": 0,
"firma_loentranspaaslettetarbejder": 0,
"firma_personligesatser": 0,
"firma_changed": 0,
"firma_changedoverfoert": 0,
"firma_dalouddannelsesbidrag": 1,
"firma_projektnr": "0",
"firma_projektkartotek": "0",
"firma_loenartsrelation": "1",
"firma_sundhedsordning": "0",
"firma_mokode": 0,
"firma_skattebetaling": 2,
"firma_loesarbejder": 0,
"firma_sidsteloenkoersel": 0,
"firma_manspaerdato": null,
"firma_mailkode": "Svend",
"firma_godkendantal": 0,
"firma_manglergodkendelse": 0,
"firma_anvenderkompetencefonde": 1,
"firma_demofirma": 0,
"firma_shopgoerelse": "SH OPTRÆDER SOM FERIEFRI OG OVERFØRES TIL FERIEORDNING HVERT KVARTAL",
"firma_loentranstekst": 0,
"firma_jatilalleansatte": 0,
"firma_kontoplanversion": 3,
"firma_ebokserhverv": 0,
"firma_alleloensedlerieboks": 0,
"firma_visloenartkode": 0,
"firma_sympa": 0,
"firma_ktbilagarbejder": 0
},
"require_code": false
}
Example response (200):
{
"access": {
"superadmin": false,
"read": true,
"write": true,
"archive": true,
"salary": {
"read": true,
"write": true,
"order": {
"read": true,
"write": true
},
"approve": {
"read": true,
"write": true
}
}
},
"user": {
"bruger_firma": "123",
"bruger_brugernavn": "123-user",
"bruger_navn": "en bruger",
"bruger_email": "[email protected]",
"bruger_mobil": "11223344"
},
"company": {
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"firma_adresse1": "NAVNVEJ1",
"firma_adresse2": "",
"firma_postnr": 2000,
"firma_by": "FREDERIKSBERG",
"firma_telefon": "12345678",
"firma_cvrnr": 21061883,
"firma_regnr": 1234,
"firma_kontonr": "12345678 ",
"firma_statistik": 5,
"firma_14dagsloen": 1,
"firma_maanedsloenbagud": 1,
"firma_maanedsloenforud": 0,
"firma_brance": 2,
"firma_automatisksats": 1,
"firma_laast": 0,
"firma_bemaerkning1": "0",
"firma_bemaerkning2": "0",
"firma_bemaerkning3": "0",
"firma_overfoert": 0,
"firma_logonlocked": "0",
"firma_logoncount": 0,
"firma_logontime": "20170904095226",
"firma_logonip": "194.239.23.202",
"firma_dabarsel": "1",
"firma_email": "[email protected]",
"firma_testkoersel": "1",
"firma_spaerret": "0",
"firma_accessInternet": "1",
"firma_accessPAS": "1",
"firma_fravaersstatistik": "1",
"firma_papir": "0",
"firma_visloentransafdnr": "1",
"firma_manuelskattekort": 0,
"firma_loentranspaaslettetarbejder": 0,
"firma_personligesatser": 0,
"firma_changed": 0,
"firma_changedoverfoert": 0,
"firma_dalouddannelsesbidrag": 1,
"firma_projektnr": "0",
"firma_projektkartotek": "0",
"firma_loenartsrelation": "1",
"firma_sundhedsordning": "0",
"firma_mokode": 0,
"firma_skattebetaling": 2,
"firma_loesarbejder": 0,
"firma_sidsteloenkoersel": 0,
"firma_manspaerdato": null,
"firma_mailkode": "Svend",
"firma_godkendantal": 0,
"firma_manglergodkendelse": 0,
"firma_anvenderkompetencefonde": 1,
"firma_demofirma": 0,
"firma_shopgoerelse": "SH OPTRÆDER SOM FERIEFRI OG OVERFØRES TIL FERIEORDNING HVERT KVARTAL",
"firma_loentranstekst": 0,
"firma_jatilalleansatte": 0,
"firma_kontoplanversion": 3,
"firma_ebokserhverv": 0,
"firma_alleloensedlerieboks": 0,
"firma_visloenartkode": 0,
"firma_sympa": 0,
"firma_ktbilagarbejder": 0
},
"require_code": false
}
HTTP Request
POST api/authenticate/login
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
login |
string | required | |
password |
string | required |
Logout
Example request:
const url = new URL(
"https://mit.proloen.dk/api/authenticate/logout"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/authenticate/logout',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/authenticate/logout'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/authenticate/logout
Access rights
Get access for the current logged in company or user
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/access"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/access',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/access'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"superadmin": false,
"read": true,
"write": true,
"archive": true,
"salary": {
"read": true,
"write": true,
"order": {
"read": true,
"write": true
},
"approve": {
"read": true,
"write": true
}
}
}
HTTP Request
GET api/company/{companyId}/access
Requirements
- User is logged in
Average salary (gennemsnitsløn)
get a list of employee average salaries.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/averagesalary"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/averagesalary',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/averagesalary'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/averagesalary
Requirements
- User is logged in
- User has access to company
- User has salary read
Get a single employee average salary.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/averagesalary/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/averagesalary/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/averagesalary/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/averagesalary/{averageSalaryId}
Requirements
- User is logged in
- User has access to company
- User has salary read
get a list of employee average salaries for company.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/averagesalary"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/averagesalary',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/averagesalary'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/averagesalary
Requirements
- User is logged in
- User has access to company
- User has salary read
Character Converter
Get character conventions list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/convertingtable"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/convertingtable',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/convertingtable'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"tegnkonvertering_id": 1,
"tegnkonvertering_fra": "ö",
"tegnkonvertering_til": "ø"
}
]
HTTP Request
GET api/company/{companyId}/convertingtable
Requirements
- User is logged in
- User is super admin
Company (Firma)
Get company list
If the company is 500 then pagingSize (integer) is required
The following parameters can be used to narrow the search
fromCompanyId
- Default: Search allsalaryOrdered
- Default: Don't filter on firma_laastlocked
- Default: Don't filter on firma_logonlockedblocked
- Default: Don't filter on firma_spaerretmanuallyBlocked
- Don't filter on firma_manspaerdato
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"fromCompanyId": 340771246,
"salaryOrdered": false,
"locked": true,
"blocked": true,
"manuallyBlocked": true
}
fetch(url, {
method: "GET",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'fromCompanyId' => 340771246,
'salaryOrdered' => false,
'locked' => true,
'blocked' => true,
'manuallyBlocked' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company'
payload = {
"fromCompanyId": 340771246,
"salaryOrdered": false,
"locked": true,
"blocked": true,
"manuallyBlocked": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"company": {
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"firma_adresse1": "NAVNVEJ1",
"firma_adresse2": "",
"firma_postnr": 2000,
"firma_by": "FREDERIKSBERG",
"firma_telefon": "12345678",
"firma_cvrnr": 21061883,
"firma_regnr": 1234,
"firma_kontonr": "12345678 ",
"firma_statistik": 5,
"firma_14dagsloen": 1,
"firma_maanedsloenbagud": 1,
"firma_maanedsloenforud": 0,
"firma_brance": 2,
"firma_automatisksats": 1,
"firma_laast": 0,
"firma_bemaerkning1": "0",
"firma_bemaerkning2": "0",
"firma_bemaerkning3": "0",
"firma_overfoert": 0,
"firma_logonlocked": "0",
"firma_logoncount": 0,
"firma_logontime": "20170904095226",
"firma_logonip": "194.239.23.202",
"firma_dabarsel": "1",
"firma_email": "[email protected]",
"firma_testkoersel": "1",
"firma_spaerret": "0",
"firma_accessInternet": "1",
"firma_accessPAS": "1",
"firma_fravaersstatistik": "1",
"firma_papir": "0",
"firma_visloentransafdnr": "1",
"firma_manuelskattekort": 0,
"firma_loentranspaaslettetarbejder": 0,
"firma_personligesatser": 0,
"firma_changed": 0,
"firma_changedoverfoert": 0,
"firma_dalouddannelsesbidrag": 1,
"firma_projektnr": "0",
"firma_projektkartotek": "0",
"firma_loenartsrelation": "1",
"firma_sundhedsordning": "0",
"firma_mokode": 0,
"firma_skattebetaling": 2,
"firma_loesarbejder": 0,
"firma_sidsteloenkoersel": 0,
"firma_manspaerdato": null,
"firma_mailkode": "Svend",
"firma_godkendantal": 0,
"firma_manglergodkendelse": 0,
"firma_anvenderkompetencefonde": 1,
"firma_demofirma": 0,
"firma_shopgoerelse": "SH OPTRÆDER SOM FERIEFRI OG OVERFØRES TIL FERIEORDNING HVERT KVARTAL",
"firma_loentranstekst": 0,
"firma_jatilalleansatte": 0,
"firma_kontoplanversion": 3,
"firma_ebokserhverv": 0,
"firma_alleloensedlerieboks": 0,
"firma_visloenartkode": 0,
"firma_sympa": 0,
"firma_ktbilagarbejder": 0,
"firma_profile": false,
"firma_kontrolsum": 1,
"arbejdertype_bestiltdato": "2017-09-29",
"arbejdertype_bestiltkl": 1144,
"firma_skattebetaling_tekst": "Fremrykket skat",
"firma_statistik_tekst": "DA - KONJUNKTUR + STRUKTUR"
},
"access": {
"superadmin": false,
"read": true,
"write": true,
"archive": true,
"salary": {
"read": true,
"write": true,
"order": {
"read": true,
"write": true
},
"approve": {
"read": true,
"write": true
}
}
}
}
]
HTTP Request
GET api/company
Requirements
- User is logged in
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
fromCompanyId |
integer | optional | Minimum: 1 |
salaryOrdered |
boolean | optional | |
locked |
boolean | optional | |
blocked |
boolean | optional | |
manuallyBlocked |
boolean | optional |
Get Single company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"company": {
"firma_nr": 123,
"firma_navn": "FIRMA NAVN",
"firma_adresse1": "NAVNVEJ1",
"firma_adresse2": "",
"firma_postnr": 2000,
"firma_by": "FREDERIKSBERG",
"firma_telefon": "12345678",
"firma_cvrnr": 21061883,
"firma_regnr": 1234,
"firma_kontonr": "12345678 ",
"firma_statistik": 5,
"firma_14dagsloen": 1,
"firma_maanedsloenbagud": 1,
"firma_maanedsloenforud": 0,
"firma_brance": 2,
"firma_automatisksats": 1,
"firma_laast": 0,
"firma_bemaerkning1": "0",
"firma_bemaerkning2": "0",
"firma_bemaerkning3": "0",
"firma_overfoert": 0,
"firma_logonlocked": "0",
"firma_logoncount": 0,
"firma_logontime": "20170904095226",
"firma_logonip": "194.239.23.202",
"firma_dabarsel": "1",
"firma_email": "[email protected]",
"firma_testkoersel": "1",
"firma_spaerret": "0",
"firma_accessInternet": "1",
"firma_accessPAS": "1",
"firma_fravaersstatistik": "1",
"firma_papir": "0",
"firma_visloentransafdnr": "1",
"firma_manuelskattekort": 0,
"firma_loentranspaaslettetarbejder": 0,
"firma_personligesatser": 0,
"firma_changed": 0,
"firma_changedoverfoert": 0,
"firma_dalouddannelsesbidrag": 1,
"firma_projektnr": "0",
"firma_projektkartotek": "0",
"firma_loenartsrelation": "1",
"firma_sundhedsordning": "0",
"firma_mokode": 0,
"firma_skattebetaling": 2,
"firma_loesarbejder": 0,
"firma_sidsteloenkoersel": 0,
"firma_manspaerdato": null,
"firma_mailkode": "Svend",
"firma_godkendantal": 0,
"firma_manglergodkendelse": 0,
"firma_anvenderkompetencefonde": 1,
"firma_demofirma": 0,
"firma_shopgoerelse": "SH OPTRÆDER SOM FERIEFRI OG OVERFØRES TIL FERIEORDNING HVERT KVARTAL",
"firma_loentranstekst": 0,
"firma_jatilalleansatte": 0,
"firma_kontoplanversion": 3,
"firma_ebokserhverv": 0,
"firma_alleloensedlerieboks": 0,
"firma_visloenartkode": 0,
"firma_sympa": 0,
"firma_ktbilagarbejder": 0,
"firma_profile": false,
"firma_kontrolsum": 1,
"arbejdertype_bestiltdato": "2017-09-29",
"arbejdertype_bestiltkl": 1144,
"firma_skattebetaling_tekst": "Fremrykket skat",
"firma_statistik_tekst": "DA - KONJUNKTUR + STRUKTUR"
},
"access": {
"superadmin": false,
"read": true,
"write": true,
"archive": true,
"salary": {
"read": true,
"write": true,
"order": {
"read": true,
"write": true
},
"approve": {
"read": true,
"write": true
}
}
},
"matrix": [
{
"firmamatrix_firma_nr": 123,
"firmamatrix_matrix_feltnr": 1,
"field_description": {
"matrix_feltbeskrivelse": "MedarbejderNr",
"matrix_isdecimal": 1,
"matrix_feltsql": "arbejder_nr",
"matrix_deaktiveret": 0,
"matrix_eksempel": "1234"
}
}
]
}
HTTP Request
GET api/company/{companyId}
Requirements
- User is logged in
- User has access to company
Update company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firma_navn": "ALsJDiL.HS",
"firma_adresse1": "Knf=Qr{4hg",
"firma_adresse2": "\/OzZhoEPU",
"firma_postnr": 3243,
"firma_by": "7_rEE&hU3D",
"firma_telefon": "VRhrg2tqBB",
"firma_dabarsel": 0,
"firma_email": "SL:4ylppo=",
"firma_mailkode": "=zt)=:4)=5P9e?)|^=&V",
"firma_kontoplanversion": 89.92,
"firma_ebokserhverv": 0,
"firma_alleloensedlerieboks": 1,
"firma_leveringsnavn": "KVayMdwe'_",
"firma_leveringsadresse1": "'c8dxMWdgs",
"firma_leveringsadresse2": "EGfvv=X'_v",
"firma_leveringspostnr": 4160,
"firma_leveringsby": ":j1xsKEi_I",
"firma_manspaerdato": "7738265311111",
"firma_feriekode": 0,
"firma_kontrolsum": 5342694
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firma_navn' => 'ALsJDiL.HS',
'firma_adresse1' => 'Knf=Qr{4hg',
'firma_adresse2' => '/OzZhoEPU',
'firma_postnr' => 3243,
'firma_by' => '7_rEE&hU3D',
'firma_telefon' => 'VRhrg2tqBB',
'firma_dabarsel' => 0,
'firma_email' => 'SL:4ylppo=',
'firma_mailkode' => '=zt)=:4)=5P9e?)|^=&V',
'firma_kontoplanversion' => 89.92,
'firma_ebokserhverv' => 0,
'firma_alleloensedlerieboks' => 1,
'firma_leveringsnavn' => 'KVayMdwe\'_',
'firma_leveringsadresse1' => '\'c8dxMWdgs',
'firma_leveringsadresse2' => 'EGfvv=X\'_v',
'firma_leveringspostnr' => 4160,
'firma_leveringsby' => ':j1xsKEi_I',
'firma_manspaerdato' => '7738265311111',
'firma_feriekode' => 0,
'firma_kontrolsum' => 5342694,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1'
payload = {
"firma_navn": "ALsJDiL.HS",
"firma_adresse1": "Knf=Qr{4hg",
"firma_adresse2": "\/OzZhoEPU",
"firma_postnr": 3243,
"firma_by": "7_rEE&hU3D",
"firma_telefon": "VRhrg2tqBB",
"firma_dabarsel": 0,
"firma_email": "SL:4ylppo=",
"firma_mailkode": "=zt)=:4)=5P9e?)|^=&V",
"firma_kontoplanversion": 89.92,
"firma_ebokserhverv": 0,
"firma_alleloensedlerieboks": 1,
"firma_leveringsnavn": "KVayMdwe'_",
"firma_leveringsadresse1": "'c8dxMWdgs",
"firma_leveringsadresse2": "EGfvv=X'_v",
"firma_leveringspostnr": 4160,
"firma_leveringsby": ":j1xsKEi_I",
"firma_manspaerdato": "7738265311111",
"firma_feriekode": 0,
"firma_kontrolsum": 5342694
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}
Requirements
- User is logged in
- User has access to company
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firma_navn |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_adresse1 |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_adresse2 |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_postnr |
integer | optional | Between: 0 and 9999 |
firma_by |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_telefon |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_dabarsel |
string | optional | Between: 0 and 1 |
firma_email |
string | optional | Between: 0 and 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_mailkode |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_kontoplanversion |
numeric | optional | Between: 0 and 99 |
firma_ebokserhverv |
integer | optional | 0 or 1 |
firma_alleloensedlerieboks |
integer | optional | 0 or 1 |
firma_leveringsnavn |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_leveringsadresse1 |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_leveringsadresse2 |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_leveringspostnr |
integer | optional | Between: 0 and 9999 |
firma_leveringsby |
string | optional | Between: 0 and 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firma_manspaerdato |
numeric | optional | Must have an exact length of 14 |
firma_feriekode |
integer | optional | 0 or 1 |
firma_kontrolsum |
integer | optional | Valid kontrolsum kontrolsum_nr |
Reset MO code (Super admin only)
Sets the MO code to zero on company and all employees
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/mocode/reset"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "PATCH",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/mocode/reset',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/mocode/reset'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers)
response.json()
HTTP Request
PATCH api/company/{companyId}/mocode/reset
Requirements
- User is logged in
- User has access to company
- User is super admin
Company matrix version (Firma matrix version)
Get company matrix version list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/companymatrixversion"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/companymatrixversion',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/companymatrixversion'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firmamatrixversion_firma_nr": 1234,
"firmamatrixversion_nr": 1,
"firmamatrixversion_navn": " standard",
"firmamatrixversion_aktiv": true,
"firmamatrix_matrix": [
{
"matrix_feltnr": "1",
"matrix_feltbeskrivelse": "medarbejder nummer",
"matrix_eksempel": "123"
}
]
}
]
HTTP Request
GET api/company/{companyId}/companymatrixversion
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
get single company matrix version.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/companymatrixversion/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/companymatrixversion/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/companymatrixversion/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"firmamatrixversion_firma_nr": 1234,
"firmamatrixversion_nr": 1,
"firmamatrixversion_navn": " standard",
"firmamatrixversion_aktiv": true,
"firmamatrix_matrix": [
{
"matrix_feltnr": "1",
"matrix_feltbeskrivelse": "medarbejder nummer",
"matrix_eksempel": "123"
}
]
}
HTTP Request
GET api/company/{companyId}/companymatrixversion/{companyMatrixVersionId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Crate company matrix version.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/companymatrixversion"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firmamatrixversion_aktiv": true,
"firmamatrixversion_navn": "3Dx'iBUmFrJ=AX\/gPG&phQjz5OK5ILw=0LmnJURgqg2tqAAe3N",
"firmamatrix_matrix": [
4727039
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/companymatrixversion',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firmamatrixversion_aktiv' => true,
'firmamatrixversion_navn' => '3Dx\'iBUmFrJ=AX/gPG&phQjz5OK5ILw=0LmnJURgqg2tqAAe3N',
'firmamatrix_matrix' => [
4727039,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/companymatrixversion'
payload = {
"firmamatrixversion_aktiv": true,
"firmamatrixversion_navn": "3Dx'iBUmFrJ=AX\/gPG&phQjz5OK5ILw=0LmnJURgqg2tqAAe3N",
"firmamatrix_matrix": [
4727039
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"firmamatrixversion_firma_nr": 1234,
"firmamatrixversion_nr": 1,
"firmamatrixversion_navn": " standard",
"firmamatrixversion_aktiv": true,
"firmamatrix_matrix": [
{
"matrix_feltnr": "1",
"matrix_feltbeskrivelse": "medarbejder nummer",
"matrix_eksempel": "123"
}
]
}
HTTP Request
POST api/company/{companyId}/companymatrixversion
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firmamatrixversion_aktiv |
boolean | required | |
firmamatrixversion_navn |
string | required | Maximum: 50 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firmamatrix_matrix |
array | optional | |
firmamatrix_matrix.* |
integer | optional |
Update single company matrix version.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/companymatrixversion/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firmamatrixversion_aktiv": true,
"firmamatrixversion_navn": "ALsJDiL.HS",
"firmamatrix_matrix": [
4996
]
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/companymatrixversion/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firmamatrixversion_aktiv' => true,
'firmamatrixversion_navn' => 'ALsJDiL.HS',
'firmamatrix_matrix' => [
4996,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/companymatrixversion/1'
payload = {
"firmamatrixversion_aktiv": true,
"firmamatrixversion_navn": "ALsJDiL.HS",
"firmamatrix_matrix": [
4996
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/companymatrixversion/{companyMatrixVersionId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firmamatrixversion_aktiv |
boolean | optional | |
firmamatrixversion_navn |
string | optional | Can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firmamatrix_matrix |
array | optional | |
firmamatrix_matrix.* |
integer | optional |
delete a single company matrix version.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/companymatrixversion/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/companymatrixversion/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/companymatrixversion/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/companymatrixversion/{companyMatrixVersionId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Deadline (Terminer)
Current deadlines
Get the list of all deadlines for a given company ID
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salary/deadlines"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salary/deadlines',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salary/deadlines'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loentermin_firma": 123,
"loentermin_arbejdertype": 1,
"loentermin_loenperiode": "201741",
"loentermin_periodetekst": "2017092520171008",
"loentermin_dispdato": "2017-10-12",
"loentermin_eskattekortdato": "2017-10-12",
"afldato": "2017-10-10"
}
]
HTTP Request
GET api/company/{companyId}/salary/deadlines
Requirements
- User is logged in
- User has access to company
Next deadline
Get the next deadline for a given company ID and employee type ID
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salary/employeetype/1/deadline"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salary/employeetype/1/deadline',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salary/employeetype/1/deadline'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"NormalDispDato": "2017-10-31",
"NormalAfleveresDato": "2017-10-25",
"NormalAfleveresKl": 2330,
"TidligstNormalDispDato": "2017-10-09",
"TidligstNormalDage": 4,
"TidligstNormalKl": 2330,
"KortfristDispDato": "2017-10-31",
"KortfristAfleveresDato": "2017-10-29",
"KortfristAfleveresKl": 1930,
"KortfristGebyr": 110,
"TidligstKortfristDispDato": "2017-10-05",
"TidligstKortfristDage": 2,
"TidligstKortfristKl": 1930
}
HTTP Request
GET api/company/{companyId}/salary/employeetype/{employeeTypeId}/deadline
Requirements
- User is logged in
- User has access to company
Department (Afdelinger)
Get department List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/department"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/department',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/department'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"afdeling_firma": 123,
"afdeling_nr": 1,
"afdeling_navn": "AFDELING"
}
]
HTTP Request
GET api/company/{companyId}/department
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single department
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/department/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/department/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/department/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"afdeling_firma": 123,
"afdeling_nr": 1,
"afdeling_navn": "AFDELING"
}
HTTP Request
GET api/company/{companyId}/department/{departmentId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create department
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/department"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"afdeling_nr": 15869,
"afdeling_navn": "DiMUEWbpvB"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/department',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'afdeling_nr' => 15869,
'afdeling_navn' => 'DiMUEWbpvB',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/department'
payload = {
"afdeling_nr": 15869,
"afdeling_navn": "DiMUEWbpvB"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"afdeling_firma": 123,
"afdeling_nr": 1,
"afdeling_navn": "AFDELING"
}
HTTP Request
POST api/company/{companyId}/department
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
afdeling_nr |
integer | required | Between: 1 and 99999 |
afdeling_navn |
string | required | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
Update department
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/department/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"afdeling_nr": 15869,
"afdeling_navn": "DiMUEWbpvB"
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/department/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'afdeling_nr' => 15869,
'afdeling_navn' => 'DiMUEWbpvB',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/department/1'
payload = {
"afdeling_nr": 15869,
"afdeling_navn": "DiMUEWbpvB"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/department/{departmentId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
afdeling_nr |
integer | optional | Between: 1 and 99999 |
afdeling_navn |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
Delete department
To delete a department, there must be no reference between the department and any user or profile
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/department/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/department/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/department/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/department/{departmentId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Document description
Return list of document descriptions
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentdescription"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/documentdescription',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentdescription'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"dokukode_nr": 8651,
"dokukode_tekst": "Bruges hvis medarbejderen skal have udbetalt feriefri fra sh-saldoen."
}
]
HTTP Request
GET api/company/{companyId}/documentdescription
Requirements
- User is logged in
- User has access to company
Return single document description
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentdescription/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/documentdescription/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentdescription/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"dokukode_nr": 8651,
"dokukode_tekst": "Bruges hvis medarbejderen skal have udbetalt feriefri fra sh-saldoen."
}
HTTP Request
GET api/company/{companyId}/documentdescription/{documentDescriptionId}
Requirements
- User is logged in
- User has access to company
Store a document description
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentdescription"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"dokukode_nr": 15869,
"dokukode_tekst": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ..."
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/documentdescription',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'dokukode_nr' => 15869,
'dokukode_tekst' => 'Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentdescription'
payload = {
"dokukode_nr": 15869,
"dokukode_tekst": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ..."
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"dokukode_nr": 1,
"dokukode_tekst": "tekst 1"
}
HTTP Request
POST api/company/{companyId}/documentdescription
Requirements
- User is logged in
- User has access to company
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
dokukode_nr |
integer | required | Between: 1 and 99999 |
dokukode_tekst |
string | required | Maximum: 2000 |
Update document description
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentdescription/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"dokukode_tekst": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ..."
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/documentdescription/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'dokukode_tekst' => 'Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentdescription/1'
payload = {
"dokukode_tekst": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ..."
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/documentdescription/{documentDescriptionId}
Requirements
- User is logged in
- User has access to company
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
dokukode_tekst |
string | required | Maximum: 2000 |
Delete document description
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentdescription/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/documentdescription/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentdescription/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/documentdescription/{documentDescriptionId}
Requirements
- User is logged in
- User has access to company
- User is super admin
Document folder
Get document list (Company)
Returns a list of all documents uploaded by company or users belonging to company, where documents is not marked as private
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentfolder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/documentfolder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentfolder'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"dokumentmappe_id": 123,
"dokumentmappe_original_navn": "loentransaktioner.csv",
"dokumentmappe_bytes": 123456,
"dokumentmappe_type": "cvs",
"dokumentmappe_mime_type": "text\/csv",
"dokumentmappe_uploadet_af": 123,
"dokumentmappe_firma_nr": 123,
"dokumentmappe_beskyttet": true,
"dokumentmappe_privat": false,
"dokumentmappe_oprettet": "2018-06-01 12:34:56"
}
]
HTTP Request
GET api/company/{companyId}/documentfolder
Requirements
- User is logged in
- User has access to company
Get document (Company)
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentfolder/document/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/documentfolder/document/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentfolder/document/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/documentfolder/document/{documentId}
Requirements
- User is logged in
- User has access to company
- Document is not marked as private
Store document company
Note, documents uploaded by Company is never private.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentfolder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"beskyttet": true
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/documentfolder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'beskyttet' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentfolder'
payload = {
"beskyttet": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"dokumentmappe_id": 123,
"dokumentmappe_original_navn": "loentransaktioner.csv",
"dokumentmappe_bytes": 123456,
"dokumentmappe_type": "cvs",
"dokumentmappe_mime_type": "text\/csv",
"dokumentmappe_uploadet_af": 123,
"dokumentmappe_firma_nr": 123,
"dokumentmappe_beskyttet": false,
"dokumentmappe_privat": false,
"dokumentmappe_oprettet": "2018-06-01 12:34:56"
}
HTTP Request
POST api/company/{companyId}/documentfolder
Requirements
- User is logged in
- User has access to company
- beskyttet can only be set by super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
dokument |
file | required | Must be a file upload |
beskyttet |
boolean | optional |
Update document settings (Company)
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentfolder/document/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"beskyttet": true,
"privat": true
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/documentfolder/document/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'beskyttet' => true,
'privat' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentfolder/document/1'
payload = {
"beskyttet": true,
"privat": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/documentfolder/document/{documentId}
Requirements
- User is logged in
- User has access to companyId
- Document is not private
- Document is uploaded by companyId or user belonging to companyId
- beskyttet can only be set by super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
beskyttet |
boolean | optional | |
privat |
boolean | optional |
Delete document (Company)
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/documentfolder/document/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/documentfolder/document/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/documentfolder/document/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/documentfolder/document/{documentId}
Requirements
- User is logged in
- User has access to companyId
- Document is not protected
- Document is not private
Get document list (User)
Returns a list of all documents uploaded by userId and marked as private
Example request:
const url = new URL(
"https://mit.proloen.dk/api/user/1/documentfolder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/user/1/documentfolder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/user/1/documentfolder'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"dokumentmappe_id": 123,
"dokumentmappe_original_navn": "loentransaktioner.csv",
"dokumentmappe_bytes": 123456,
"dokumentmappe_type": "cvs",
"dokumentmappe_mime_type": "text\/csv",
"dokumentmappe_uploadet_af": "123-xyz",
"dokumentmappe_firma_nr": 123,
"dokumentmappe_beskyttet": false,
"dokumentmappe_privat": true,
"dokumentmappe_oprettet": "2018-06-01 12:34:56"
}
]
HTTP Request
GET api/user/{userId}/documentfolder
Requirements
- User is logged in
- User has access to userId
Get document (User)
Example request:
const url = new URL(
"https://mit.proloen.dk/api/user/1/documentfolder/document/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/user/1/documentfolder/document/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/user/1/documentfolder/document/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/user/{userId}/documentfolder/document/{documentId}
Requirements
- User is logged in
- User has access to userId
- Document is private
- Document is uploaded by userId
Store document (User)
Example request:
const url = new URL(
"https://mit.proloen.dk/api/user/1/documentfolder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"privat": true,
"beskyttet": true
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/user/1/documentfolder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'privat' => true,
'beskyttet' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/user/1/documentfolder'
payload = {
"privat": true,
"beskyttet": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"dokumentmappe_id": 123,
"dokumentmappe_original_navn": "loentransaktioner.csv",
"dokumentmappe_bytes": 123456,
"dokumentmappe_type": "cvs",
"dokumentmappe_mime_type": "text\/csv",
"dokumentmappe_beskyttet": true,
"dokumentmappe_oprettet": "2018-06-01 12:34:56"
}
HTTP Request
POST api/user/{userId}/documentfolder
Requirements
- User is logged in
- User has access to user
- beskyttet can only be set by super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
dokument |
file | required | Must be a file upload |
privat |
boolean | required | |
beskyttet |
boolean | optional |
Update document settings (User)
Note, if private is not given as input, then private is by default set to true
Example request:
const url = new URL(
"https://mit.proloen.dk/api/user/1/documentfolder/document/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"beskyttet": true,
"privat": true
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/user/1/documentfolder/document/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'beskyttet' => true,
'privat' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/user/1/documentfolder/document/1'
payload = {
"beskyttet": true,
"privat": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/user/{userId}/documentfolder/document/{documentId}
Requirements
- User is logged in
- User has access to userId
- Document is marked as private
- Document is uploaded by userId
- beskyttet can only be set by super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
beskyttet |
boolean | optional | |
privat |
boolean | optional |
Delete document (User)
Example request:
const url = new URL(
"https://mit.proloen.dk/api/user/1/documentfolder/document/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/user/1/documentfolder/document/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/user/1/documentfolder/document/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/user/{userId}/documentfolder/document/{documentId}
Requirements
- User is logged in
- User has access to userId
- Document is uploaded by userId
- Document is not protected
Employee (Medarbejder)
Get employee List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 0,
"ArbejderLoenart": [
{
"arbejderloenart_firma": 123,
"arbejderloenart_arbejder": 1234,
"arbejderloenart_loenart": 953,
"arbejderloenart_sats": 2
}
],
"arbejderafdeling": true,
"loentransaktioner_fejl": true
}
]
HTTP Request
GET api/company/{companyId}/employee
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get employee list, CSV
Get employees as csv based on the selected matrix fields
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/csv"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"matrix_felter": "quod",
"arbejder_slettet": true
}
fetch(url, {
method: "GET",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'matrix_felter' => 'quod',
'arbejder_slettet' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/csv'
payload = {
"matrix_felter": "quod",
"arbejder_slettet": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers, json=payload)
response.json()
HTTP Request
GET api/company/{companyId}/employee/csv
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
matrix_felter |
string | required | |
arbejder_slettet |
boolean | optional |
Get employee list, deleted
Get deleted employees list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/deleted"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/deleted',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/deleted'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "1",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 0,
"ArbejderLoenart": [
{
"arbejderloenart_firma": 123,
"arbejderloenart_arbejder": 1234,
"arbejderloenart_loenart": 953,
"arbejderloenart_sats": 2
}
],
"arbejderafdeling": true,
"loentransaktioner_fejl": true
}
]
HTTP Request
GET api/company/{companyId}/employee/deleted
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get employee list, draft
Get draft employees list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/drafts"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/drafts',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/drafts'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 1,
"ArbejderLoenart": [
{
"arbejderloenart_firma": 123,
"arbejderloenart_arbejder": 1234,
"arbejderloenart_loenart": 953,
"arbejderloenart_sats": 2
}
],
"arbejderafdeling": true,
"loentransaktioner_fejl": true
}
]
HTTP Request
GET api/company/{companyId}/employee/drafts
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get employees list, department marking
Get employees list with marking to show if employee has departments
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/withdepartmentmarking"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/withdepartmentmarking',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/withdepartmentmarking'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejder_nr": 1234,
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_afdelinger": false
}
]
HTTP Request
GET api/company/{companyId}/employee/withdepartmentmarking
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get employee
Get single employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 0,
"ArbejderLoenart": [
{
"arbejderloenart_firma": 123,
"arbejderloenart_arbejder": 1234,
"arbejderloenart_loenart": 953,
"arbejderloenart_sats": 2
}
],
"loentransaktioner_fejl": true,
"arbejderafdeling": false,
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 2,
"opgoerelsesperiodebestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_til_dato": "2019-10-11",
"opgoerelsesperiodebestilt_bestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_bestilt_til_dato": 0,
"opgoerelsesperiodemedarbejder_valg": 12
}
HTTP Request
GET api/company/{companyId}/employee/{employeeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get employee, as PDF
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/pdf"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/pdf',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/pdf'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/pdf
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_nr": 15868,
"arbejder_arbejdertype": 2,
"arbejder_profil": "HDhLYDSa",
"arbejder_fornavn": "V'0Pi\/Ry,ioHO9G fp'T=",
"arbejder_efternavn": "KWRhqh2urBAe3O9Tzha 4",
"arbejder_adresse1": "vTrEVo1%NBwDGfvw=X'&v,vwUmF'%Y",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 93.18773,
"arbejder_bankkontonr": "qOm9VY3OcZ",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "ir",
"arbejder_loen": 1,
"arbejder_landekode": "8J",
"arbejder_andetarbejdssted": "T",
"arbejder_personalegruppe": "E",
"arbejder_email": "lntn-ly4FYd&9Ir:E5LeamoAOmOA77un,aqfu'1TAT'3ZIwtSetRX'rTp3n5jjHdrJ8=",
"arbejder_dabarsel": 0,
"arbejder_frivilligtraekprocent": 14,
"arbejder_beskaeftigelseskode": 9633524,
"arbejder_produktionsenhedsnr": "LN%mPwj8-N",
"arbejder_groenlandskkommune": 1893049,
"arbejder_skattekort": "m",
"arbejder_dalouddannelsesbidrag": 823285991,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 551,
"arbejder_sundhedsordning": 3,
"arbejder_mokode": 1,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "n",
"arbejder_mailkode": "E%qNf_0pk=XK urnCRq",
"arbejder_fhkode": "JIa",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 94648,
"arbejder_samarbuddannelsesfond": 25774596,
"arbejder_ansaettelsesforhold": "SN",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7,
"opgoerelsesperiodebestilt_fra_dato": "2021-01-13",
"opgoerelsesperiodebestilt_til_dato": "2021-01-13"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/employee',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_nr' => 15868,
'arbejder_arbejdertype' => 2,
'arbejder_profil' => 'HDhLYDSa',
'arbejder_fornavn' => 'V\'0Pi/Ry,ioHO9G fp\'T=',
'arbejder_efternavn' => 'KWRhqh2urBAe3O9Tzha 4',
'arbejder_adresse1' => 'vTrEVo1%NBwDGfvw=X\'&v,vwUmF\'%Y',
'arbejder_adresse2' => '[email protected],zFLoZB',
'arbejder_postnr' => 95411677,
'arbejder_by' => 'ra6s5bZ83B:8bRTACEDiQE',
'arbejder_cprnr' => '/Kns2k8,Wq',
'arbejder_ansatdato' => '2021-01-13',
'arbejder_rejstdato' => '2021-01-13',
'arbejder_afdeling' => 7,
'arbejder_skattefrd1dag' => 9016287,
'arbejder_skattefrdperioden' => 3,
'arbejder_traekprocent' => 8,
'arbejder_restfrikort' => 119,
'arbejder_bankregnr' => 93.18773,
'arbejder_bankkontonr' => 'qOm9VY3OcZ',
'arbejder_atpkode' => 0,
'arbejder_feriekode' => 5,
'arbejder_shkode' => 2,
'arbejder_ampension' => 1029552,
'arbejder_amstartdato' => '2021-01-13',
'arbejder_ansaettelsestype' => 1,
'arbejder_ansaettelsevilkaer' => 6,
'arbejder_jobstatus' => 5,
'arbejder_afloenningsform' => 'ir',
'arbejder_loen' => 1,
'arbejder_landekode' => '8J',
'arbejder_andetarbejdssted' => 'T',
'arbejder_personalegruppe' => 'E',
'arbejder_email' => 'lntn-ly4FYd&9Ir:E5LeamoAOmOA77un,aqfu\'1TAT\'3ZIwtSetRX\'rTp3n5jjHdrJ8=',
'arbejder_dabarsel' => 0,
'arbejder_frivilligtraekprocent' => 14,
'arbejder_beskaeftigelseskode' => 9633524,
'arbejder_produktionsenhedsnr' => 'LN%mPwj8-N',
'arbejder_groenlandskkommune' => 1893049,
'arbejder_skattekort' => 'm',
'arbejder_dalouddannelsesbidrag' => 823285991,
'arbejder_udlaertdato' => '2021-01-13',
'arbejder_arbejdsfunktion2' => 551,
'arbejder_sundhedsordning' => 3,
'arbejder_mokode' => 1,
'arbejder_eboks' => 'N',
'arbejder_loesarbejder' => 'n',
'arbejder_mailkode' => 'E%qNf_0pk=XK urnCRq',
'arbejder_fhkode' => 'JIa',
'arbejder_tilladnegativloen' => 1,
'arbejder_kompetencefond' => 94648,
'arbejder_samarbuddannelsesfond' => 25774596,
'arbejder_ansaettelsesforhold' => 'SN',
'arbejder_anciennitetsdato' => '2021-01-13',
'arbejder_tekst1' => 'f \'hB3dL9QJ7n,RO49_na2&zx',
'arbejder_tekst2' => '[email protected]=XoY:[email protected]',
'arbejder_tekst3' => 'HXlTy,Vm-N-:b 0nl|[email protected]',
'arbejder_tekst4' => 'TbBfbt2c73pvj44Uj lQ{Bm0E',
'arbejder_tekst5' => 'haNoPK}PR\'1ivek38L1Cu4 mT',
'arbejder_overenskomsttekst' => 'U8:,jYGtsr,@aoN8e7d9BpGAD',
'opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id' => 627633731,
'opgoerelsesperiodemedarbejder_valg' => 7,
'opgoerelsesperiodebestilt_fra_dato' => '2021-01-13',
'opgoerelsesperiodebestilt_til_dato' => '2021-01-13',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee'
payload = {
"arbejder_nr": 15868,
"arbejder_arbejdertype": 2,
"arbejder_profil": "HDhLYDSa",
"arbejder_fornavn": "V'0Pi\/Ry,ioHO9G fp'T=",
"arbejder_efternavn": "KWRhqh2urBAe3O9Tzha 4",
"arbejder_adresse1": "vTrEVo1%NBwDGfvw=X'&v,vwUmF'%Y",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 93.18773,
"arbejder_bankkontonr": "qOm9VY3OcZ",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "ir",
"arbejder_loen": 1,
"arbejder_landekode": "8J",
"arbejder_andetarbejdssted": "T",
"arbejder_personalegruppe": "E",
"arbejder_email": "lntn-ly4FYd&9Ir:E5LeamoAOmOA77un,aqfu'1TAT'3ZIwtSetRX'rTp3n5jjHdrJ8=",
"arbejder_dabarsel": 0,
"arbejder_frivilligtraekprocent": 14,
"arbejder_beskaeftigelseskode": 9633524,
"arbejder_produktionsenhedsnr": "LN%mPwj8-N",
"arbejder_groenlandskkommune": 1893049,
"arbejder_skattekort": "m",
"arbejder_dalouddannelsesbidrag": 823285991,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 551,
"arbejder_sundhedsordning": 3,
"arbejder_mokode": 1,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "n",
"arbejder_mailkode": "E%qNf_0pk=XK urnCRq",
"arbejder_fhkode": "JIa",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 94648,
"arbejder_samarbuddannelsesfond": 25774596,
"arbejder_ansaettelsesforhold": "SN",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7,
"opgoerelsesperiodebestilt_fra_dato": "2021-01-13",
"opgoerelsesperiodebestilt_til_dato": "2021-01-13"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 0,
"arbejderafdeling": false,
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 2,
"opgoerelsesperiodebestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_til_dato": "2019-10-11",
"opgoerelsesperiodebestilt_bestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_bestilt_til_dato": 0,
"opgoerelsesperiodemedarbejder_valg": 12
}
]
HTTP Request
POST api/company/{companyId}/employee
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these. If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejder_nr |
integer | required | Between: 0 and 99998 |
arbejder_arbejdertype |
integer | required | Between: 0 and 4 |
arbejder_profil |
string | optional | Maximum: 8 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fornavn |
string | required | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_efternavn |
string | required | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse1 |
string | required | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse2 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_postnr |
integer | required | Must have a length between 1 and 4 |
arbejder_by |
string | required | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_cprnr |
string | required | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_ansatdato |
date | required | Date format: Y-m-d |
arbejder_rejstdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_afdeling |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrd1dag |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrdperioden |
integer | optional | Must have a length between 1 and 5 |
arbejder_traekprocent |
integer | optional | Must have a length between 1 and 3 |
arbejder_restfrikort |
integer | optional | Must have a length between 1 and 7 |
arbejder_bankregnr |
numeric | required | Must have a length between 1 and 4 |
arbejder_bankkontonr |
string | required | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_atpkode |
integer | required | 0 , 1 , 2 , 4 , 5 or 6 |
arbejder_feriekode |
integer | required | Must have an exact length of 1 |
arbejder_shkode |
integer | optional | Must have an exact length of 1 |
arbejder_ampension |
integer | optional | Must have a length between 1 and 4 |
arbejder_amstartdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_ansaettelsestype |
integer | optional | Must have an exact length of 1 |
arbejder_ansaettelsevilkaer |
integer | optional | Must have an exact length of 1 |
arbejder_jobstatus |
integer | optional | Must have an exact length of 1 |
arbejder_afloenningsform |
string | optional | Maximum: 2 |
arbejder_loen |
integer | optional | Must have an exact length of 1 and 0 or 1 |
arbejder_landekode |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_andetarbejdssted |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_personalegruppe |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_email |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_dabarsel |
integer | optional | Between: 0 and 9 |
arbejder_frivilligtraekprocent |
integer | optional | Between: 0 and 20 |
arbejder_beskaeftigelseskode |
integer | optional | Must have a length between 1 and 2 |
arbejder_produktionsenhedsnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_groenlandskkommune |
integer | optional | Must have a length between 1 and 3 |
arbejder_skattekort |
string | required | H , B , M , h , b or m |
arbejder_dalouddannelsesbidrag |
integer | optional | Must have a length between 1 and 2 |
arbejder_udlaertdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_arbejdsfunktion2 |
integer | optional | Must have a length between 1 and 6 |
arbejder_sundhedsordning |
integer | optional | Must have a length between 1 and 2 |
arbejder_mokode |
integer | optional | Must have a length between 1 and 5 |
arbejder_eboks |
string | optional | Maximum: 1 and J , N , M , P , j , n , m or p |
arbejder_loesarbejder |
string | optional | Maximum: 1 and J , N , j or n |
arbejder_mailkode |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fhkode |
string | optional | Maximum: 3 and can only contain A-Å 0-9 |
arbejder_tilladnegativloen |
integer | optional | Between: 0 and 1 |
arbejder_kompetencefond |
integer | optional | Must have a length between 1 and 5 |
arbejder_samarbuddannelsesfond |
integer | optional | Must have a length between 1 and 5 |
arbejder_ansaettelsesforhold |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_anciennitetsdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_tekst1 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst2 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst3 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst4 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst5 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_overenskomsttekst |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id |
integer | optional | Valid opgoerelsesperiodetype opgoerelsesperiodetype_id |
opgoerelsesperiodemedarbejder_valg |
integer | optional | Minimum: 1 and maximum: 31 |
opgoerelsesperiodebestilt_fra_dato |
date | optional | Date format: Y-m-d or 0 |
opgoerelsesperiodebestilt_til_dato |
date | optional | Date format: Y-m-d or 0 |
Create employee, draft
Create draft of employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/draft"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_nr": 15868,
"arbejder_profil": "=szKsLHi",
"arbejder_fornavn": "8BnQBR40Qi\/Qz,hpF Q?I ",
"arbejder_efternavn": "0NnoLYQhsh2uqABf3N9WA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "%Knt2k8XXr",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 6772675,
"arbejder_skattefrd1dag": 9409836,
"arbejder_skattefrdperioden": 27,
"arbejder_traekprocent": 24355939,
"arbejder_restfrikort": 51,
"arbejder_bankregnr": 176,
"arbejder_bankkontonr": "rOmaWY3Pc,",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "Rh",
"arbejder_loen": 0,
"arbejder_landekode": "em",
"arbejder_andetarbejdssted": "F",
"arbejder_personalegruppe": "E",
"arbejder_email": "-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY\/3cLyvSev%S_\/\/tWr3m5kkHetM9=Kup5",
"arbejder_dabarsel": 2,
"arbejder_frivilligtraekprocent": 9,
"arbejder_beskaeftigelseskode": 4,
"arbejder_produktionsenhedsnr": "LSe,=:.0hG",
"arbejder_groenlandskkommune": 1,
"arbejder_skattekort": "M",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 8,
"arbejder_sundhedsordning": 533230,
"arbejder_mokode": 9022,
"arbejder_eboks": "J",
"arbejder_loesarbejder": "J",
"arbejder_mailkode": "K vroCTrAgfYD83UVcS",
"arbejder_fhkode": "JJp",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 25743343,
"arbejder_samarbuddannelsesfond": 137753,
"arbejder_ansaettelsesforhold": "35",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/employee/draft',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_nr' => 15868,
'arbejder_profil' => '=szKsLHi',
'arbejder_fornavn' => '8BnQBR40Qi/Qz,hpF Q?I ',
'arbejder_efternavn' => '0NnoLYQhsh2uqABf3N9WA',
'arbejder_adresse1' => '@!e\'[email protected] 58IRTKqGiZyj',
'arbejder_adresse2' => '[email protected],zFLoZB',
'arbejder_postnr' => 95411677,
'arbejder_by' => 'ra6s5bZ83B:8bRTACEDiQE',
'arbejder_cprnr' => '%Knt2k8XXr',
'arbejder_ansatdato' => '2021-01-13',
'arbejder_rejstdato' => '2021-01-13',
'arbejder_afdeling' => 6772675,
'arbejder_skattefrd1dag' => 9409836,
'arbejder_skattefrdperioden' => 27,
'arbejder_traekprocent' => 24355939,
'arbejder_restfrikort' => 51,
'arbejder_bankregnr' => 176,
'arbejder_bankkontonr' => 'rOmaWY3Pc,',
'arbejder_atpkode' => 0,
'arbejder_feriekode' => 5,
'arbejder_shkode' => 2,
'arbejder_ampension' => 1029552,
'arbejder_amstartdato' => '2021-01-13',
'arbejder_ansaettelsestype' => 1,
'arbejder_ansaettelsevilkaer' => 6,
'arbejder_jobstatus' => 5,
'arbejder_afloenningsform' => 'Rh',
'arbejder_loen' => 0,
'arbejder_landekode' => 'em',
'arbejder_andetarbejdssted' => 'F',
'arbejder_personalegruppe' => 'E',
'arbejder_email' => '-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY/3cLyvSev%S_//tWr3m5kkHetM9=Kup5',
'arbejder_dabarsel' => 2,
'arbejder_frivilligtraekprocent' => 9,
'arbejder_beskaeftigelseskode' => 4,
'arbejder_produktionsenhedsnr' => 'LSe,=:.0hG',
'arbejder_groenlandskkommune' => 1,
'arbejder_skattekort' => 'M',
'arbejder_dalouddannelsesbidrag' => 1,
'arbejder_udlaertdato' => '2021-01-13',
'arbejder_arbejdsfunktion2' => 8,
'arbejder_sundhedsordning' => 533230,
'arbejder_mokode' => 9022,
'arbejder_eboks' => 'J',
'arbejder_loesarbejder' => 'J',
'arbejder_mailkode' => 'K vroCTrAgfYD83UVcS',
'arbejder_fhkode' => 'JJp',
'arbejder_tilladnegativloen' => 1,
'arbejder_kompetencefond' => 25743343,
'arbejder_samarbuddannelsesfond' => 137753,
'arbejder_ansaettelsesforhold' => '35',
'arbejder_anciennitetsdato' => '2021-01-13',
'arbejder_tekst1' => 'f \'hB3dL9QJ7n,RO49_na2&zx',
'arbejder_tekst2' => '[email protected]=XoY:[email protected]',
'arbejder_tekst3' => 'HXlTy,Vm-N-:b 0nl|[email protected]',
'arbejder_tekst4' => 'TbBfbt2c73pvj44Uj lQ{Bm0E',
'arbejder_tekst5' => 'haNoPK}PR\'1ivek38L1Cu4 mT',
'arbejder_overenskomsttekst' => 'U8:,jYGtsr,@aoN8e7d9BpGAD',
'opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id' => 627633731,
'opgoerelsesperiodemedarbejder_valg' => 7,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/draft'
payload = {
"arbejder_nr": 15868,
"arbejder_profil": "=szKsLHi",
"arbejder_fornavn": "8BnQBR40Qi\/Qz,hpF Q?I ",
"arbejder_efternavn": "0NnoLYQhsh2uqABf3N9WA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "%Knt2k8XXr",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 6772675,
"arbejder_skattefrd1dag": 9409836,
"arbejder_skattefrdperioden": 27,
"arbejder_traekprocent": 24355939,
"arbejder_restfrikort": 51,
"arbejder_bankregnr": 176,
"arbejder_bankkontonr": "rOmaWY3Pc,",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "Rh",
"arbejder_loen": 0,
"arbejder_landekode": "em",
"arbejder_andetarbejdssted": "F",
"arbejder_personalegruppe": "E",
"arbejder_email": "-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY\/3cLyvSev%S_\/\/tWr3m5kkHetM9=Kup5",
"arbejder_dabarsel": 2,
"arbejder_frivilligtraekprocent": 9,
"arbejder_beskaeftigelseskode": 4,
"arbejder_produktionsenhedsnr": "LSe,=:.0hG",
"arbejder_groenlandskkommune": 1,
"arbejder_skattekort": "M",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 8,
"arbejder_sundhedsordning": 533230,
"arbejder_mokode": 9022,
"arbejder_eboks": "J",
"arbejder_loesarbejder": "J",
"arbejder_mailkode": "K vroCTrAgfYD83UVcS",
"arbejder_fhkode": "JJp",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 25743343,
"arbejder_samarbuddannelsesfond": 137753,
"arbejder_ansaettelsesforhold": "35",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 1,
"arbejderafdeling": false,
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 2,
"opgoerelsesperiodebestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_til_dato": "2019-10-11",
"opgoerelsesperiodebestilt_bestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_bestilt_til_dato": 0,
"opgoerelsesperiodemedarbejder_valg": 12
}
]
HTTP Request
POST api/company/{companyId}/employee/draft
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these. If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejder_nr |
integer | required | Between: 0 and 99998 |
arbejder_profil |
string | optional | Maximum: 8 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fornavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_efternavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse1 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse2 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_postnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_by |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_cprnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_ansatdato |
date | optional | Date format: Y-m-d |
arbejder_rejstdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_afdeling |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrd1dag |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrdperioden |
integer | optional | Must have a length between 1 and 5 |
arbejder_traekprocent |
integer | optional | Must have a length between 1 and 3 |
arbejder_restfrikort |
integer | optional | Must have a length between 1 and 7 |
arbejder_bankregnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_bankkontonr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_atpkode |
integer | optional | 0 , 1 , 2 , 4 , 5 or 6 |
arbejder_feriekode |
integer | optional | Must have an exact length of 1 |
arbejder_shkode |
integer | optional | Must have an exact length of 1 |
arbejder_ampension |
integer | optional | Must have a length between 1 and 4 |
arbejder_amstartdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_ansaettelsestype |
integer | optional | Must have an exact length of 1 |
arbejder_ansaettelsevilkaer |
integer | optional | Must have an exact length of 1 |
arbejder_jobstatus |
integer | optional | Must have an exact length of 1 |
arbejder_afloenningsform |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_loen |
integer | optional | Must have an exact length of 1 and 0 or 1 |
arbejder_landekode |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_andetarbejdssted |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_personalegruppe |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_email |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_dabarsel |
integer | optional | Between: 0 and 9 |
arbejder_frivilligtraekprocent |
integer | optional | Between: 0 and 20 |
arbejder_beskaeftigelseskode |
integer | optional | Must have a length between 1 and 2 |
arbejder_produktionsenhedsnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_groenlandskkommune |
integer | optional | Must have a length between 1 and 3 |
arbejder_skattekort |
string | optional | H , B , M , h , b or m |
arbejder_dalouddannelsesbidrag |
integer | optional | Must have a length between 1 and 2 |
arbejder_udlaertdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_arbejdsfunktion2 |
integer | optional | Must have a length between 1 and 6 |
arbejder_sundhedsordning |
integer | optional | Must have a length between 1 and 2 |
arbejder_mokode |
integer | optional | Must have a length between 1 and 5 |
arbejder_eboks |
string | optional | Maximum: 1 and J , N , M , P , j , n , m or p |
arbejder_loesarbejder |
string | optional | Maximum: 1 and J , N , j or n |
arbejder_mailkode |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fhkode |
string | optional | Maximum: 3 and can only contain A-Å 0-9 |
arbejder_tilladnegativloen |
integer | optional | Between: 0 and 1 |
arbejder_kompetencefond |
integer | optional | Must have a length between 1 and 5 |
arbejder_samarbuddannelsesfond |
integer | optional | Must have a length between 1 and 5 |
arbejder_ansaettelsesforhold |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_anciennitetsdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_tekst1 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst2 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst3 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst4 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst5 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_overenskomsttekst |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id |
integer | optional | Valid opgoerelsesperiodetype opgoerelsesperiodetype_id |
opgoerelsesperiodemedarbejder_valg |
integer | optional | Minimum: 1 and maximum: 31 |
Create employee, text
Method for handling bulk creation of employees from a text (field)
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/bulk/field"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"medarbejdere": "quod",
"arbejder_kladde": true
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/employee/bulk/field',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'medarbejdere' => 'quod',
'arbejder_kladde' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/bulk/field'
payload = {
"medarbejdere": "quod",
"arbejder_kladde": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
HTTP Request
POST api/company/{companyId}/employee/bulk/field
Requirements
- User is logged in
- User has access to company
- User has access right to write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these.If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
medarbejdere |
string | required | |
arbejder_kladde |
boolean | optional |
Create employee, file
Method for handling bulk creation of employees from a file
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/bulk/file"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_kladde": true
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/employee/bulk/file',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_kladde' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/bulk/file'
payload = {
"arbejder_kladde": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
HTTP Request
POST api/company/{companyId}/employee/bulk/file
Requirements
- User is logged in
- User has access to company
- User has access right to write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these.If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
medarbejderFil |
file | optional | Must be a file upload and allowed mime types: text/csv , text/plain , application/csv , application/x-csv , text/comma-separated-values , text/x-comma-separated-values or text/tab-separated-values |
arbejder_kladde |
boolean | optional |
Update employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_arbejdertype": 0,
"arbejder_profil": "=szKsLHi",
"arbejder_fornavn": "8BnQBR40Qi\/Qz,hpF Q?I ",
"arbejder_efternavn": "0NnoLYQhsh2uqABf3N9WA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 93.18773,
"arbejder_bankkontonr": "qOm9VY3OcZ",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "Rh",
"arbejder_loen": 0,
"arbejder_landekode": "em",
"arbejder_andetarbejdssted": "F",
"arbejder_personalegruppe": "E",
"arbejder_email": "-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY\/3cLyvSev%S_\/\/tWr3m5kkHetM9=Kup5",
"arbejder_dabarsel": 2,
"arbejder_frivilligtraekprocent": 9,
"arbejder_beskaeftigelseskode": 4,
"arbejder_produktionsenhedsnr": "LSe,=:.0hG",
"arbejder_groenlandskkommune": 1,
"arbejder_skattekort": "M",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 8,
"arbejder_sundhedsordning": 533230,
"arbejder_mokode": 9022,
"arbejder_eboks": "J",
"arbejder_loesarbejder": "J",
"arbejder_mailkode": "K vroCTrAgfYD83UVcS",
"arbejder_fhkode": "JJp",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 25743343,
"arbejder_samarbuddannelsesfond": 137753,
"arbejder_ansaettelsesforhold": "35",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"arbejder_bemaerkning1": "y1Fi\/QYO6j%[email protected]:QnR=MJixb-HrhHT%uZ-TlaWH\/Dc'BtvNTBSJC>GQT6nQ",
"arbejder_bemaerkning2": "EhrxJWC2Wqt,[email protected][G8 x%VuK5F=hu=3kMG49 g8NskGz",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 9517982,
"opgoerelsesperiodemedarbejder_valg": 28,
"opgoerelsesperiodebestilt_fra_dato": "2021-01-13",
"opgoerelsesperiodebestilt_til_dato": "2021-01-13"
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/employee/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_arbejdertype' => 0,
'arbejder_profil' => '=szKsLHi',
'arbejder_fornavn' => '8BnQBR40Qi/Qz,hpF Q?I ',
'arbejder_efternavn' => '0NnoLYQhsh2uqABf3N9WA',
'arbejder_adresse1' => '@!e\'[email protected] 58IRTKqGiZyj',
'arbejder_adresse2' => '[email protected],zFLoZB',
'arbejder_postnr' => 95411677,
'arbejder_by' => 'ra6s5bZ83B:8bRTACEDiQE',
'arbejder_cprnr' => '/Kns2k8,Wq',
'arbejder_ansatdato' => '2021-01-13',
'arbejder_rejstdato' => '2021-01-13',
'arbejder_afdeling' => 7,
'arbejder_skattefrd1dag' => 9016287,
'arbejder_skattefrdperioden' => 3,
'arbejder_traekprocent' => 8,
'arbejder_restfrikort' => 119,
'arbejder_bankregnr' => 93.18773,
'arbejder_bankkontonr' => 'qOm9VY3OcZ',
'arbejder_atpkode' => 0,
'arbejder_feriekode' => 5,
'arbejder_shkode' => 2,
'arbejder_ampension' => 1029552,
'arbejder_amstartdato' => '2021-01-13',
'arbejder_ansaettelsestype' => 1,
'arbejder_ansaettelsevilkaer' => 6,
'arbejder_jobstatus' => 5,
'arbejder_afloenningsform' => 'Rh',
'arbejder_loen' => 0,
'arbejder_landekode' => 'em',
'arbejder_andetarbejdssted' => 'F',
'arbejder_personalegruppe' => 'E',
'arbejder_email' => '-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY/3cLyvSev%S_//tWr3m5kkHetM9=Kup5',
'arbejder_dabarsel' => 2,
'arbejder_frivilligtraekprocent' => 9,
'arbejder_beskaeftigelseskode' => 4,
'arbejder_produktionsenhedsnr' => 'LSe,=:.0hG',
'arbejder_groenlandskkommune' => 1,
'arbejder_skattekort' => 'M',
'arbejder_dalouddannelsesbidrag' => 1,
'arbejder_udlaertdato' => '2021-01-13',
'arbejder_arbejdsfunktion2' => 8,
'arbejder_sundhedsordning' => 533230,
'arbejder_mokode' => 9022,
'arbejder_eboks' => 'J',
'arbejder_loesarbejder' => 'J',
'arbejder_mailkode' => 'K vroCTrAgfYD83UVcS',
'arbejder_fhkode' => 'JJp',
'arbejder_tilladnegativloen' => 1,
'arbejder_kompetencefond' => 25743343,
'arbejder_samarbuddannelsesfond' => 137753,
'arbejder_ansaettelsesforhold' => '35',
'arbejder_anciennitetsdato' => '2021-01-13',
'arbejder_tekst1' => 'f \'hB3dL9QJ7n,RO49_na2&zx',
'arbejder_tekst2' => '[email protected]=XoY:[email protected]',
'arbejder_tekst3' => 'HXlTy,Vm-N-:b 0nl|[email protected]',
'arbejder_tekst4' => 'TbBfbt2c73pvj44Uj lQ{Bm0E',
'arbejder_tekst5' => 'haNoPK}PR\'1ivek38L1Cu4 mT',
'arbejder_overenskomsttekst' => 'U8:,jYGtsr,@aoN8e7d9BpGAD',
'arbejder_bemaerkning1' => 'y1Fi/QYO6j%[email protected]:QnR=MJixb-HrhHT%uZ-TlaWH/Dc\'BtvNTBSJC>GQT6nQ',
'arbejder_bemaerkning2' => 'EhrxJWC2Wqt,[email protected][G8 x%VuK5F=hu=3kMG49 g8NskGz',
'opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id' => 9517982,
'opgoerelsesperiodemedarbejder_valg' => 28,
'opgoerelsesperiodebestilt_fra_dato' => '2021-01-13',
'opgoerelsesperiodebestilt_til_dato' => '2021-01-13',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1'
payload = {
"arbejder_arbejdertype": 0,
"arbejder_profil": "=szKsLHi",
"arbejder_fornavn": "8BnQBR40Qi\/Qz,hpF Q?I ",
"arbejder_efternavn": "0NnoLYQhsh2uqABf3N9WA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 93.18773,
"arbejder_bankkontonr": "qOm9VY3OcZ",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "Rh",
"arbejder_loen": 0,
"arbejder_landekode": "em",
"arbejder_andetarbejdssted": "F",
"arbejder_personalegruppe": "E",
"arbejder_email": "-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY\/3cLyvSev%S_\/\/tWr3m5kkHetM9=Kup5",
"arbejder_dabarsel": 2,
"arbejder_frivilligtraekprocent": 9,
"arbejder_beskaeftigelseskode": 4,
"arbejder_produktionsenhedsnr": "LSe,=:.0hG",
"arbejder_groenlandskkommune": 1,
"arbejder_skattekort": "M",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 8,
"arbejder_sundhedsordning": 533230,
"arbejder_mokode": 9022,
"arbejder_eboks": "J",
"arbejder_loesarbejder": "J",
"arbejder_mailkode": "K vroCTrAgfYD83UVcS",
"arbejder_fhkode": "JJp",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 25743343,
"arbejder_samarbuddannelsesfond": 137753,
"arbejder_ansaettelsesforhold": "35",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"arbejder_bemaerkning1": "y1Fi\/QYO6j%[email protected]:QnR=MJixb-HrhHT%uZ-TlaWH\/Dc'BtvNTBSJC>GQT6nQ",
"arbejder_bemaerkning2": "EhrxJWC2Wqt,[email protected][G8 x%VuK5F=hu=3kMG49 g8NskGz",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 9517982,
"opgoerelsesperiodemedarbejder_valg": 28,
"opgoerelsesperiodebestilt_fra_dato": "2021-01-13",
"opgoerelsesperiodebestilt_til_dato": "2021-01-13"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 0,
"arbejderafdeling": false,
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 2,
"opgoerelsesperiodebestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_til_dato": "2019-10-11",
"opgoerelsesperiodebestilt_bestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_bestilt_til_dato": 0,
"opgoerelsesperiodemedarbejder_valg": 12
}
]
HTTP Request
PATCH api/company/{companyId}/employee/{employeeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these. If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejder_arbejdertype |
integer | optional | Between: 0 and 4 |
arbejder_profil |
string | optional | Maximum: 8 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fornavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_efternavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse1 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse2 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_postnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_by |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_cprnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_ansatdato |
date | optional | Date format: Y-m-d |
arbejder_rejstdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_afdeling |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrd1dag |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrdperioden |
integer | optional | Must have a length between 1 and 5 |
arbejder_traekprocent |
integer | optional | Must have a length between 1 and 3 |
arbejder_restfrikort |
integer | optional | Must have a length between 1 and 7 |
arbejder_bankregnr |
numeric | optional | Must have a length between 1 and 4 |
arbejder_bankkontonr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_atpkode |
integer | optional | 0 , 1 , 2 , 4 , 5 or 6 |
arbejder_feriekode |
integer | optional | Must have an exact length of 1 |
arbejder_shkode |
integer | optional | Must have an exact length of 1 |
arbejder_ampension |
integer | optional | Must have a length between 1 and 4 |
arbejder_amstartdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_ansaettelsestype |
integer | optional | Must have an exact length of 1 |
arbejder_ansaettelsevilkaer |
integer | optional | Must have an exact length of 1 |
arbejder_jobstatus |
integer | optional | Must have an exact length of 1 |
arbejder_afloenningsform |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_loen |
integer | optional | Must have an exact length of 1 and 0 or 1 |
arbejder_landekode |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_andetarbejdssted |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_personalegruppe |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_email |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_dabarsel |
integer | optional | Between: 0 and 9 |
arbejder_frivilligtraekprocent |
integer | optional | Between: 0 and 20 |
arbejder_beskaeftigelseskode |
integer | optional | Must have a length between 1 and 2 |
arbejder_produktionsenhedsnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_groenlandskkommune |
integer | optional | Must have a length between 1 and 3 |
arbejder_skattekort |
string | optional | H , B , M , h , b or m |
arbejder_dalouddannelsesbidrag |
integer | optional | Must have a length between 1 and 2 |
arbejder_udlaertdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_arbejdsfunktion2 |
integer | optional | Must have a length between 1 and 6 |
arbejder_sundhedsordning |
integer | optional | Must have a length between 1 and 2 |
arbejder_mokode |
integer | optional | Must have a length between 1 and 5 |
arbejder_eboks |
string | optional | Maximum: 1 and J , N , M , P , j , n , m or p |
arbejder_loesarbejder |
string | optional | Maximum: 1 and J , N , j or n |
arbejder_mailkode |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fhkode |
string | optional | Maximum: 3 and can only contain A-Å 0-9 |
arbejder_tilladnegativloen |
integer | optional | Between: 0 and 1 |
arbejder_kompetencefond |
integer | optional | Must have a length between 1 and 5 |
arbejder_samarbuddannelsesfond |
integer | optional | Must have a length between 1 and 5 |
arbejder_ansaettelsesforhold |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_anciennitetsdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_tekst1 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst2 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst3 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst4 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst5 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_overenskomsttekst |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_bemaerkning1 |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_bemaerkning2 |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id |
integer | optional | Valid opgoerelsesperiodetype opgoerelsesperiodetype_id |
opgoerelsesperiodemedarbejder_valg |
integer | optional | Minimum: 1 and maximum: 31 |
opgoerelsesperiodebestilt_fra_dato |
date | optional | Date format: Y-m-d or 0 |
opgoerelsesperiodebestilt_til_dato |
date | optional | Date format: Y-m-d or 0 |
Update employee, via PUT
The functionality is the same as for the PATCH request - Only difference is the HTTP PUT request method. It enables systems, which native cannot issue a PATCH, to do so using PUT. The PUT requirements have been relaxed to match the PATCH requirement in that not all fields are required.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_arbejdertype": 0,
"arbejder_profil": "=szKsLHi",
"arbejder_fornavn": "8BnQBR40Qi\/Qz,hpF Q?I ",
"arbejder_efternavn": "0NnoLYQhsh2uqABf3N9WA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 93.18773,
"arbejder_bankkontonr": "qOm9VY3OcZ",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "Rh",
"arbejder_loen": 0,
"arbejder_landekode": "em",
"arbejder_andetarbejdssted": "F",
"arbejder_personalegruppe": "E",
"arbejder_email": "-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY\/3cLyvSev%S_\/\/tWr3m5kkHetM9=Kup5",
"arbejder_dabarsel": 2,
"arbejder_frivilligtraekprocent": 9,
"arbejder_beskaeftigelseskode": 4,
"arbejder_produktionsenhedsnr": "LSe,=:.0hG",
"arbejder_groenlandskkommune": 1,
"arbejder_skattekort": "M",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 8,
"arbejder_sundhedsordning": 533230,
"arbejder_mokode": 9022,
"arbejder_eboks": "J",
"arbejder_loesarbejder": "J",
"arbejder_mailkode": "K vroCTrAgfYD83UVcS",
"arbejder_fhkode": "JJp",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 25743343,
"arbejder_samarbuddannelsesfond": 137753,
"arbejder_ansaettelsesforhold": "35",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"arbejder_bemaerkning1": "y1Fi\/QYO6j%[email protected]:QnR=MJixb-HrhHT%uZ-TlaWH\/Dc'BtvNTBSJC>GQT6nQ",
"arbejder_bemaerkning2": "EhrxJWC2Wqt,[email protected][G8 x%VuK5F=hu=3kMG49 g8NskGz",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 9517982,
"opgoerelsesperiodemedarbejder_valg": 28,
"opgoerelsesperiodebestilt_fra_dato": "2021-01-13",
"opgoerelsesperiodebestilt_til_dato": "2021-01-13"
}
fetch(url, {
method: "PUT",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->put(
'https://mit.proloen.dk/api/company/1/employee/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_arbejdertype' => 0,
'arbejder_profil' => '=szKsLHi',
'arbejder_fornavn' => '8BnQBR40Qi/Qz,hpF Q?I ',
'arbejder_efternavn' => '0NnoLYQhsh2uqABf3N9WA',
'arbejder_adresse1' => '@!e\'[email protected] 58IRTKqGiZyj',
'arbejder_adresse2' => '[email protected],zFLoZB',
'arbejder_postnr' => 95411677,
'arbejder_by' => 'ra6s5bZ83B:8bRTACEDiQE',
'arbejder_cprnr' => '/Kns2k8,Wq',
'arbejder_ansatdato' => '2021-01-13',
'arbejder_rejstdato' => '2021-01-13',
'arbejder_afdeling' => 7,
'arbejder_skattefrd1dag' => 9016287,
'arbejder_skattefrdperioden' => 3,
'arbejder_traekprocent' => 8,
'arbejder_restfrikort' => 119,
'arbejder_bankregnr' => 93.18773,
'arbejder_bankkontonr' => 'qOm9VY3OcZ',
'arbejder_atpkode' => 0,
'arbejder_feriekode' => 5,
'arbejder_shkode' => 2,
'arbejder_ampension' => 1029552,
'arbejder_amstartdato' => '2021-01-13',
'arbejder_ansaettelsestype' => 1,
'arbejder_ansaettelsevilkaer' => 6,
'arbejder_jobstatus' => 5,
'arbejder_afloenningsform' => 'Rh',
'arbejder_loen' => 0,
'arbejder_landekode' => 'em',
'arbejder_andetarbejdssted' => 'F',
'arbejder_personalegruppe' => 'E',
'arbejder_email' => '-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY/3cLyvSev%S_//tWr3m5kkHetM9=Kup5',
'arbejder_dabarsel' => 2,
'arbejder_frivilligtraekprocent' => 9,
'arbejder_beskaeftigelseskode' => 4,
'arbejder_produktionsenhedsnr' => 'LSe,=:.0hG',
'arbejder_groenlandskkommune' => 1,
'arbejder_skattekort' => 'M',
'arbejder_dalouddannelsesbidrag' => 1,
'arbejder_udlaertdato' => '2021-01-13',
'arbejder_arbejdsfunktion2' => 8,
'arbejder_sundhedsordning' => 533230,
'arbejder_mokode' => 9022,
'arbejder_eboks' => 'J',
'arbejder_loesarbejder' => 'J',
'arbejder_mailkode' => 'K vroCTrAgfYD83UVcS',
'arbejder_fhkode' => 'JJp',
'arbejder_tilladnegativloen' => 1,
'arbejder_kompetencefond' => 25743343,
'arbejder_samarbuddannelsesfond' => 137753,
'arbejder_ansaettelsesforhold' => '35',
'arbejder_anciennitetsdato' => '2021-01-13',
'arbejder_tekst1' => 'f \'hB3dL9QJ7n,RO49_na2&zx',
'arbejder_tekst2' => '[email protected]=XoY:[email protected]',
'arbejder_tekst3' => 'HXlTy,Vm-N-:b 0nl|[email protected]',
'arbejder_tekst4' => 'TbBfbt2c73pvj44Uj lQ{Bm0E',
'arbejder_tekst5' => 'haNoPK}PR\'1ivek38L1Cu4 mT',
'arbejder_overenskomsttekst' => 'U8:,jYGtsr,@aoN8e7d9BpGAD',
'arbejder_bemaerkning1' => 'y1Fi/QYO6j%[email protected]:QnR=MJixb-HrhHT%uZ-TlaWH/Dc\'BtvNTBSJC>GQT6nQ',
'arbejder_bemaerkning2' => 'EhrxJWC2Wqt,[email protected][G8 x%VuK5F=hu=3kMG49 g8NskGz',
'opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id' => 9517982,
'opgoerelsesperiodemedarbejder_valg' => 28,
'opgoerelsesperiodebestilt_fra_dato' => '2021-01-13',
'opgoerelsesperiodebestilt_til_dato' => '2021-01-13',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1'
payload = {
"arbejder_arbejdertype": 0,
"arbejder_profil": "=szKsLHi",
"arbejder_fornavn": "8BnQBR40Qi\/Qz,hpF Q?I ",
"arbejder_efternavn": "0NnoLYQhsh2uqABf3N9WA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 93.18773,
"arbejder_bankkontonr": "qOm9VY3OcZ",
"arbejder_atpkode": 0,
"arbejder_feriekode": 5,
"arbejder_shkode": 2,
"arbejder_ampension": 1029552,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 6,
"arbejder_jobstatus": 5,
"arbejder_afloenningsform": "Rh",
"arbejder_loen": 0,
"arbejder_landekode": "em",
"arbejder_andetarbejdssted": "F",
"arbejder_personalegruppe": "E",
"arbejder_email": "-ny4HYe_aKt:F6MfbnpCPoOA88wnObsgu41VAY\/3cLyvSev%S_\/\/tWr3m5kkHetM9=Kup5",
"arbejder_dabarsel": 2,
"arbejder_frivilligtraekprocent": 9,
"arbejder_beskaeftigelseskode": 4,
"arbejder_produktionsenhedsnr": "LSe,=:.0hG",
"arbejder_groenlandskkommune": 1,
"arbejder_skattekort": "M",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 8,
"arbejder_sundhedsordning": 533230,
"arbejder_mokode": 9022,
"arbejder_eboks": "J",
"arbejder_loesarbejder": "J",
"arbejder_mailkode": "K vroCTrAgfYD83UVcS",
"arbejder_fhkode": "JJp",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 25743343,
"arbejder_samarbuddannelsesfond": 137753,
"arbejder_ansaettelsesforhold": "35",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"arbejder_bemaerkning1": "y1Fi\/QYO6j%[email protected]:QnR=MJixb-HrhHT%uZ-TlaWH\/Dc'BtvNTBSJC>GQT6nQ",
"arbejder_bemaerkning2": "EhrxJWC2Wqt,[email protected][G8 x%VuK5F=hu=3kMG49 g8NskGz",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 9517982,
"opgoerelsesperiodemedarbejder_valg": 28,
"opgoerelsesperiodebestilt_fra_dato": "2021-01-13",
"opgoerelsesperiodebestilt_til_dato": "2021-01-13"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 0,
"arbejderafdeling": false,
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 2,
"opgoerelsesperiodebestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_til_dato": "2019-10-11",
"opgoerelsesperiodebestilt_bestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_bestilt_til_dato": 0,
"opgoerelsesperiodemedarbejder_valg": 12
}
]
HTTP Request
PUT api/company/{companyId}/employee/{employeeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these. If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejder_arbejdertype |
integer | optional | Between: 0 and 4 |
arbejder_profil |
string | optional | Maximum: 8 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fornavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_efternavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse1 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse2 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_postnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_by |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_cprnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_ansatdato |
date | optional | Date format: Y-m-d |
arbejder_rejstdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_afdeling |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrd1dag |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrdperioden |
integer | optional | Must have a length between 1 and 5 |
arbejder_traekprocent |
integer | optional | Must have a length between 1 and 3 |
arbejder_restfrikort |
integer | optional | Must have a length between 1 and 7 |
arbejder_bankregnr |
numeric | optional | Must have a length between 1 and 4 |
arbejder_bankkontonr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_atpkode |
integer | optional | 0 , 1 , 2 , 4 , 5 or 6 |
arbejder_feriekode |
integer | optional | Must have an exact length of 1 |
arbejder_shkode |
integer | optional | Must have an exact length of 1 |
arbejder_ampension |
integer | optional | Must have a length between 1 and 4 |
arbejder_amstartdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_ansaettelsestype |
integer | optional | Must have an exact length of 1 |
arbejder_ansaettelsevilkaer |
integer | optional | Must have an exact length of 1 |
arbejder_jobstatus |
integer | optional | Must have an exact length of 1 |
arbejder_afloenningsform |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_loen |
integer | optional | Must have an exact length of 1 and 0 or 1 |
arbejder_landekode |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_andetarbejdssted |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_personalegruppe |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_email |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_dabarsel |
integer | optional | Between: 0 and 9 |
arbejder_frivilligtraekprocent |
integer | optional | Between: 0 and 20 |
arbejder_beskaeftigelseskode |
integer | optional | Must have a length between 1 and 2 |
arbejder_produktionsenhedsnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_groenlandskkommune |
integer | optional | Must have a length between 1 and 3 |
arbejder_skattekort |
string | optional | H , B , M , h , b or m |
arbejder_dalouddannelsesbidrag |
integer | optional | Must have a length between 1 and 2 |
arbejder_udlaertdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_arbejdsfunktion2 |
integer | optional | Must have a length between 1 and 6 |
arbejder_sundhedsordning |
integer | optional | Must have a length between 1 and 2 |
arbejder_mokode |
integer | optional | Must have a length between 1 and 5 |
arbejder_eboks |
string | optional | Maximum: 1 and J , N , M , P , j , n , m or p |
arbejder_loesarbejder |
string | optional | Maximum: 1 and J , N , j or n |
arbejder_mailkode |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fhkode |
string | optional | Maximum: 3 and can only contain A-Å 0-9 |
arbejder_tilladnegativloen |
integer | optional | Between: 0 and 1 |
arbejder_kompetencefond |
integer | optional | Must have a length between 1 and 5 |
arbejder_samarbuddannelsesfond |
integer | optional | Must have a length between 1 and 5 |
arbejder_ansaettelsesforhold |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_anciennitetsdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_tekst1 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst2 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst3 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst4 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst5 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_overenskomsttekst |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_bemaerkning1 |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_bemaerkning2 |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id |
integer | optional | Valid opgoerelsesperiodetype opgoerelsesperiodetype_id |
opgoerelsesperiodemedarbejder_valg |
integer | optional | Minimum: 1 and maximum: 31 |
opgoerelsesperiodebestilt_fra_dato |
date | optional | Date format: Y-m-d or 0 |
opgoerelsesperiodebestilt_til_dato |
date | optional | Date format: Y-m-d or 0 |
Update employee, draft
Update draft of employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/draft"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_profil": "YYf=rzHs",
"arbejder_fornavn": "J4k&8AlNBS'0Ph\/OyYhoE ",
"arbejder_efternavn": "5NK6ILN=0MlmKVRgqg2tqA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 40366,
"arbejder_bankkontonr": "frOoa,X3Pd",
"arbejder_atpkode": 1,
"arbejder_feriekode": 3,
"arbejder_shkode": 1,
"arbejder_ampension": 73,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 4,
"arbejder_ansaettelsevilkaer": 4,
"arbejder_jobstatus": 6,
"arbejder_afloenningsform": "DR",
"arbejder_loen": 0,
"arbejder_landekode": "Ge",
"arbejder_andetarbejdssted": "K",
"arbejder_personalegruppe": "4",
"arbejder_email": "[email protected]:H6NfbopCTnPD77wn>btfu(1XAY\/3OMxuYfuV4\/%tTs3p5llKeqN9=K",
"arbejder_dabarsel": 9,
"arbejder_frivilligtraekprocent": 12,
"arbejder_beskaeftigelseskode": 472,
"arbejder_produktionsenhedsnr": "xk8LUf,=:",
"arbejder_groenlandskkommune": 740607,
"arbejder_skattekort": "h",
"arbejder_dalouddannelsesbidrag": 3,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 41,
"arbejder_sundhedsordning": 1,
"arbejder_mokode": 482,
"arbejder_eboks": "j",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "_0pk=ZJ%usoBQrBgf,C",
"arbejder_fhkode": "SuW",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 7267811,
"arbejder_samarbuddannelsesfond": 2599,
"arbejder_ansaettelsesforhold": "rf",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/employee/1/draft',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_profil' => 'YYf=rzHs',
'arbejder_fornavn' => 'J4k&8AlNBS\'0Ph/OyYhoE ',
'arbejder_efternavn' => '5NK6ILN=0MlmKVRgqg2tqA',
'arbejder_adresse1' => '@!e\'[email protected] 58IRTKqGiZyj',
'arbejder_adresse2' => '[email protected],zFLoZB',
'arbejder_postnr' => 95411677,
'arbejder_by' => 'ra6s5bZ83B:8bRTACEDiQE',
'arbejder_cprnr' => '/Kns2k8,Wq',
'arbejder_ansatdato' => '2021-01-13',
'arbejder_rejstdato' => '2021-01-13',
'arbejder_afdeling' => 7,
'arbejder_skattefrd1dag' => 9016287,
'arbejder_skattefrdperioden' => 3,
'arbejder_traekprocent' => 8,
'arbejder_restfrikort' => 119,
'arbejder_bankregnr' => 40366,
'arbejder_bankkontonr' => 'frOoa,X3Pd',
'arbejder_atpkode' => 1,
'arbejder_feriekode' => 3,
'arbejder_shkode' => 1,
'arbejder_ampension' => 73,
'arbejder_amstartdato' => '2021-01-13',
'arbejder_ansaettelsestype' => 4,
'arbejder_ansaettelsevilkaer' => 4,
'arbejder_jobstatus' => 6,
'arbejder_afloenningsform' => 'DR',
'arbejder_loen' => 0,
'arbejder_landekode' => 'Ge',
'arbejder_andetarbejdssted' => 'K',
'arbejder_personalegruppe' => '4',
'arbejder_email' => '[email protected]:H6NfbopCTnPD77wn>btfu(1XAY/3OMxuYfuV4/%tTs3p5llKeqN9=K',
'arbejder_dabarsel' => 9,
'arbejder_frivilligtraekprocent' => 12,
'arbejder_beskaeftigelseskode' => 472,
'arbejder_produktionsenhedsnr' => 'xk8LUf,=:',
'arbejder_groenlandskkommune' => 740607,
'arbejder_skattekort' => 'h',
'arbejder_dalouddannelsesbidrag' => 3,
'arbejder_udlaertdato' => '2021-01-13',
'arbejder_arbejdsfunktion2' => 41,
'arbejder_sundhedsordning' => 1,
'arbejder_mokode' => 482,
'arbejder_eboks' => 'j',
'arbejder_loesarbejder' => 'N',
'arbejder_mailkode' => '_0pk=ZJ%usoBQrBgf,C',
'arbejder_fhkode' => 'SuW',
'arbejder_tilladnegativloen' => 1,
'arbejder_kompetencefond' => 7267811,
'arbejder_samarbuddannelsesfond' => 2599,
'arbejder_ansaettelsesforhold' => 'rf',
'arbejder_anciennitetsdato' => '2021-01-13',
'arbejder_tekst1' => 'f \'hB3dL9QJ7n,RO49_na2&zx',
'arbejder_tekst2' => '[email protected]=XoY:[email protected]',
'arbejder_tekst3' => 'HXlTy,Vm-N-:b 0nl|[email protected]',
'arbejder_tekst4' => 'TbBfbt2c73pvj44Uj lQ{Bm0E',
'arbejder_tekst5' => 'haNoPK}PR\'1ivek38L1Cu4 mT',
'arbejder_overenskomsttekst' => 'U8:,jYGtsr,@aoN8e7d9BpGAD',
'opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id' => 627633731,
'opgoerelsesperiodemedarbejder_valg' => 7,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/draft'
payload = {
"arbejder_profil": "YYf=rzHs",
"arbejder_fornavn": "J4k&8AlNBS'0Ph\/OyYhoE ",
"arbejder_efternavn": "5NK6ILN=0MlmKVRgqg2tqA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 40366,
"arbejder_bankkontonr": "frOoa,X3Pd",
"arbejder_atpkode": 1,
"arbejder_feriekode": 3,
"arbejder_shkode": 1,
"arbejder_ampension": 73,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 4,
"arbejder_ansaettelsevilkaer": 4,
"arbejder_jobstatus": 6,
"arbejder_afloenningsform": "DR",
"arbejder_loen": 0,
"arbejder_landekode": "Ge",
"arbejder_andetarbejdssted": "K",
"arbejder_personalegruppe": "4",
"arbejder_email": "[email protected]:H6NfbopCTnPD77wn>btfu(1XAY\/3OMxuYfuV4\/%tTs3p5llKeqN9=K",
"arbejder_dabarsel": 9,
"arbejder_frivilligtraekprocent": 12,
"arbejder_beskaeftigelseskode": 472,
"arbejder_produktionsenhedsnr": "xk8LUf,=:",
"arbejder_groenlandskkommune": 740607,
"arbejder_skattekort": "h",
"arbejder_dalouddannelsesbidrag": 3,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 41,
"arbejder_sundhedsordning": 1,
"arbejder_mokode": 482,
"arbejder_eboks": "j",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "_0pk=ZJ%usoBQrBgf,C",
"arbejder_fhkode": "SuW",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 7267811,
"arbejder_samarbuddannelsesfond": 2599,
"arbejder_ansaettelsesforhold": "rf",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 1,
"arbejderafdeling": false,
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 2,
"opgoerelsesperiodebestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_til_dato": "2019-10-11",
"opgoerelsesperiodebestilt_bestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_bestilt_til_dato": 0,
"opgoerelsesperiodemedarbejder_valg": 12
}
]
HTTP Request
PATCH api/company/{companyId}/employee/{employeeId}/draft
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these.If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejder_profil |
string | optional | Maximum: 8 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fornavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_efternavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse1 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse2 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_postnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_by |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_cprnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_ansatdato |
date | optional | Date format: Y-m-d |
arbejder_rejstdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_afdeling |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrd1dag |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrdperioden |
integer | optional | Must have a length between 1 and 5 |
arbejder_traekprocent |
integer | optional | Must have a length between 1 and 3 |
arbejder_restfrikort |
integer | optional | Must have a length between 1 and 7 |
arbejder_bankregnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_bankkontonr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_atpkode |
integer | optional | 0 , 1 , 2 , 4 , 5 or 6 |
arbejder_feriekode |
integer | optional | Must have an exact length of 1 |
arbejder_shkode |
integer | optional | Must have an exact length of 1 |
arbejder_ampension |
integer | optional | Must have a length between 1 and 4 |
arbejder_amstartdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_ansaettelsestype |
integer | optional | Must have an exact length of 1 |
arbejder_ansaettelsevilkaer |
integer | optional | Must have an exact length of 1 |
arbejder_jobstatus |
integer | optional | Must have an exact length of 1 |
arbejder_afloenningsform |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_loen |
integer | optional | Must have an exact length of 1 and 0 or 1 |
arbejder_landekode |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_andetarbejdssted |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_personalegruppe |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_email |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_dabarsel |
integer | optional | Between: 0 and 9 |
arbejder_frivilligtraekprocent |
integer | optional | Between: 0 and 20 |
arbejder_beskaeftigelseskode |
integer | optional | Must have a length between 1 and 2 |
arbejder_produktionsenhedsnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_groenlandskkommune |
integer | optional | Must have a length between 1 and 3 |
arbejder_skattekort |
string | optional | H , B , M , h , b or m |
arbejder_dalouddannelsesbidrag |
integer | optional | Must have a length between 1 and 2 |
arbejder_udlaertdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_arbejdsfunktion2 |
integer | optional | Must have a length between 1 and 6 |
arbejder_sundhedsordning |
integer | optional | Must have a length between 1 and 2 |
arbejder_mokode |
integer | optional | Must have a length between 1 and 5 |
arbejder_eboks |
string | optional | Maximum: 1 and J , N , M , P , j , n , m or p |
arbejder_loesarbejder |
string | optional | Maximum: 1 and J , N , j or n |
arbejder_mailkode |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fhkode |
string | optional | Maximum: 3 and can only contain A-Å 0-9 |
arbejder_tilladnegativloen |
integer | optional | Between: 0 and 1 |
arbejder_kompetencefond |
integer | optional | Must have a length between 1 and 5 |
arbejder_samarbuddannelsesfond |
integer | optional | Must have a length between 1 and 5 |
arbejder_ansaettelsesforhold |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_anciennitetsdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_tekst1 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst2 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst3 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst4 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst5 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_overenskomsttekst |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id |
integer | optional | Valid opgoerelsesperiodetype opgoerelsesperiodetype_id |
opgoerelsesperiodemedarbejder_valg |
integer | optional | Minimum: 1 and maximum: 31 |
Update employee, draft via PUT
The functionality is the same as for the PATCH request - Only difference is the HTTP PUT request method. It enables systems, which native cannot issue a PATCH, to do so using PUT. The PUT requirements have been relaxed to match the PATCH requirement in that not all fields are required.
Update draft of employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/draft"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_profil": "YYf=rzHs",
"arbejder_fornavn": "J4k&8AlNBS'0Ph\/OyYhoE ",
"arbejder_efternavn": "5NK6ILN=0MlmKVRgqg2tqA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 40366,
"arbejder_bankkontonr": "frOoa,X3Pd",
"arbejder_atpkode": 1,
"arbejder_feriekode": 3,
"arbejder_shkode": 1,
"arbejder_ampension": 73,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 4,
"arbejder_ansaettelsevilkaer": 4,
"arbejder_jobstatus": 6,
"arbejder_afloenningsform": "DR",
"arbejder_loen": 0,
"arbejder_landekode": "Ge",
"arbejder_andetarbejdssted": "K",
"arbejder_personalegruppe": "4",
"arbejder_email": "[email protected]:H6NfbopCTnPD77wn>btfu(1XAY\/3OMxuYfuV4\/%tTs3p5llKeqN9=K",
"arbejder_dabarsel": 9,
"arbejder_frivilligtraekprocent": 12,
"arbejder_beskaeftigelseskode": 472,
"arbejder_produktionsenhedsnr": "xk8LUf,=:",
"arbejder_groenlandskkommune": 740607,
"arbejder_skattekort": "h",
"arbejder_dalouddannelsesbidrag": 3,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 41,
"arbejder_sundhedsordning": 1,
"arbejder_mokode": 482,
"arbejder_eboks": "j",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "_0pk=ZJ%usoBQrBgf,C",
"arbejder_fhkode": "SuW",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 7267811,
"arbejder_samarbuddannelsesfond": 2599,
"arbejder_ansaettelsesforhold": "rf",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7
}
fetch(url, {
method: "PUT",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->put(
'https://mit.proloen.dk/api/company/1/employee/1/draft',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_profil' => 'YYf=rzHs',
'arbejder_fornavn' => 'J4k&8AlNBS\'0Ph/OyYhoE ',
'arbejder_efternavn' => '5NK6ILN=0MlmKVRgqg2tqA',
'arbejder_adresse1' => '@!e\'[email protected] 58IRTKqGiZyj',
'arbejder_adresse2' => '[email protected],zFLoZB',
'arbejder_postnr' => 95411677,
'arbejder_by' => 'ra6s5bZ83B:8bRTACEDiQE',
'arbejder_cprnr' => '/Kns2k8,Wq',
'arbejder_ansatdato' => '2021-01-13',
'arbejder_rejstdato' => '2021-01-13',
'arbejder_afdeling' => 7,
'arbejder_skattefrd1dag' => 9016287,
'arbejder_skattefrdperioden' => 3,
'arbejder_traekprocent' => 8,
'arbejder_restfrikort' => 119,
'arbejder_bankregnr' => 40366,
'arbejder_bankkontonr' => 'frOoa,X3Pd',
'arbejder_atpkode' => 1,
'arbejder_feriekode' => 3,
'arbejder_shkode' => 1,
'arbejder_ampension' => 73,
'arbejder_amstartdato' => '2021-01-13',
'arbejder_ansaettelsestype' => 4,
'arbejder_ansaettelsevilkaer' => 4,
'arbejder_jobstatus' => 6,
'arbejder_afloenningsform' => 'DR',
'arbejder_loen' => 0,
'arbejder_landekode' => 'Ge',
'arbejder_andetarbejdssted' => 'K',
'arbejder_personalegruppe' => '4',
'arbejder_email' => '[email protected]:H6NfbopCTnPD77wn>btfu(1XAY/3OMxuYfuV4/%tTs3p5llKeqN9=K',
'arbejder_dabarsel' => 9,
'arbejder_frivilligtraekprocent' => 12,
'arbejder_beskaeftigelseskode' => 472,
'arbejder_produktionsenhedsnr' => 'xk8LUf,=:',
'arbejder_groenlandskkommune' => 740607,
'arbejder_skattekort' => 'h',
'arbejder_dalouddannelsesbidrag' => 3,
'arbejder_udlaertdato' => '2021-01-13',
'arbejder_arbejdsfunktion2' => 41,
'arbejder_sundhedsordning' => 1,
'arbejder_mokode' => 482,
'arbejder_eboks' => 'j',
'arbejder_loesarbejder' => 'N',
'arbejder_mailkode' => '_0pk=ZJ%usoBQrBgf,C',
'arbejder_fhkode' => 'SuW',
'arbejder_tilladnegativloen' => 1,
'arbejder_kompetencefond' => 7267811,
'arbejder_samarbuddannelsesfond' => 2599,
'arbejder_ansaettelsesforhold' => 'rf',
'arbejder_anciennitetsdato' => '2021-01-13',
'arbejder_tekst1' => 'f \'hB3dL9QJ7n,RO49_na2&zx',
'arbejder_tekst2' => '[email protected]=XoY:[email protected]',
'arbejder_tekst3' => 'HXlTy,Vm-N-:b 0nl|[email protected]',
'arbejder_tekst4' => 'TbBfbt2c73pvj44Uj lQ{Bm0E',
'arbejder_tekst5' => 'haNoPK}PR\'1ivek38L1Cu4 mT',
'arbejder_overenskomsttekst' => 'U8:,jYGtsr,@aoN8e7d9BpGAD',
'opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id' => 627633731,
'opgoerelsesperiodemedarbejder_valg' => 7,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/draft'
payload = {
"arbejder_profil": "YYf=rzHs",
"arbejder_fornavn": "J4k&8AlNBS'0Ph\/OyYhoE ",
"arbejder_efternavn": "5NK6ILN=0MlmKVRgqg2tqA",
"arbejder_adresse1": "@!e'[email protected] 58IRTKqGiZyj",
"arbejder_adresse2": "[email protected],zFLoZB",
"arbejder_postnr": 95411677,
"arbejder_by": "ra6s5bZ83B:8bRTACEDiQE",
"arbejder_cprnr": "\/Kns2k8,Wq",
"arbejder_ansatdato": "2021-01-13",
"arbejder_rejstdato": "2021-01-13",
"arbejder_afdeling": 7,
"arbejder_skattefrd1dag": 9016287,
"arbejder_skattefrdperioden": 3,
"arbejder_traekprocent": 8,
"arbejder_restfrikort": 119,
"arbejder_bankregnr": 40366,
"arbejder_bankkontonr": "frOoa,X3Pd",
"arbejder_atpkode": 1,
"arbejder_feriekode": 3,
"arbejder_shkode": 1,
"arbejder_ampension": 73,
"arbejder_amstartdato": "2021-01-13",
"arbejder_ansaettelsestype": 4,
"arbejder_ansaettelsevilkaer": 4,
"arbejder_jobstatus": 6,
"arbejder_afloenningsform": "DR",
"arbejder_loen": 0,
"arbejder_landekode": "Ge",
"arbejder_andetarbejdssted": "K",
"arbejder_personalegruppe": "4",
"arbejder_email": "[email protected]:H6NfbopCTnPD77wn>btfu(1XAY\/3OMxuYfuV4\/%tTs3p5llKeqN9=K",
"arbejder_dabarsel": 9,
"arbejder_frivilligtraekprocent": 12,
"arbejder_beskaeftigelseskode": 472,
"arbejder_produktionsenhedsnr": "xk8LUf,=:",
"arbejder_groenlandskkommune": 740607,
"arbejder_skattekort": "h",
"arbejder_dalouddannelsesbidrag": 3,
"arbejder_udlaertdato": "2021-01-13",
"arbejder_arbejdsfunktion2": 41,
"arbejder_sundhedsordning": 1,
"arbejder_mokode": 482,
"arbejder_eboks": "j",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "_0pk=ZJ%usoBQrBgf,C",
"arbejder_fhkode": "SuW",
"arbejder_tilladnegativloen": 1,
"arbejder_kompetencefond": 7267811,
"arbejder_samarbuddannelsesfond": 2599,
"arbejder_ansaettelsesforhold": "rf",
"arbejder_anciennitetsdato": "2021-01-13",
"arbejder_tekst1": "f 'hB3dL9QJ7n,RO49_na2&zx",
"arbejder_tekst2": "[email protected]=XoY:[email protected]",
"arbejder_tekst3": "HXlTy,Vm-N-:b 0nl|[email protected]",
"arbejder_tekst4": "TbBfbt2c73pvj44Uj lQ{Bm0E",
"arbejder_tekst5": "haNoPK}PR'1ivek38L1Cu4 mT",
"arbejder_overenskomsttekst": "U8:,jYGtsr,@aoN8e7d9BpGAD",
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 627633731,
"opgoerelsesperiodemedarbejder_valg": 7
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejder_firma": 123,
"arbejder_nr": 1234,
"arbejder_arbejdertype": 2,
"arbejder_profil": "SXSV",
"arbejder_fornavn": "MED",
"arbejder_efternavn": "ARBEJDER",
"arbejder_adresse1": "NAVNVEJ 1",
"arbejder_adresse2": "",
"arbejder_postnr": 2100,
"arbejder_by": "KØBENHAVN Ø.",
"arbejder_cprnr": "1211100908",
"arbejder_ansatdato": "2016-09-01",
"arbejder_rejstdato": 0,
"arbejder_afdeling": 1,
"arbejder_skattefrd1dag": 0,
"arbejder_skattefrdperioden": 0,
"arbejder_traekprocent": 40,
"arbejder_restfrikort": 0,
"arbejder_bankregnr": 1234,
"arbejder_bankkontonr": "12345678 ",
"arbejder_atpkode": 1,
"arbejder_feriekode": 1,
"arbejder_shkode": 1,
"arbejder_ampension": 0,
"arbejder_amstartdato": 0,
"arbejder_ansaettelsestype": 1,
"arbejder_ansaettelsevilkaer": 3,
"arbejder_jobstatus": 9,
"arbejder_afloenningsform": "1",
"arbejder_arbejdsstedda": 10,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdstamdata": "2016-10-11",
"arbejder_sidstopdtrans": "2017-07-25",
"arbejder_slettet": "0",
"arbejder_loen": 0,
"arbejder_changed": 0,
"arbejder_landekode": "",
"arbejder_andetarbejdssted": "",
"arbejder_personalegruppe": "",
"arbejder_gennemsnitloen": 0,
"arbejder_email": "[email protected]",
"arbejder_bemaerkning1": "",
"arbejder_bemaerkning2": "",
"arbejder_sletbemaerkning": "J",
"arbejder_dabarsel": "1",
"arbejder_garantiloenfuldtid": 0,
"arbejder_garantiloendeltid": 0,
"arbejder_frivilligtraekprocent": 0,
"arbejder_beskaeftigelseskode": 0,
"arbejder_produktionsenhedsnr": "1007509800",
"arbejder_groenlandskkommune": 0,
"arbejder_fritagelsesattest": "",
"arbejder_overfoert": 0,
"arbejder_skattekort": "B",
"arbejder_dalouddannelsesbidrag": 1,
"arbejder_udlaertdato": 0,
"arbejder_arbejdsfunktion2": 751200,
"arbejder_sundhedsordning": 0,
"arbejder_mokode": 0,
"arbejder_eboks": "N",
"arbejder_loesarbejder": "N",
"arbejder_mailkode": "",
"arbejder_fhkode": "",
"arbejder_tilladnegativloen": 0,
"arbejder_kompetencefond": 0,
"arbejder_samarbuddannelsesfond": 0,
"arbejder_ansaettelsesforhold": "",
"arbejder_anciennitetsdato": "2016-09-01",
"arbejder_tekst1": "",
"arbejder_tekst2": "",
"arbejder_tekst3": "",
"arbejder_tekst4": "",
"arbejder_tekst5": "",
"arbejder_overenskomsttekst": "",
"arbejder_kladde": 1,
"arbejderafdeling": false,
"opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id": 2,
"opgoerelsesperiodebestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_til_dato": "2019-10-11",
"opgoerelsesperiodebestilt_bestilt_fra_dato": "2019-09-12",
"opgoerelsesperiodebestilt_bestilt_til_dato": 0,
"opgoerelsesperiodemedarbejder_valg": 12
}
]
HTTP Request
PUT api/company/{companyId}/employee/{employeeId}/draft
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Important business Rules
- If the company has departments, the arbejder_afdeling must be set to the number/ID of one of these.If no departments exists, then the arbejder_afdeling is set to 0
- arbejder_bankregnr can only be set to '0' if arbejder_bankkontonr is 'kontant', else it must be set to a 4 digit number
- arbejder_cprnr can be used multiple times within the same company, but only one of the employees can have arbejder_skattekort set to 'H' (Hovedkort), the rest must have the value 'B' (Bikort)
- arbejder_atpkode is depended on the field arbejder_arbejdertype, i.e. arbejder_arbejdertype must also be set if arbejder_atpkode is to be set
- arbejder_shkode can only be set to 0 if arbejder_atpkode is also set to 0
- The fields arbejder_skattefrd1dag, arbejder_skattefrdperioden, arbejder_traekprocent and arbejder_restfrikort can only be set, if the company has enabled manual tax reporting, else these values are pulled from Skat.dk over night once the employee has been created
- The fields arbejder_ansaettelsestype, arbejder_ansaettelsevilkaer, arbejder_arbejdsfunktion2 (Disco-08), arbejder_jobstatus and arbejder_afloenningsform is only to be set if the company is set to be reporting statistics
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejder_profil |
string | optional | Maximum: 8 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fornavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_efternavn |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse1 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_adresse2 |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_postnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_by |
string | optional | Maximum: 22 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_cprnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_ansatdato |
date | optional | Date format: Y-m-d |
arbejder_rejstdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_afdeling |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrd1dag |
integer | optional | Must have a length between 1 and 5 |
arbejder_skattefrdperioden |
integer | optional | Must have a length between 1 and 5 |
arbejder_traekprocent |
integer | optional | Must have a length between 1 and 3 |
arbejder_restfrikort |
integer | optional | Must have a length between 1 and 7 |
arbejder_bankregnr |
integer | optional | Must have a length between 1 and 4 |
arbejder_bankkontonr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_atpkode |
integer | optional | 0 , 1 , 2 , 4 , 5 or 6 |
arbejder_feriekode |
integer | optional | Must have an exact length of 1 |
arbejder_shkode |
integer | optional | Must have an exact length of 1 |
arbejder_ampension |
integer | optional | Must have a length between 1 and 4 |
arbejder_amstartdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_ansaettelsestype |
integer | optional | Must have an exact length of 1 |
arbejder_ansaettelsevilkaer |
integer | optional | Must have an exact length of 1 |
arbejder_jobstatus |
integer | optional | Must have an exact length of 1 |
arbejder_afloenningsform |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_loen |
integer | optional | Must have an exact length of 1 and 0 or 1 |
arbejder_landekode |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_andetarbejdssted |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_personalegruppe |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
arbejder_email |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
arbejder_dabarsel |
integer | optional | Between: 0 and 9 |
arbejder_frivilligtraekprocent |
integer | optional | Between: 0 and 20 |
arbejder_beskaeftigelseskode |
integer | optional | Must have a length between 1 and 2 |
arbejder_produktionsenhedsnr |
string | optional | Maximum: 10 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_groenlandskkommune |
integer | optional | Must have a length between 1 and 3 |
arbejder_skattekort |
string | optional | H , B , M , h , b or m |
arbejder_dalouddannelsesbidrag |
integer | optional | Must have a length between 1 and 2 |
arbejder_udlaertdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_arbejdsfunktion2 |
integer | optional | Must have a length between 1 and 6 |
arbejder_sundhedsordning |
integer | optional | Must have a length between 1 and 2 |
arbejder_mokode |
integer | optional | Must have a length between 1 and 5 |
arbejder_eboks |
string | optional | Maximum: 1 and J , N , M , P , j , n , m or p |
arbejder_loesarbejder |
string | optional | Maximum: 1 and J , N , j or n |
arbejder_mailkode |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_fhkode |
string | optional | Maximum: 3 and can only contain A-Å 0-9 |
arbejder_tilladnegativloen |
integer | optional | Between: 0 and 1 |
arbejder_kompetencefond |
integer | optional | Must have a length between 1 and 5 |
arbejder_samarbuddannelsesfond |
integer | optional | Must have a length between 1 and 5 |
arbejder_ansaettelsesforhold |
string | optional | Maximum: 2 and can only contain A-Å 0-9 |
arbejder_anciennitetsdato |
date | optional | Date format: Y-m-d or 0 |
arbejder_tekst1 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst2 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst3 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst4 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_tekst5 |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejder_overenskomsttekst |
string | optional | Maximum: 25 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
opgoerelsesperiodemedarbejder_opgoerelsesperiodetype_id |
integer | optional | Valid opgoerelsesperiodetype opgoerelsesperiodetype_id |
opgoerelsesperiodemedarbejder_valg |
integer | optional | Minimum: 1 and maximum: 31 |
Delete draft employee.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/draft"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/employee/1/draft',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/draft'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/employee/{employeeId}/draft
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
CPR number in use
Return whether or not the given CPR number is used for given company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/cprinuse"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejder_cprnr": "quod"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/employee/cprinuse',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejder_cprnr' => 'quod',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/cprinuse'
payload = {
"arbejder_cprnr": "quod"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"inUse": false
}
HTTP Request
POST api/company/{companyId}/employee/cprinuse
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejder_cprnr |
string | required | Must have the size of 10 |
Get department distribution
Get the department distribution for employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/departmentdistribution"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/departmentdistribution',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/departmentdistribution'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejderafdeling_id": 1,
"arbejderafdeling_firma_nr": 123,
"arbejderafdeling_arbejder_nr": 1234,
"arbejderafdeling_afdeling_nr": 1,
"arbejderafdeling_procent": 30
}
]
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/departmentdistribution
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Update Department distribution
Sum of arbejderafdeling_procent
procentages must be either 0 or 100.
Each individual procentage must be an float between 0.0000 and 100.0000, both included.
A department can only be listed once and must be related to the company.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/departmentdistribution"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"departmentdistributionlist": [
{
"arbejderafdeling_afdeling_nr": 78509,
"arbejderafdeling_procent": 67.4728
}
]
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/employee/1/departmentdistribution',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'departmentdistributionlist' => [
[
'arbejderafdeling_afdeling_nr' => 78509,
'arbejderafdeling_procent' => 67.4728,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/departmentdistribution'
payload = {
"departmentdistributionlist": [
{
"arbejderafdeling_afdeling_nr": 78509,
"arbejderafdeling_procent": 67.4728
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/employee/{employeeId}/departmentdistribution
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
departmentdistributionlist |
array | optional | |
departmentdistributionlist.*.arbejderafdeling_afdeling_nr |
integer | required | Between: 0 and 99999 |
departmentdistributionlist.*.arbejderafdeling_procent |
numeric | required | Between: 0.0000 and 100.0000 |
Get time factor
Used when calculating batch on salary transactions
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/timefactor"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/timefactor',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/timefactor'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenart_sats": 1.22,
"loenart_nr": 1002
}
]
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/timefactor
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Employee FH Code (FH koder)
Get FH Code List from mo
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/mocode/1/fhcode"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/mocode/1/fhcode',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/mocode/1/fhcode'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"fhkoder_fhkode": "FH1",
"fhkoder_ansat": 0,
"fhkodebeskrivelse_tekst": "TOTALT DIGITALT EFERIEKORT I E-BOKS"
}
]
HTTP Request
GET api/company/{companyId}/employment/mocode/{moCodeId}/fhcode
Requirements
- User is logged in
Get FH Code List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/fhcode"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/fhcode',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/fhcode'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"fhkodebeskrivelse_nr": "FH1",
"fhkodebeskrivelse_tekst": "TOTALT DIGITALT EFERIEKORT I E-BOKS"
}
]
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/fhcode
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single FH Code
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/fhcode/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/fhcode/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/fhcode/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"fhkodebeskrivelse_nr": "FH1",
"fhkodebeskrivelse_tekst": "TOTALT DIGITALT EFERIEKORT I E-BOKS"
}
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/fhcode/{fhcodeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Employee SH code (Sh kode)
Get SH code list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeeshcode"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeeshcode',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeeshcode'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"shkode_firma": 123,
"shkode_nr": 1,
"shkode_tekst": "SH-OPSPARING"
}
]
HTTP Request
GET api/company/{companyId}/employeeshcode
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single SH code
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeeshcode/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeeshcode/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeeshcode/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"shkode_firma": 123,
"shkode_nr": 1,
"shkode_tekst": "SH-OPSPARING"
}
HTTP Request
GET api/company/{companyId}/employeeshcode/{shcodeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Employee type (Arbejder type)
Employee type, list
Get employee type list
Employee type contains
- arbejdertype_sklargjortdato
- arbejdertype_sklargjortkl
- arbejdertype_bestiltdato
- arbejdertype_bestiltkl
- arbejdertype_dispdato
- arbejdertype_bruttonloen
- arbejdertype_bemaerkning1
- arbejdertype_bemaerkning2
- arbejdertype_sletbemaerkning
- arbejdertype_testkoersel
- arbejdertype_ekstra
- arbejdertype_notat
- arbejdertypebeskrivelse_navn
- arbejdertypebeskrivelse_nr
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeetype',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejdertype_nr": 1,
"arbejdertype_firma": 123,
"arbejdertype_sklargjortdato": "2017-02-17",
"arbejdertype_sklargjortkl": 1537,
"arbejdertype_bestiltdato": 0,
"arbejdertype_bestiltkl": null,
"arbejdertype_dispdato": 0,
"arbejdertype_bruttonloen": 21500,
"arbejdertype_bemaerkning1": "",
"arbejdertype_bemaerkning2": "",
"arbejdertype_sletbemaerkning": "J",
"arbejdertype_testkoersel": "0",
"arbejdertype_ekstra": "0000000000",
"arbejdertype_notat": "",
"arbejdertypebeskrivelse_nr": "1",
"arbejdertypebeskrivelse_navn": "14-dages-løn"
}
]
HTTP Request
GET api/company/{companyId}/employeetype
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Error in transaction, employee list
Get list of employee with error in transactions for employee type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype/1/employeeswitherrors"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeetype/1/employeeswitherrors',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype/1/employeeswitherrors'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejder_nr": 1234,
"arbejder_fornavn": "Jens",
"arbejder_efternavn": "Pedersen"
}
]
HTTP Request
GET api/company/{companyId}/employeetype/{employeeTypeId}/employeeswitherrors
Requirements
- User is logged in
- User has access to company
- User has access right to salary.order.read or salary.approve.read
Get single employee type
Also known as 'last order'
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeetype/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejder_nr": 1234,
"arbejder_fornavn": "Jens",
"arbejder_efternavn": "Pedersen"
}
]
HTTP Request
GET api/company/{companyId}/employeetype/{employeeTypeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single employee type
Also known as 'last order'
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salary/employeetype/1/lastorder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salary/employeetype/1/lastorder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salary/employeetype/1/lastorder'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejder_nr": 1234,
"arbejder_fornavn": "Jens",
"arbejder_efternavn": "Pedersen"
}
]
HTTP Request
GET api/company/{companyId}/salary/employeetype/{employeeTypeId}/lastorder
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Description list
Get description list for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype/description"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeetype/description',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype/description'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejdertypebeskrivelse_nr": 1,
"arbejdertypebeskrivelse_navn": "14-dages-løn"
}
]
HTTP Request
GET api/company/{companyId}/employeetype/description
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Description
Get single employee type description
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype/description/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeetype/description/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype/description/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"arbejdertypebeskrivelse_nr": 1,
"arbejdertypebeskrivelse_navn": "14-dages-løn"
}
HTTP Request
GET api/company/{companyId}/employeetype/description/{employeeTypeDescriptionId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Update notes
Update employee type notes
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype/1/notes"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejdertype_bemaerkning1": "qCBe3P9TAia%[email protected]'=VqnbEP5FLWe*,3O2wZVL:4zkrrq=*iTQTWIqgxdkNb\/UwVZxN",
"arbejdertype_bemaerkning2": "sNd%[email protected]_G2vWrWPhoW4=RBTxgoViGkOK\/[email protected]\/@jLy-2Q",
"arbejdertype_sletbemaerkning": false
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/employeetype/1/notes',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejdertype_bemaerkning1' => 'qCBe3P9TAia%[email protected]\'=VqnbEP5FLWe*,3O2wZVL:4zkrrq=*iTQTWIqgxdkNb/UwVZxN',
'arbejdertype_bemaerkning2' => 'sNd%[email protected]_G2vWrWPhoW4=RBTxgoViGkOK/[email protected]/@jLy-2Q',
'arbejdertype_sletbemaerkning' => false,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype/1/notes'
payload = {
"arbejdertype_bemaerkning1": "qCBe3P9TAia%[email protected]'=VqnbEP5FLWe*,3O2wZVL:4zkrrq=*iTQTWIqgxdkNb\/UwVZxN",
"arbejdertype_bemaerkning2": "sNd%[email protected]_G2vWrWPhoW4=RBTxgoViGkOK\/[email protected]\/@jLy-2Q",
"arbejdertype_sletbemaerkning": false
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/employeetype/{employeeTypeId}/notes
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejdertype_bemaerkning1 |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejdertype_bemaerkning2 |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
arbejdertype_sletbemaerkning |
boolean | optional |
Reset (klargør)
Resets all salary transactions for employee type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salary/employeetype/1/reset"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "POST",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salary/employeetype/1/reset',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salary/employeetype/1/reset'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers)
response.json()
HTTP Request
POST api/company/{companyId}/salary/employeetype/{employeeTypeId}/reset
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Recalculate
Recalculate estimated salary for all employees in a company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salary/recalculate"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "POST",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salary/recalculate',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salary/recalculate'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers)
response.json()
HTTP Request
POST api/company/{companyId}/salary/recalculate
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Employment (Beskæftigelse)
Get AM pension list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/ampension"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/ampension',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/ampension'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenart_nr": 8910,
"loenart_tekst": "PENSION\/BAGERI"
}
]
HTTP Request
GET api/company/{companyId}/ampension
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single AM pension
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/ampension/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/ampension/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/ampension/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"loenart_nr": 8910,
"loenart_tekst": "PENSION\/BAGERI"
}
HTTP Request
GET api/company/{companyId}/ampension/{amPensionId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get MO code list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/mocode"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/mocode',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/mocode'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"mokode_nr": 1000,
"mokode_tekst": "DI"
}
]
HTTP Request
GET api/company/{companyId}/employment/mocode
Requirements
- User is logged in
Get single MO code
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/mocode/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/mocode/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/mocode/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"mokode_nr": 1101,
"mokode_tekst": "Dansk Mode & Testil"
}
HTTP Request
GET api/company/{companyId}/employment/mocode/{moCodeId}
Requirements
- User is logged in
Get ATP code list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype/1/atpcode"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeetype/1/atpcode',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype/1/atpcode'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"atpkode_firma": 123,
"atpkode_arbejdertype": 2,
"atpkode_nr": 0,
"atpkode_tekst": "INGEN ATP"
}
]
HTTP Request
GET api/company/{companyId}/employeetype/{employeeTypeId}/atpcode
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single ATP code
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employeetype/1/atpcode/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employeetype/1/atpcode/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employeetype/1/atpcode/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"atpkode_firma": 500,
"atpkode_arbejdertype": 2,
"atpkode_nr": 1,
"atpkode_tekst": "PERIODEN TIMER FOR ATP-BEREGNING"
}
HTTP Request
GET api/company/{companyId}/employeetype/{employeeTypeId}/atpcode/{atpCodeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get employment type list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/type"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/type',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/type'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"ansaettelsestypekode_nr": 1,
"ansaettelsestypekode_tekst": "Ikke tidsbegrænset"
}
]
HTTP Request
GET api/company/{companyId}/employment/type
Requirements
- User is logged in
Get single employment type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/type/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/type/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/type/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"ansaettelsestypekode_nr": 2,
"ansaettelsestypekode_tekst": "Tidsbegrænset"
}
HTTP Request
GET api/company/{companyId}/employment/type/{employmentTypeId}
Requirements
- User is logged in
Get terms of employment list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/termsofemployment"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/termsofemployment',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/termsofemployment'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"ansaettelsesvilkaarkode_nr": 1,
"ansaettelsesvilkaarkode_tekst": "Funktionær"
}
]
HTTP Request
GET api/company/{companyId}/employment/termsofemployment
Requirements
- User is logged in
Get single terms of employment
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/termsofemployment/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/termsofemployment/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/termsofemployment/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"ansaettelsesvilkaarkode_nr": 2,
"ansaettelsesvilkaarkode_tekst": "Arbejder, funktionærlignende"
}
HTTP Request
GET api/company/{companyId}/employment/termsofemployment/{termsOfEmploymentId}
Requirements
- User is logged in
Get employment terms list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/terms"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/terms',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/terms'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"ansaettelsesforhold_nr": "",
"ansaettelsesforhold_tekst": "Lønmodtager"
}
]
HTTP Request
GET api/company/{companyId}/employment/terms
Requirements
- User is logged in
Get some employment terms
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/terms/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/terms/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/terms/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"ansaettelsesforhold_nr": "62",
"ansaettelsesforhold_tekst": "Fleksjob"
}
HTTP Request
GET api/company/{companyId}/employment/terms/{employmentTermsId}
Requirements
- User is logged in
Get job status list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/jobstatus"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/jobstatus',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/jobstatus'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"jobstatuskode_nr": 1,
"jobstatuskode_tekst": "Elev\/lærling"
}
]
HTTP Request
GET api/company/{companyId}/employment/jobstatus
Requirements
- User is logged in
Get single job status
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/jobstatus/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/jobstatus/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/jobstatus/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"jobstatuskode_nr": 3,
"jobstatuskode_tekst": "Leder af en gruppe"
}
HTTP Request
GET api/company/{companyId}/employment/jobstatus/{jobStatusId}
Requirements
- User is logged in
Get remuneration List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/remuneration"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/remuneration',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/remuneration'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"afloenningsformkode_nr": 1,
"afloenningsformkode_tekst": "Tidløn"
}
]
HTTP Request
GET api/company/{companyId}/employment/remuneration
Requirements
- User is logged in
Get single remuneration
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/remuneration/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/remuneration/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/remuneration/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"afloenningsformkode_nr": 4,
"afloenningsformkode_tekst": "Fast løn uden overtidsbetaling"
}
HTTP Request
GET api/company/{companyId}/employment/remuneration/{remunerationId}
Requirements
- User is logged in
Greenlandmunicipality list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/greenlandmunicipality"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/greenlandmunicipality',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/greenlandmunicipality'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"groenlandskkommune_nr": 901,
"groenlandskkommune_tekst": "Qasigiannguit Kommune"
}
]
HTTP Request
GET api/company/{companyId}/employment/greenlandmunicipality
Requirements
- User is logged in
Get single Greenlandmunicipality
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/greenlandmunicipality/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/greenlandmunicipality/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/greenlandmunicipality/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"groenlandskkommune_nr": 901,
"groenlandskkommune_tekst": "Qasigiannguit Kommune"
}
HTTP Request
GET api/company/{companyId}/employment/greenlandmunicipality/{greenlandmunicipalityId}
Requirements
- User is logged in
Get employment code list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/code"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/code',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/code'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"beskaeftigelseskode_nr": 0,
"beskaeftigelseskode_tekst": "Almindelige lønmodtagere"
}
]
HTTP Request
GET api/company/{companyId}/employment/code
Requirements
- User is logged in
Get single employment code
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/code/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/code/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/code/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"beskaeftigelseskode_nr": 0,
"beskaeftigelseskode_tekst": "Almindelige lønmodtagere"
}
HTTP Request
GET api/company/{companyId}/employment/code/{employmentCodeId}
Requirements
- User is logged in
Get DA/LO list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/dalo"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/dalo',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/dalo'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"dalouddannelsesbidrag_nr": 0,
"dalouddannelsesbidrag_tekst": "INGEN BIDRAG"
}
]
HTTP Request
GET api/company/{companyId}/employment/dalo
Requirements
- User is logged in
Get single DA/LO
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/dalo/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/dalo/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/dalo/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"dalouddannelsesbidrag_nr": 0,
"dalouddannelsesbidrag_tekst": "INGEN BIDRAG"
}
HTTP Request
GET api/company/{companyId}/employment/dalo/{daloId}
Requirements
- User is logged in
Get competence List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/competence"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/competence',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/competence'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"kompetencefond_nr": 0,
"kompetencefond_tekst": "INGEN"
}
]
HTTP Request
GET api/company/{companyId}/employment/competence
Requirements
- User is logged in
Get single competence
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/competence/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/competence/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/competence/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"kompetencefond_nr": 10013,
"kompetencefond_tekst": "OVERENSKOMST FOR SERVICESTATIONER (BOA)"
}
HTTP Request
GET api/company/{companyId}/employment/competence/{competenceId}
Requirements
- User is logged in
Get training List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/training"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/training',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/training'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"samarbuddannelsesfond_nr": 0,
"samarbuddannelsesfond_tekst": "INGEN"
}
]
HTTP Request
GET api/company/{companyId}/employment/training
Requirements
- User is logged in
Get single training
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/training/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/training/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/training/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"samarbuddannelsesfond_nr": 10013,
"samarbuddannelsesfond_tekst": "OVERENSKOMST FOR SERVICESTATIONER (BOA)"
}
HTTP Request
GET api/company/{companyId}/employment/training/{trainingId}
Requirements
- User is logged in
Get health care List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/healthcare"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/healthcare',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/healthcare'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"sundhedsordning_nr": 0,
"sundhedsordning_tekst": "NEJ"
}
]
HTTP Request
GET api/company/{companyId}/employment/healthcare
Requirements
- User is logged in
Get single health care
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employment/healthcare/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employment/healthcare/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employment/healthcare/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"sundhedsordning_nr": 1,
"sundhedsordning_tekst": "119 MED PD-PENS. - SAMLET"
}
HTTP Request
GET api/company/{companyId}/employment/healthcare/{healthCareId}
Requirements
- User is logged in
Get vacation code list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/vacationcode"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/vacationcode',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/vacationcode'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"feriekode_firma": 123,
"feriekode_nr": 0,
"feriekode_tekst": "FERIE MED LØN"
}
]
HTTP Request
GET api/company/{companyId}/vacationcode
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single vacation code
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/vacationcode/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/vacationcode/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/vacationcode/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"feriekode_firma": 500,
"feriekode_nr": 1,
"feriekode_tekst": "FERIEOPSPARING"
}
HTTP Request
GET api/company/{companyId}/vacationcode/{vacationCodeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get Maternity list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/maternity"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/maternity',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/maternity'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"barsel_firma": 123,
"barsel_nr": 0,
"barsel_tekst": "INGEN BARSELSORDNING"
}
]
HTTP Request
GET api/company/{companyId}/maternity
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single maternity
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/maternity/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/maternity/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/maternity/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"barsel_firma": 123,
"barsel_nr": 1,
"barsel_tekst": "DA-BARSEL"
}
HTTP Request
GET api/company/{companyId}/maternity/{maternityId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Holiday pay (Feriepenge)
Get all holiday pay for a single employee in the company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/holidaypay"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/holidaypay',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/holidaypay'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/holidaypay
Store holiday pay for a single employee in the company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/holidaypay"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"feriepenge": [
{
"feriepenge_dage": 45.9271,
"feriepenge_fra_dato": 0,
"feriepenge_til_dato": "2021-01-13"
}
]
}
fetch(url, {
method: "PUT",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->put(
'https://mit.proloen.dk/api/company/1/employee/1/holidaypay',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'feriepenge' => [
[
'feriepenge_dage' => 45.9271,
'feriepenge_fra_dato' => 0,
'feriepenge_til_dato' => '2021-01-13',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/holidaypay'
payload = {
"feriepenge": [
{
"feriepenge_dage": 45.9271,
"feriepenge_fra_dato": 0,
"feriepenge_til_dato": "2021-01-13"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
HTTP Request
PUT api/company/{companyId}/employee/{employeeId}/holidaypay
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
feriepenge |
array | optional | |
feriepenge.*.feriepenge_dage |
numeric | required | Between: 0 and 99.99 |
feriepenge.*.feriepenge_fra_dato |
date | required | Date format: Y-m-d or 0 |
feriepenge.*.feriepenge_til_dato |
date | required | Date format: Y-m-d or 0 |
Get all holiday pay for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/holidaypay"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/holidaypay',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/holidaypay'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/holidaypay
Industry (branche)
Get a list of industries
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/industry"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/industry',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/industry'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"brance_nr": 0,
"brance_navn": "DIVERSE \/ STANDARD",
"brance_haandboglink": ""
}
]
HTTP Request
GET api/company/{companyId}/industry
Requirements
- User is logged in
Get a single industry
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/industry/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/industry/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/industry/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"brance_nr": 0,
"brance_navn": "DIVERSE \/ STANDARD",
"brance_haandboglink": ""
}
HTTP Request
GET api/company/{companyId}/industry/{industryId}
Requirements
- User is logged in
store a industry
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/industry"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"brance_nr": 5605297,
"brance_navn": "@TAhPI3,wBLnTA\/:twZrX1ac=Lf%x7Oii='L2iNl1P%[email protected]+P5RR:sfzIKXYeu6hu&oUopX0d=MUBDtw,PHPqa6s5bZ83",
"brance_haandboglink": "Sequi qui fugiat tenetur adipisci perferendis autem. Modi aut aliquid autem alias accusamus. ...",
"brance_feriekode": 1,
"brance_personalegruppe": 1,
"brance_profil": 0
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/industry',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'brance_nr' => 5605297,
'brance_navn' => '@TAhPI3,wBLnTA/:twZrX1ac=Lf%x7Oii=\'L2iNl1P%[email protected]+P5RR:sfzIKXYeu6hu&oUopX0d=MUBDtw,PHPqa6s5bZ83',
'brance_haandboglink' => 'Sequi qui fugiat tenetur adipisci perferendis autem. Modi aut aliquid autem alias accusamus. ...',
'brance_feriekode' => 1,
'brance_personalegruppe' => 1,
'brance_profil' => 0,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/industry'
payload = {
"brance_nr": 5605297,
"brance_navn": "@TAhPI3,wBLnTA\/:twZrX1ac=Lf%x7Oii='L2iNl1P%[email protected]+P5RR:sfzIKXYeu6hu&oUopX0d=MUBDtw,PHPqa6s5bZ83",
"brance_haandboglink": "Sequi qui fugiat tenetur adipisci perferendis autem. Modi aut aliquid autem alias accusamus. ...",
"brance_feriekode": 1,
"brance_personalegruppe": 1,
"brance_profil": 0
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"brance_nr": 0,
"brance_navn": "DIVERSE \/ STANDARD",
"brance_haandboglink": ""
}
HTTP Request
POST api/company/{companyId}/industry
Requirements
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
brance_nr |
integer | required | |
brance_navn |
string | required | Maximum: 100 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
brance_haandboglink |
string | optional | Maximum: 255 |
brance_feriekode |
integer | required | 0 or 1 |
brance_personalegruppe |
integer | required | 0 or 1 |
brance_profil |
integer | required | 0 or 1 |
Update a industry
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/industry/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"brance_navn": "@TAhPI3,wBLnTA\/:twZrX1ac=Lf%x7Oii='L2iNl1P%[email protected]+P5RR:sfzIKXYeu6hu&oUopX0d=MUBDtw,PHPqa6s5bZ83",
"brance_haandboglink": "Sequi qui fugiat tenetur adipisci perferendis autem. Modi aut aliquid autem alias accusamus. ...",
"brance_feriekode": 1,
"brance_personalegruppe": 1,
"brance_profil": true
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/industry/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'brance_navn' => '@TAhPI3,wBLnTA/:twZrX1ac=Lf%x7Oii=\'L2iNl1P%[email protected]+P5RR:sfzIKXYeu6hu&oUopX0d=MUBDtw,PHPqa6s5bZ83',
'brance_haandboglink' => 'Sequi qui fugiat tenetur adipisci perferendis autem. Modi aut aliquid autem alias accusamus. ...',
'brance_feriekode' => 1,
'brance_personalegruppe' => 1,
'brance_profil' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/industry/1'
payload = {
"brance_navn": "@TAhPI3,wBLnTA\/:twZrX1ac=Lf%x7Oii='L2iNl1P%[email protected]+P5RR:sfzIKXYeu6hu&oUopX0d=MUBDtw,PHPqa6s5bZ83",
"brance_haandboglink": "Sequi qui fugiat tenetur adipisci perferendis autem. Modi aut aliquid autem alias accusamus. ...",
"brance_feriekode": 1,
"brance_personalegruppe": 1,
"brance_profil": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/industry/{industryId}
Requirements
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
brance_navn |
string | optional | Maximum: 100 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
brance_haandboglink |
string | optional | Maximum: 255 |
brance_feriekode |
integer | optional | 0 or 1 |
brance_personalegruppe |
integer | optional | 0 or 1 |
brance_profil |
boolean | optional |
Delete a industry
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/industry/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/industry/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/industry/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/industry/{industryId}
Requirements
- User is super admin
Logon log (Super Admin only)
Locked users
Get a list of user the is locked out
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/logonlog"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/logonlog',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/logonlog'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/logonlog
Requirements
- User is logged in
- User is super admin
Reset
Reset the logon log for the giving userId
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/resetlogonlock/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"ip": "Minus nemo fugit et laborum ut et commodi.",
"type": 2
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/resetlogonlock/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'ip' => 'Minus nemo fugit et laborum ut et commodi.',
'type' => 2,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/resetlogonlock/1'
payload = {
"ip": "Minus nemo fugit et laborum ut et commodi.",
"type": 2
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
HTTP Request
POST api/company/{companyId}/resetlogonlock/{userOrCompanyId}
Requirements
- User is logged in
- User has access to company
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
ip |
string | required | Maximum: 46 |
type |
integer | required | Must have an exact length of 1 |
Matrix
Display a listing of all the matrices for companyId
Deprecated
- Use
GET api/company/{companyId}/companymatrixversion
instead to find the active matrix for the company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/matrix"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/matrix',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/matrix'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"matrix_feltnr": 1,
"matrix_feltbeskrivelse": "MedarbejderNr",
"matrix_eksempel": 1234,
"arbejder_felt": "arbejder_nr",
"matrix_kraevet": true
}
]
HTTP Request
GET api/company/{companyId}/matrix
Requirements
- User is logged in
- User has access to company
- User has salary read
Display a listing of all the matrices
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/matrix/all"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/matrix/all',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/matrix/all'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"matrix_feltnr": 1,
"matrix_feltbeskrivelse": "MedarbejderNr",
"matrix_eksempel": 1234,
"arbejder_felt": "arbejder_nr",
"matrix_kraevet": true
}
]
HTTP Request
GET api/company/{companyId}/matrix/all
Requirements
- User is logged in
- User has access to company
Display the specified matrix field.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/matrix/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/matrix/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/matrix/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"matrix_feltnr": 1,
"matrix_feltbeskrivelse": "MedarbejderNr",
"matrix_eksempel": 1234,
"arbejder_felt": "arbejder_nr",
"matrix_kraevet": true
}
HTTP Request
GET api/company/{companyId}/matrix/{matrixFieldId}
Requirements
- User is logged in
- User has access to company
- User has salary read
Messages (besked system)
Get message list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"title": "Kursus",
"important": 1,
"reply_enabled": 0,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 0,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
}
]
HTTP Request
GET api/company/{companyId}/message
Requirements
- User is logged in
- User has access to company
Get unread message list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/unread"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/unread',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/unread'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"title": "Kursus",
"important": 1,
"reply_enabled": 1,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": "2018-05-01T09:39:00+02:00",
"starred": 1,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
},
{
"id": 2,
"title": "Kursus 2",
"important": 1,
"reply_enabled": 1,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 0,
"read_at": "2018-05-01T09:39:00+02:00",
"messagefolder_id": 1,
"comment_count": 11,
"unread_comments": 10
}
]
HTTP Request
GET api/company/{companyId}/message/unread
Requirements
- User is logged in
- User has access to company
Get inbox message list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/inbox"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/inbox',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/inbox'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"title": "Kursus",
"important": 1,
"reply_enabled": 0,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 0,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
}
]
HTTP Request
GET api/company/{companyId}/message/inbox
Requirements
- User is logged in
- User has access to company
Get archived message list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/archived"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/archived',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/archived'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"title": "Kursus",
"important": 1,
"reply_enabled": 0,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": "2018-05-01T09:39:00+02:00",
"starred": 0,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
}
]
HTTP Request
GET api/company/{companyId}/message/archived
Requirements
- User is logged in
- User has access to company
Get starred message list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/starred"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/starred',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/starred'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"title": "Kursus",
"important": 1,
"reply_enabled": 0,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": "2018-05-01T09:39:00+02:00",
"starred": 1,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
},
{
"id": 2,
"title": "Kursus 2",
"important": 0,
"reply_enabled": 1,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 1,
"read_at": "2018-05-01T09:39:00+02:00",
"messagefolder_id": 1,
"comment_count": 11,
"unread_comments": 10
}
]
HTTP Request
GET api/company/{companyId}/message/starred
Requirements
- User is logged in
- User has access to company
Get important message list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/important"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/important',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/important'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"title": "Kursus",
"important": 1,
"reply_enabled": 0,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": "2018-05-01T09:39:00+02:00",
"starred": 1,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
},
{
"id": 2,
"title": "Kursus 2",
"important": 1,
"reply_enabled": 1,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 0,
"read_at": "2018-05-01T09:39:00+02:00",
"messagefolder_id": 1,
"comment_count": 11,
"unread_comments": 10
}
]
HTTP Request
GET api/company/{companyId}/message/important
Requirements
- User is logged in
- User has access to company
Get sent message list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/sent"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/sent',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/sent'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"title": "Kursus",
"important": 0,
"reply_enabled": 1,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": "2018-05-01T09:39:00+02:00",
"starred": 1,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
},
{
"id": 2,
"title": "Kursus 2",
"important": 0,
"reply_enabled": 1,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 1,
"read_at": "2018-05-01T09:39:00+02:00",
"messagefolder_id": 1,
"comment_count": 11,
"unread_comments": 10
}
]
HTTP Request
GET api/company/{companyId}/message/sent
Requirements
- User is logged in
- User has access to company
Store a new Message
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"title": "QOnbX\/\/&WVj= Wa\/n\/FH8 NkFeSWASPP9NL 4oehxIM3A2no:8HfOkH,amM1D,dcy-gmTFtZAC>vQOqqsz&I,[email protected]@[email protected]'xHLIW5wR:UEz2j=wO3K6=031u4U\/tDAtVvT_sv,fEuh8=xy%3Vi2zOmiSd6PSGl8L7'26N-c 8W%DrkpQNS_ln",
"important": 0,
"starred": 1,
"messagefolder_id": 97
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/message',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'title' => 'QOnbX//&WVj= Wa/n/FH8 NkFeSWASPP9NL 4oehxIM3A2no:8HfOkH,amM1D,dcy-gmTFtZAC>vQOqqsz&I,[email protected]@[email protected]\'xHLIW5wR:UEz2j=wO3K6=031u4U/tDAtVvT_sv,fEuh8=xy%3Vi2zOmiSd6PSGl8L7\'26N-c 8W%DrkpQNS_ln',
'important' => 0,
'starred' => 1,
'messagefolder_id' => 97,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message'
payload = {
"title": "QOnbX\/\/&WVj= Wa\/n\/FH8 NkFeSWASPP9NL 4oehxIM3A2no:8HfOkH,amM1D,dcy-gmTFtZAC>vQOqqsz&I,[email protected]@[email protected]'xHLIW5wR:UEz2j=wO3K6=031u4U\/tDAtVvT_sv,fEuh8=xy%3Vi2zOmiSd6PSGl8L7'26N-c 8W%DrkpQNS_ln",
"important": 0,
"starred": 1,
"messagefolder_id": 97
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"id": 2,
"title": "Hvordan før jeg mere ferie?",
"important": 1,
"reply_enabled": 1,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 0,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
}
HTTP Request
POST api/company/{companyId}/message
Requirements
- User is logged in
- User has access to company
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
title |
string | required | Maximum: 200 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
important |
integer | required | 0 or 1 |
starred |
integer | required | 0 or 1 |
messagefolder_id |
integer | optional |
Restore a list of messages
Messages vil be restored
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/restore"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"messageids": [
158683
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/message/restore',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'messageids' => [
158683,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/restore'
payload = {
"messageids": [
158683
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
HTTP Request
POST api/company/{companyId}/message/restore
Requirements
- User is logged in
- User has access to company
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
messageids |
array | required | |
messageids.* |
integer | required |
Store a new Message and sent it to all/industries/companies
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/superadmin"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"title": "QOnbX\/\/&WVj= Wa\/n\/FH8 NkFeSWASPP9NL 4oehxIM3A2no:8HfOkH,amM1D,dcy-gmTFtZAC>vQOqqsz&I,[email protected]@[email protected]'xHLIW5wR:UEz2j=wO3K6=031u4U\/tDAtVvT_sv,fEuh8=xy%3Vi2zOmiSd6PSGl8L7'26N-c 8W%DrkpQNS_ln",
"important": 0,
"starred": 1,
"messagefolder_id": 97,
"all": 0,
"recipient_industries": [
6
],
"recipient_companies": [
14
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/message/superadmin',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'title' => 'QOnbX//&WVj= Wa/n/FH8 NkFeSWASPP9NL 4oehxIM3A2no:8HfOkH,amM1D,dcy-gmTFtZAC>vQOqqsz&I,[email protected]@[email protected]\'xHLIW5wR:UEz2j=wO3K6=031u4U/tDAtVvT_sv,fEuh8=xy%3Vi2zOmiSd6PSGl8L7\'26N-c 8W%DrkpQNS_ln',
'important' => 0,
'starred' => 1,
'messagefolder_id' => 97,
'all' => 0,
'recipient_industries' => [
6,
],
'recipient_companies' => [
14,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/superadmin'
payload = {
"title": "QOnbX\/\/&WVj= Wa\/n\/FH8 NkFeSWASPP9NL 4oehxIM3A2no:8HfOkH,amM1D,dcy-gmTFtZAC>vQOqqsz&I,[email protected]@[email protected]'xHLIW5wR:UEz2j=wO3K6=031u4U\/tDAtVvT_sv,fEuh8=xy%3Vi2zOmiSd6PSGl8L7'26N-c 8W%DrkpQNS_ln",
"important": 0,
"starred": 1,
"messagefolder_id": 97,
"all": 0,
"recipient_industries": [
6
],
"recipient_companies": [
14
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"id": 2,
"title": "Hvordan før jeg mere ferie?",
"important": 1,
"reply_enabled": 0,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 0,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
}
HTTP Request
POST api/company/{companyId}/message/superadmin
Requirements
- User is logged in
- User has access to company
- User is SuperAdmin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
title |
string | required | Maximum: 200 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
important |
integer | required | 0 or 1 |
starred |
integer | required | 0 or 1 |
messagefolder_id |
integer | optional | |
all |
integer | optional | 0 or 1 |
recipient_industries |
array | optional | |
recipient_companies |
array | optional | |
recipient_industries.* |
integer | required | Must have a length between 1 and 3 |
recipient_companies.* |
integer | required | Must have a length between 1 and 5 |
Get a Message
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"id": 1,
"title": "Kursus",
"important": 1,
"reply_enabled": 0,
"created_at": "2018-05-01T09:38:01+02:00",
"deleted_at": null,
"starred": 0,
"read_at": null,
"messagefolder_id": null,
"comment_count": 1,
"unread_comments": 1
}
HTTP Request
GET api/company/{companyId}/message/{messageId}
Requirements
- User is logged in
- User has access to company
Update a Message
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"title": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...",
"important": 1,
"reply_enabled": 1,
"starred": 0,
"messagefolder_id": 658163010
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/message/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'title' => 'Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...',
'important' => 1,
'reply_enabled' => 1,
'starred' => 0,
'messagefolder_id' => 658163010,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/1'
payload = {
"title": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...",
"important": 1,
"reply_enabled": 1,
"starred": 0,
"messagefolder_id": 658163010
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/message/{messageId}
Requirements
- User is logged in
- User has access to company
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
title |
string | required | Maximum: 200 |
important |
integer | optional | 0 or 1 |
reply_enabled |
integer | optional | 0 or 1 |
starred |
integer | optional | 0 or 1 |
messagefolder_id |
integer | optional |
Remove a list message
Messages vil be marked delete, but can be restored later by '/restore' command
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/list"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"messageids": [
158683
]
}
fetch(url, {
method: "DELETE",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/message/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'messageids' => [
158683,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/list'
payload = {
"messageids": [
158683
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
HTTP Request
DELETE api/company/{companyId}/message/list
Requirements
- User is logged in
- User has access to company
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
messageids |
array | required | |
messageids.* |
integer | required |
Remove a message
Message vil be marked delete, but can be restored later by '/restore' command
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/message/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/message/{messageId}
Requirements
- User is logged in
- User has access to company
Restore a Message
Message vil be restored
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/1/markread"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "POST",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/message/1/markread',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/1/markread'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers)
response.json()
HTTP Request
POST api/company/{companyId}/message/{messageId}/markread
Requirements
- User is logged in
- User has access to company
Restore a Message
Message vil be restored
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/1/restore"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "POST",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/message/1/restore',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/1/restore'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers)
response.json()
HTTP Request
POST api/company/{companyId}/message/{messageId}/restore
Requirements
- User is logged in
- User has access to company
Get Message commentslist
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/1/comment"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/message/1/comment',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/1/comment'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"comment": "Husk at der er kursus i dag.",
"sender": "123-user",
"created_at": "2018-05-01T09:28:18+01:00"
}
]
HTTP Request
GET api/company/{companyId}/message/{messageId}/comment
Requirements
- User is logged in
- User has access to company
Store comment to Message
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/message/1/comment"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"comment": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ..."
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/message/1/comment',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'comment' => 'Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/message/1/comment'
payload = {
"comment": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ..."
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"id": 2,
"comment": "Husk at der er kursus i dag.",
"sender": "123-user",
"created_at": "2018-05-01T09:28:18+01:00"
}
HTTP Request
POST api/company/{companyId}/message/{messageId}/comment
Requirements
- User is logged in
- User has access to company
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
comment |
string | required | Maximum: 4000 |
Notice (info)
Get info for proløn branch
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/branch/proloen"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/branch/proloen',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/branch/proloen'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"info_id": 1,
"info_titel": "Info titel",
"info_tekst": "Info tekst",
"info_tildato": "2017-12-12",
"info_brance": -1
}
]
HTTP Request
GET api/company/{companyId}/branch/proloen
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get info for branch
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/branch/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/branch/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/branch/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"info_id": 1,
"info_titel": "Info titel",
"info_tekst": "Info tekst",
"info_tildato": "2017-12-12",
"info_brance": 2
}
]
HTTP Request
GET api/company/{companyId}/branch/{infoBranchId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get reminder list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/reminder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/reminder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/reminder'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"kalender_id": 1,
"kalender_firma": 123,
"kalender_dato": "2017-12-26",
"kalender_aktiv": "J",
"kalender_tekst": "kalender tekst",
"kalender_frabs2": "N"
}
]
HTTP Request
GET api/company/{companyId}/reminder
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get reminder in iCS format. (content type "text/calendar")
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/reminder/1/ics"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/reminder/1/ics',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/reminder/1/ics'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/reminder/{reminderId}/ics
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create reminder
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/reminder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"kalender_tekst": "y5OK6ILe=0LmmKVRgqh2tqBAe3N 9Tzhb [email protected]'=UpnbCN5FIYeZ,2N2xX-",
"kalender_dato": "2021-01-13"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/reminder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'kalender_tekst' => 'y5OK6ILe=0LmmKVRgqh2tqBAe3N 9Tzhb [email protected]\'=UpnbCN5FIYeZ,2N2xX-',
'kalender_dato' => '2021-01-13',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/reminder'
payload = {
"kalender_tekst": "y5OK6ILe=0LmmKVRgqh2tqBAe3N 9Tzhb [email protected]'=UpnbCN5FIYeZ,2N2xX-",
"kalender_dato": "2021-01-13"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"kalender_id": 1,
"kalender_firma": 123,
"kalender_dato": "2017-12-26",
"kalender_aktiv": "J",
"kalender_tekst": "kalender tekst",
"kalender_frabs2": "N"
}
HTTP Request
POST api/company/{companyId}/reminder
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
kalender_tekst |
string | required | Maximum: 60 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
kalender_dato |
date | required | Date format: Y-m-d |
Update reminder
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/reminder/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"kalender_tekst": "y5OK6ILe=0LmmKVRgqh2tqBAe3N 9Tzhb [email protected]'=UpnbCN5FIYeZ,2N2xX-",
"kalender_dato": "2021-01-13",
"kalender_aktiv": "y"
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/reminder/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'kalender_tekst' => 'y5OK6ILe=0LmmKVRgqh2tqBAe3N 9Tzhb [email protected]\'=UpnbCN5FIYeZ,2N2xX-',
'kalender_dato' => '2021-01-13',
'kalender_aktiv' => 'y',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/reminder/1'
payload = {
"kalender_tekst": "y5OK6ILe=0LmmKVRgqh2tqBAe3N 9Tzhb [email protected]'=UpnbCN5FIYeZ,2N2xX-",
"kalender_dato": "2021-01-13",
"kalender_aktiv": "y"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/reminder/{reminderId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
kalender_tekst |
string | optional | Required if the parameters kalenderdato are not present. and maximum: 60 and can only contain A-Å 0-9, . + - ' / % ( ) : @ & ? = and space |
kalender_dato |
date | optional | Required if the parameters kalender_tekst are not present. and date format: Y-m-d |
kalender_aktiv |
string | optional | Maximum: 1 |
Delete reminder
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/reminder/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/reminder/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/reminder/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/reminder/{reminderId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Profile
Get profile list
Includes salary types
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/profile',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"companyProfileList": [
{
"firmaprofil_firma": 123,
"firmaprofil_nr": "PROFIL1",
"firmaprofil_tekst": "",
"firmaprofil_atpkode": 0,
"firmaprofil_feriekode": 0,
"firmaprofil_shkode": 0,
"firmaprofil_ampension": 0,
"firmaprofil_ansaettelsetype": 0,
"firmaprofil_ansaettelsevilkaar": 0,
"firmaprofil_arbejderfunktion": null,
"firmaprofil_jobstatus": 0,
"firmaprofil_afloenningsform": 0,
"firmaprofil_dabarsel": "0",
"firmaprofil_dalouddannelsesbidrag": 0,
"firmaprofil_arbejdsfunktion2": 0,
"firmaprofil_arbejdertype": 0,
"firmaprofil_afdeling": 0,
"firmaprofil_eboks": "N",
"firmaprofil_beskaeftigelseskode": 0,
"firmaprofil_kompetencefond": 0,
"firmaprofil_samarbuddannelsesfond": 0,
"firmaprofil_produktionsenhedsnr": ""
}
],
"standardProfileList": [
{
"stdprofil_brance": 2,
"stdprofil_nr": "BL",
"stdprofil_tekst": "stdprofil tekst",
"stdprofil_atpkode": 1,
"stdprofil_feriekode": 1,
"stdprofil_shkode": 1,
"stdprofil_ampension": 0,
"stdprofil_ansaettelsetype": 1,
"stdprofil_ansaettelsevilkaar": 3,
"stdprofil_arbejderfunktion": 0,
"stdprofil_jobstatus": 1,
"stdprofil_afloenningsform": 1,
"stdprofil_dabarsel": "0",
"stdprofil_dalouddannelsesbidrag": 0,
"stdprofil_arbejdsfunktion2": 751200,
"stdprofil_arbejdertype": 0,
"stdprofil_afdeling": 0,
"stdprofil_eboks": "N",
"stdprofil_beskaeftigelseskode": 0,
"stdprofil_kompetencefond": 0,
"stdprofil_samarbuddannelsesfond": 0,
"stdprofil_produktionsenhedsnr": ""
}
]
}
HTTP Request
GET api/company/{companyId}/profile
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single profile
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/profile/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"companyProfile": {
"firmaprofil_firma": 123,
"firmaprofil_nr": "BL",
"firmaprofil_tekst": "",
"firmaprofil_atpkode": 0,
"firmaprofil_feriekode": 0,
"firmaprofil_shkode": 0,
"firmaprofil_ampension": 0,
"firmaprofil_ansaettelsetype": 0,
"firmaprofil_ansaettelsevilkaar": 0,
"firmaprofil_arbejderfunktion": null,
"firmaprofil_jobstatus": 0,
"firmaprofil_afloenningsform": 0,
"firmaprofil_dabarsel": "0",
"firmaprofil_dalouddannelsesbidrag": 0,
"firmaprofil_arbejdsfunktion2": 0,
"firmaprofil_arbejdertype": 0,
"firmaprofil_afdeling": 0,
"firmaprofil_eboks": "N",
"firmaprofil_beskaeftigelseskode": 0,
"firmaprofil_kompetencefond": 0,
"firmaprofil_samarbuddannelsesfond": 0,
"firmaprofil_produktionsenhedsnr": "",
"firmaprofilloenart": [
{
"firmaprofilloenart_firma": 123,
"firmaprofilloenart_firmaprofil": "BL",
"firmaprofilloenart_loenart": 9350,
"loenart_firma": 123,
"loenart_nr": 9350,
"loenart_tf": "F",
"loenart_tekst": "UDB. A'CONTO",
"loenart_sats": 0,
"loenart_minantal": 0,
"loenart_maxantal": 0,
"loenart_minsats": 0,
"loenart_maxsats": 0,
"loenart_minbeloeb": -9999999,
"loenart_maxbeloeb": 9999999,
"loenart_nulstil": 1,
"loenart_beregningskode": 0,
"loenart_changed": 0,
"loenart_bruttoskat": 0,
"loenart_aindkomst": 0,
"loenart_ferieberettetloen": 0,
"loenart_pensiongloen": 0,
"loenart_atp": 0,
"loenart_tidkode": 0,
"loenart_tidfaktor": 0,
"loenart_feriepengeudb": 0,
"loenart_haandteringskode": 0,
"loenart_type": 0,
"loenart_firmaloenart": 1,
"loenart_standard": true,
"loenart_satser": {
"1": 0,
"2": 0,
"3": 0
},
"loenartbeskrivelse_tekst": "Her kommer en beskrivelse i en senere version",
"loenart_haandteringskode_text": "Ingen kode"
}
]
},
"standardProfile": {
"stdprofil_brance": 2,
"stdprofil_nr": "BL",
"stdprofil_tekst": "stdprofil tekst",
"stdprofil_atpkode": 1,
"stdprofil_feriekode": 1,
"stdprofil_shkode": 1,
"stdprofil_ampension": 0,
"stdprofil_ansaettelsetype": 1,
"stdprofil_ansaettelsevilkaar": 3,
"stdprofil_arbejderfunktion": 0,
"stdprofil_jobstatus": 1,
"stdprofil_afloenningsform": 1,
"stdprofil_dabarsel": "0",
"stdprofil_dalouddannelsesbidrag": 0,
"stdprofil_arbejdsfunktion2": 751200,
"stdprofil_arbejdertype": 0,
"stdprofil_afdeling": 0,
"stdprofil_eboks": "N",
"stdprofil_beskaeftigelseskode": 0,
"stdprofil_kompetencefond": 0,
"stdprofil_samarbuddannelsesfond": 0,
"stdprofil_produktionsenhedsnr": "",
"standardprofilloenart": [
{
"stdprofilloenart_brance": 2,
"stdprofilloenart_profil": "BL",
"stdprofilloenart_loenart": 9350,
"loenart_firma": 123,
"loenart_nr": 9350,
"loenart_tf": "F",
"loenart_tekst": "UDB. A'CONTO",
"loenart_sats": 0,
"loenart_minantal": 0,
"loenart_maxantal": 0,
"loenart_minsats": 0,
"loenart_maxsats": 0,
"loenart_minbeloeb": -9999999,
"loenart_maxbeloeb": 9999999,
"loenart_nulstil": 1,
"loenart_beregningskode": 0,
"loenart_changed": 0,
"loenart_bruttoskat": 0,
"loenart_aindkomst": 0,
"loenart_ferieberettetloen": 0,
"loenart_pensiongloen": 0,
"loenart_atp": 0,
"loenart_tidkode": 0,
"loenart_tidfaktor": 0,
"loenart_feriepengeudb": 0,
"loenart_haandteringskode": 0,
"loenart_type": 0,
"loenart_firmaloenart": 1,
"loenart_standard": true,
"loenart_satser": {
"1": 0,
"2": 0,
"3": 0
},
"loenartbeskrivelse_tekst": "Her kommer en beskrivelse i en senere version",
"loenart_haandteringskode_text": "Ingen kode"
}
]
}
}
HTTP Request
GET api/company/{companyId}/profile/{profileId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create profile
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firmaprofil_nr": "sXFetAg",
"firmaprofil_tekst": "CWL0Ri%Oz,hoI%Q,JfpTT`knE1FVE",
"firmaprofil_atpkode": 4,
"firmaprofil_feriekode": 7,
"firmaprofil_shkode": 3,
"firmaprofil_ampension": 12200,
"firmaprofil_ansaettelsetype": 369641157,
"firmaprofil_ansaettelsevilkaar": 4127390,
"firmaprofil_arbejderfunktion": 517270949,
"firmaprofil_jobstatus": 8024,
"firmaprofil_afloenningsform": 34056,
"firmaprofil_dabarsel": 0,
"firmaprofil_dalouddannelsesbidrag": 53282,
"firmaprofil_arbejdsfunktion2": 739684,
"firmaprofil_arbejdertype": 1,
"firmaprofil_afdeling": 24789624,
"firmaprofil_eboks": "B",
"firmaprofil_beskaeftigelseskode": 79,
"firmaprofil_kompetencefond": 21935423,
"firmaprofil_samarbuddannelsesfond": 5613970,
"firmaprofil_produktionsenhedsnr": "Ut."
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/profile',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firmaprofil_nr' => 'sXFetAg',
'firmaprofil_tekst' => 'CWL0Ri%Oz,hoI%Q,JfpTT`knE1FVE',
'firmaprofil_atpkode' => 4,
'firmaprofil_feriekode' => 7,
'firmaprofil_shkode' => 3,
'firmaprofil_ampension' => 12200,
'firmaprofil_ansaettelsetype' => 369641157,
'firmaprofil_ansaettelsevilkaar' => 4127390,
'firmaprofil_arbejderfunktion' => 517270949,
'firmaprofil_jobstatus' => 8024,
'firmaprofil_afloenningsform' => 34056,
'firmaprofil_dabarsel' => 0,
'firmaprofil_dalouddannelsesbidrag' => 53282,
'firmaprofil_arbejdsfunktion2' => 739684,
'firmaprofil_arbejdertype' => 1,
'firmaprofil_afdeling' => 24789624,
'firmaprofil_eboks' => 'B',
'firmaprofil_beskaeftigelseskode' => 79,
'firmaprofil_kompetencefond' => 21935423,
'firmaprofil_samarbuddannelsesfond' => 5613970,
'firmaprofil_produktionsenhedsnr' => 'Ut.',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile'
payload = {
"firmaprofil_nr": "sXFetAg",
"firmaprofil_tekst": "CWL0Ri%Oz,hoI%Q,JfpTT`knE1FVE",
"firmaprofil_atpkode": 4,
"firmaprofil_feriekode": 7,
"firmaprofil_shkode": 3,
"firmaprofil_ampension": 12200,
"firmaprofil_ansaettelsetype": 369641157,
"firmaprofil_ansaettelsevilkaar": 4127390,
"firmaprofil_arbejderfunktion": 517270949,
"firmaprofil_jobstatus": 8024,
"firmaprofil_afloenningsform": 34056,
"firmaprofil_dabarsel": 0,
"firmaprofil_dalouddannelsesbidrag": 53282,
"firmaprofil_arbejdsfunktion2": 739684,
"firmaprofil_arbejdertype": 1,
"firmaprofil_afdeling": 24789624,
"firmaprofil_eboks": "B",
"firmaprofil_beskaeftigelseskode": 79,
"firmaprofil_kompetencefond": 21935423,
"firmaprofil_samarbuddannelsesfond": 5613970,
"firmaprofil_produktionsenhedsnr": "Ut."
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"firmaprofil_firma": 123,
"firmaprofil_nr": "PROFIL1",
"firmaprofil_tekst": "",
"firmaprofil_atpkode": 0,
"firmaprofil_feriekode": 0,
"firmaprofil_shkode": 0,
"firmaprofil_ampension": 0,
"firmaprofil_ansaettelsetype": 0,
"firmaprofil_ansaettelsevilkaar": 0,
"firmaprofil_arbejderfunktion": null,
"firmaprofil_jobstatus": 0,
"firmaprofil_afloenningsform": 0,
"firmaprofil_dabarsel": "0",
"firmaprofil_dalouddannelsesbidrag": 0,
"firmaprofil_arbejdsfunktion2": 0,
"firmaprofil_arbejdertype": 0,
"firmaprofil_afdeling": 0,
"firmaprofil_eboks": "N",
"firmaprofil_beskaeftigelseskode": 0,
"firmaprofil_kompetencefond": 0,
"firmaprofil_samarbuddannelsesfond": 0,
"firmaprofil_produktionsenhedsnr": ""
}
HTTP Request
POST api/company/{companyId}/profile
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firmaprofil_nr |
string | required | Maximum: 7 and can only contain A-Å 0-9 |
firmaprofil_tekst |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firmaprofil_atpkode |
integer | required | 0 , 1 , 2 , 4 , 5 or 6 |
firmaprofil_feriekode |
integer | required | Between: 0 and 9 |
firmaprofil_shkode |
integer | required | Between: 0 and 9 |
firmaprofil_ampension |
integer | required | |
firmaprofil_ansaettelsetype |
integer | required | |
firmaprofil_ansaettelsevilkaar |
integer | required | |
firmaprofil_arbejderfunktion |
integer | required | |
firmaprofil_jobstatus |
integer | required | |
firmaprofil_afloenningsform |
integer | required | |
firmaprofil_dabarsel |
integer | required | Between: 0 and 1 |
firmaprofil_dalouddannelsesbidrag |
integer | required | |
firmaprofil_arbejdsfunktion2 |
integer | required | Between: 0 and 999999 |
firmaprofil_arbejdertype |
integer | required | Between: 0 and 3 |
firmaprofil_afdeling |
integer | required | |
firmaprofil_eboks |
string | required | Maximum: 1 and can only contain A-Å 0-9 |
firmaprofil_beskaeftigelseskode |
integer | required | Between: 0 and 99 |
firmaprofil_kompetencefond |
integer | required | |
firmaprofil_samarbuddannelsesfond |
integer | required | |
firmaprofil_produktionsenhedsnr |
string | optional | Maximum: 10 |
Update profile
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firmaprofil_tekst": "YEBvV-gnN0rSw\/[email protected]_iU3D",
"firmaprofil_atpkode": 1,
"firmaprofil_feriekode": 3,
"firmaprofil_shkode": 6,
"firmaprofil_ampension": 485018920,
"firmaprofil_ansaettelsetype": 86934684,
"firmaprofil_ansaettelsevilkaar": 68,
"firmaprofil_arbejderfunktion": 974628,
"firmaprofil_jobstatus": 2338,
"firmaprofil_afloenningsform": 2580659,
"firmaprofil_dabarsel": 1,
"firmaprofil_dalouddannelsesbidrag": 79367,
"firmaprofil_arbejdsfunktion2": 853916,
"firmaprofil_arbejdertype": 2,
"firmaprofil_afdeling": 305,
"firmaprofil_eboks": "d",
"firmaprofil_beskaeftigelseskode": 34,
"firmaprofil_kompetencefond": 48475,
"firmaprofil_samarbuddannelsesfond": 4,
"firmaprofil_produktionsenhedsnr": "Est rem."
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/profile/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firmaprofil_tekst' => 'YEBvV-gnN0rSw/[email protected]_iU3D',
'firmaprofil_atpkode' => 1,
'firmaprofil_feriekode' => 3,
'firmaprofil_shkode' => 6,
'firmaprofil_ampension' => 485018920,
'firmaprofil_ansaettelsetype' => 86934684,
'firmaprofil_ansaettelsevilkaar' => 68,
'firmaprofil_arbejderfunktion' => 974628,
'firmaprofil_jobstatus' => 2338,
'firmaprofil_afloenningsform' => 2580659,
'firmaprofil_dabarsel' => 1,
'firmaprofil_dalouddannelsesbidrag' => 79367,
'firmaprofil_arbejdsfunktion2' => 853916,
'firmaprofil_arbejdertype' => 2,
'firmaprofil_afdeling' => 305,
'firmaprofil_eboks' => 'd',
'firmaprofil_beskaeftigelseskode' => 34,
'firmaprofil_kompetencefond' => 48475,
'firmaprofil_samarbuddannelsesfond' => 4,
'firmaprofil_produktionsenhedsnr' => 'Est rem.',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile/1'
payload = {
"firmaprofil_tekst": "YEBvV-gnN0rSw\/[email protected]_iU3D",
"firmaprofil_atpkode": 1,
"firmaprofil_feriekode": 3,
"firmaprofil_shkode": 6,
"firmaprofil_ampension": 485018920,
"firmaprofil_ansaettelsetype": 86934684,
"firmaprofil_ansaettelsevilkaar": 68,
"firmaprofil_arbejderfunktion": 974628,
"firmaprofil_jobstatus": 2338,
"firmaprofil_afloenningsform": 2580659,
"firmaprofil_dabarsel": 1,
"firmaprofil_dalouddannelsesbidrag": 79367,
"firmaprofil_arbejdsfunktion2": 853916,
"firmaprofil_arbejdertype": 2,
"firmaprofil_afdeling": 305,
"firmaprofil_eboks": "d",
"firmaprofil_beskaeftigelseskode": 34,
"firmaprofil_kompetencefond": 48475,
"firmaprofil_samarbuddannelsesfond": 4,
"firmaprofil_produktionsenhedsnr": "Est rem."
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/profile/{profileId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firmaprofil_tekst |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
firmaprofil_atpkode |
integer | optional | 0 , 1 , 2 , 4 , 5 or 6 |
firmaprofil_feriekode |
integer | optional | Between: 0 and 9 |
firmaprofil_shkode |
integer | optional | Between: 0 and 9 |
firmaprofil_ampension |
integer | optional | |
firmaprofil_ansaettelsetype |
integer | optional | |
firmaprofil_ansaettelsevilkaar |
integer | optional | |
firmaprofil_arbejderfunktion |
integer | optional | |
firmaprofil_jobstatus |
integer | optional | |
firmaprofil_afloenningsform |
integer | optional | |
firmaprofil_dabarsel |
integer | optional | Between: 0 and 1 |
firmaprofil_dalouddannelsesbidrag |
integer | optional | |
firmaprofil_arbejdsfunktion2 |
integer | optional | Between: 0 and 999999 |
firmaprofil_arbejdertype |
integer | optional | Between: 0 and 3 |
firmaprofil_afdeling |
integer | optional | |
firmaprofil_eboks |
string | optional | Maximum: 1 and can only contain A-Å 0-9 |
firmaprofil_beskaeftigelseskode |
integer | optional | Between: 0 and 99 |
firmaprofil_kompetencefond |
integer | optional | |
firmaprofil_samarbuddannelsesfond |
integer | optional | |
firmaprofil_produktionsenhedsnr |
string | optional | Maximum: 10 |
Delete profile
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/profile/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/profile/{profileId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Profile salary type
Get profile salary type list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile/1/salarytype"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/profile/1/salarytype',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile/1/salarytype'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"firmaprofilloenart": [
{
"firmaprofilloenart_firma": 461,
"firmaprofilloenart_firmaprofil": "2",
"firmaprofilloenart_loenart": 920,
"loenart_firma": 461,
"loenart_nr": 920,
"loenart_tf": "T",
"loenart_tekst": "MÅNEDSLØN",
"loenart_sats": 0,
"loenart_minantal": -99999,
"loenart_maxantal": 99999,
"loenart_minsats": 0,
"loenart_maxsats": 99999,
"loenart_minbeloeb": -9999999,
"loenart_maxbeloeb": 9999999,
"loenart_nulstil": 0,
"loenart_beregningskode": 0,
"loenart_changed": 0,
"loenart_bruttoskat": 1,
"loenart_aindkomst": 1,
"loenart_ferieberettetloen": 1,
"loenart_pensiongloen": 1,
"loenart_atp": 1,
"loenart_tidkode": 0,
"loenart_tidfaktor": 0,
"loenart_feriepengeudb": 0,
"loenart_haandteringskode": 0,
"loenart_type": 0,
"loenart_firmaloenart": 0,
"loenart_standard": false,
"loenart_satser": {
"1": 0,
"2": 0,
"3": 0
},
"loenart_haandteringskode_text": "Ingen kode",
"loenartbeskrivelse_tekst": "Her kommer en beskrivelse i en senere version"
}
],
"standardprofilloenart": []
}
HTTP Request
GET api/company/{companyId}/profile/{profileId}/salarytype
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create profile salary type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile/1/salarytype"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firmaprofilloenart_loenart": 5605297
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/profile/1/salarytype',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firmaprofilloenart_loenart' => 5605297,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile/1/salarytype'
payload = {
"firmaprofilloenart_loenart": 5605297
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"firmaprofilloenart_firma": 123,
"firmaprofilloenart_firmaprofil": "Profil1",
"firmaprofilloenart_loenart": 920
}
HTTP Request
POST api/company/{companyId}/profile/{profileId}/salarytype
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firmaprofilloenart_loenart |
integer | required | Must have a length between 1 and 4 |
Delete profile salary type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/profile/1/salarytype/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/profile/1/salarytype/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/profile/1/salarytype/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/profile/{profileId}/salarytype/{salaryTypeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Project
Get project list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/project"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/project',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/project'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"projekt_firma": 123,
"projekt_nr": "4100000",
"projekt_tekst": ""
}
]
HTTP Request
GET api/company/{companyId}/project
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single project
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/project/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/project/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/project/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"projekt_firma": 123,
"projekt_nr": "4100000",
"projekt_tekst": ""
}
HTTP Request
GET api/company/{companyId}/project/{projectId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create project
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/project"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"projekt_nr": "YFdtAfj1JJ",
"projekt_tekst": "`0Ri%Ry,hoF SFF fo'U'knD1,VGyI"
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/project',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'projekt_nr' => 'YFdtAfj1JJ',
'projekt_tekst' => '`0Ri%Ry,hoF SFF fo\'U\'knD1,VGyI',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/project'
payload = {
"projekt_nr": "YFdtAfj1JJ",
"projekt_tekst": "`0Ri%Ry,hoF SFF fo'U'knD1,VGyI"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"projekt_firma": 123,
"projekt_nr": "4100000",
"projekt_tekst": ""
}
HTTP Request
POST api/company/{companyId}/project
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
projekt_nr |
string | required | Maximum: 20 and must match this regular expression: /^[0-9\-a-zA-ZæøåÆØÅ]{1,20}$/ |
projekt_tekst |
string | required | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
Update project
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/project/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"projekt_tekst": "YEBvV-gnN0rSw\/[email protected]_iU3D"
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/project/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'projekt_tekst' => 'YEBvV-gnN0rSw/[email protected]_iU3D',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/project/1'
payload = {
"projekt_tekst": "YEBvV-gnN0rSw\/[email protected]_iU3D"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/project/{projectId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
projekt_tekst |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
delete project
To delete a project, there must be no reference between the project and any pay transaction
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/project/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/project/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/project/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/project/{projectId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Salary category
Get salary category list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarycategory"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarycategory',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarycategory'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenartstrukturkategori_kategori1": 1000,
"loenartstrukturkategori_kategori2": 0,
"loenartstrukturkategori_tekst": "AM-PENSION",
"loenartstrukturkategori_brance": 0,
"loenartstrukturkategori_doku_tekst": "Her kommer en beskrivelse i en senere version",
"subCategories": [
{
"loenartstrukturkategori_kategori1": 1000,
"loenartstrukturkategori_kategori2": 900,
"loenartstrukturkategori_tekst": "GRUNDLAG VSN.1.",
"loenartstrukturkategori_brance": 0,
"loenartstrukturkategori_doku_tekst": "Her kommer en beskrivelse i en senere version",
"salaryTypes": [
8900
],
"salaryTypesWithBranch": [
{
"loenartstruktur_brance": 2,
"loenartstruktur_loenart": 8900
}
]
}
]
}
]
HTTP Request
GET api/company/{companyId}/salarycategory
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get sub category list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarycategory/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarycategory/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarycategory/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenartstrukturkategori_kategori1": 1000,
"loenartstrukturkategori_kategori2": 900,
"loenartstrukturkategori_tekst": "AM-PENSION",
"loenartstrukturkategori_brance": 0,
"loenartstrukturkategori_doku_tekst": "Her kommer en beskrivelse i en senere version"
}
]
HTTP Request
GET api/company/{companyId}/salarycategory/{salarycategory}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get salary type list based on salary category and sub category
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarycategory/1/subcategory/1/salarytypes"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarycategory/1/subcategory/1/salarytypes',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarycategory/1/subcategory/1/salarytypes'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenart_nr": 110,
"loenart_tekst": "FERIEFRI"
}
]
HTTP Request
GET api/company/{companyId}/salarycategory/{salarycategory}/subcategory/{salarysubcategory}/salarytypes
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Salary order
check if it is possible to approve order
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder/canapprove"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salaryorder/canapprove',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder/canapprove'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"canApprove": true
}
HTTP Request
GET api/company/{companyId}/salaryorder/canapprove
Requirements
- User is logged in
- User has access to company
- User has access right to salary.approve.write
Overview
Get salary overview data
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salaryorder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejdertype_nr": 1,
"arbejdertype_bruttonloen": 1234.5,
"arbejdertypebeskrivelse_navn": "14-dages-løn",
"loentermin_dispdato": "2017-12-15",
"loentermin_sidste": false,
"arbejder_loen_ja": 3
}
]
HTTP Request
GET api/company/{companyId}/salaryorder
Requirements
- User is logged in
- User has access to company
- User has access right to salary.order.write or salary.approve.read
Order status
Info regarding order status
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder/ordered"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salaryorder/ordered',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder/ordered'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"firma_laast": 1,
"firma_manglergodkendelse": 0
}
HTTP Request
GET api/company/{companyId}/salaryorder/ordered
Requirements
- User is logged in
- User has access to company
List of approvals
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder/approval"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salaryorder/approval',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder/approval'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"godkendelser_firma": 4730,
"godkendelser_brugernavn": "4730",
"godkendelser_type": 1,
"godkendelser_datetime": "2017-11-22 08:24:56.600"
}
]
HTTP Request
GET api/company/{companyId}/salaryorder/approval
Requirements
- User is logged in
- User has access to company
- User has access right to salary.order.write or salary.approve.read
Banking day list
List of banking days in the current year
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder/bankingdaylist"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salaryorder/bankingdaylist',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder/bankingdaylist'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
"2018-01-02",
"2018-01-03",
"2018-01-04",
"2018-01-05",
"2018-01-08"
]
HTTP Request
GET api/company/{companyId}/salaryorder/bankingdaylist
Requirements
- User is logged in
Initials (Super Admin only)
Get list of ProLøn initials
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder/initiallist"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salaryorder/initiallist',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder/initiallist'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"initialer_id": 1,
"initialer_initialer": "TEST"
}
]
HTTP Request
GET api/company/{companyId}/salaryorder/initiallist
Requirements
- User is logged in
- User has access to company
- User is super admin
Store approval
It is not possible to do an approval without creating a salary order first
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder/approval"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"sms_user_list": [
"nesciunt"
],
"mail_user_list": [
"repellendus"
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salaryorder/approval',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'sms_user_list' => [
'nesciunt',
],
'mail_user_list' => [
'repellendus',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder/approval'
payload = {
"sms_user_list": [
"nesciunt"
],
"mail_user_list": [
"repellendus"
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
HTTP Request
POST api/company/{companyId}/salaryorder/approval
Requirements
- User is logged in
- User has access to company
- User has access right salary.approve.write
- Company needs approval
firma_manglergodkendelse
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
sms_user_list |
array | optional | |
mail_user_list |
array | optional | |
sms_user_list.* |
string | optional | Valid bruger bruger_brugernavn |
mail_user_list.* |
string | optional | Valid bruger bruger_brugernavn |
Create salary order
Order of validation
Any error stops further processing and the error is returned in response
- All transaction for employees in selected employee type with due payment is validated.
- Validate that there is employees that need salary for a employee type
- All employees are validated for negative salary and whether or not this is allowed.
- Availability date is validated:
- Date is in the future
- Date is on a banking day
- Date is valid within deadlines
- Validation that deleted employees does not have due payment
- Validation of comments (if any)
- If performed by ProLøn, validate person is allowed to create order
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"firma_bemaerkning": "yinOEZL'lzAAoC9SW4Phq [email protected]\/S2qZFyRIO6oRIzI E4akK8POnaW%\/_WVj=Wa'n\/FI8 Mk,eSVBSPP9NM 4pehxIM3B2no:8GfOlH,amM1D,dcygmTGtYzCevQOqpsz_J,[email protected]@[email protected]@2yxHLIW5",
"bestilling": [
{
"arbejdertype_nr": "1",
"dispositions_dato": "2021-01-13",
"ekstra_loenkoersel": true,
"kortfrist_bestilling": false,
"test_koersel": true,
"fremrykket_udbetaling": true,
"bestilt_for_sent": true,
"anden_aarsag_notat": "%[email protected]*wyM%qZr'[email protected],O4BJxQ9fc-Zc=G\/rPg_0ok=XI%troDR qCggYB",
"opgoerelsesperiode_fra": "2021-01-13",
"opgoerelsesperiode_til": "2021-01-13"
}
],
"sms_user_list": [
"cumque"
],
"mail_user_list": [
"maxime"
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salaryorder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'firma_bemaerkning' => 'yinOEZL\'lzAAoC9SW4Phq [email protected]/S2qZFyRIO6oRIzI E4akK8POnaW%/_WVj=Wa\'n/FI8 Mk,eSVBSPP9NM 4pehxIM3B2no:8GfOlH,amM1D,dcygmTGtYzCevQOqpsz_J,[email protected]@[email protected]@2yxHLIW5',
'bestilling' => [
[
'arbejdertype_nr' => '1',
'dispositions_dato' => '2021-01-13',
'ekstra_loenkoersel' => true,
'kortfrist_bestilling' => false,
'test_koersel' => true,
'fremrykket_udbetaling' => true,
'bestilt_for_sent' => true,
'anden_aarsag_notat' => '%[email protected]*wyM%qZr\'[email protected],O4BJxQ9fc-Zc=G/rPg_0ok=XI%troDR qCggYB',
'opgoerelsesperiode_fra' => '2021-01-13',
'opgoerelsesperiode_til' => '2021-01-13',
],
],
'sms_user_list' => [
'cumque',
],
'mail_user_list' => [
'maxime',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder'
payload = {
"firma_bemaerkning": "yinOEZL'lzAAoC9SW4Phq [email protected]\/S2qZFyRIO6oRIzI E4akK8POnaW%\/_WVj=Wa'n\/FI8 Mk,eSVBSPP9NM 4pehxIM3B2no:8GfOlH,amM1D,dcygmTGtYzCevQOqpsz_J,[email protected]@[email protected]@2yxHLIW5",
"bestilling": [
{
"arbejdertype_nr": "1",
"dispositions_dato": "2021-01-13",
"ekstra_loenkoersel": true,
"kortfrist_bestilling": false,
"test_koersel": true,
"fremrykket_udbetaling": true,
"bestilt_for_sent": true,
"anden_aarsag_notat": "%[email protected]*wyM%qZr'[email protected],O4BJxQ9fc-Zc=G\/rPg_0ok=XI%troDR qCggYB",
"opgoerelsesperiode_fra": "2021-01-13",
"opgoerelsesperiode_til": "2021-01-13"
}
],
"sms_user_list": [
"cumque"
],
"mail_user_list": [
"maxime"
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (422):
{
"dispositions_dato": {
"OriginalErrorMessage": "Dispositions dato skal være i samme år",
"ValidationRule": "same"
}
}
Example response (422):
{
"stored_procedure": {
"OriginalErrorMessage": "Medarbejder 123 har fejl i løntransaktionen for lønarten 1002: Lønarten (1002) - Lønart findes ikke.",
"ValidationRule": "stored_procedure"
}
}
HTTP Request
POST api/company/{companyId}/salaryorder
Requirements
- User is logged in
- User has access right salary.order.write
- Company is not already locked
- Company is not blocked by ProLøn
- Company is not a demo company
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
firma_bemaerkning |
string | optional | Maximum: 180 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bestilling |
array | required | |
sms_user_list |
array | optional | |
mail_user_list |
array | optional | |
bestilling.*.arbejdertype_nr |
string | required | 1 , 2 or 3 |
bestilling.*.dispositions_dato |
date | required | Date format: Y-m-d |
bestilling.*.ekstra_loenkoersel |
boolean | required | |
bestilling.*.kortfrist_bestilling |
boolean | required | |
bestilling.*.test_koersel |
boolean | required | |
bestilling.*.fremrykket_udbetaling |
boolean | required | |
bestilling.*.bestilt_for_sent |
boolean | required | |
bestilling.*.anden_aarsag_notat |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bestilling.*.opgoerelsesperiode_fra |
date | required | Date format: Y-m-d or 0 |
bestilling.*.opgoerelsesperiode_til |
date | required | Date format: Y-m-d or 0 |
sms_user_list.* |
string | optional | Valid bruger bruger_brugernavn |
mail_user_list.* |
string | optional | Valid bruger bruger_brugernavn |
Cancel salary order
Cancels a salary order
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salaryorder"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/salaryorder',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salaryorder'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/salaryorder
Requirements
- User is logged in
- User has access to company
- User has access right to salary.approve.write or salary.approve.read or salary.order.write
Salary transaction (Løn transaktioner)
Transaction list, employee
Get salary transaction list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytransaction"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": ""
}
]
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/salarytransaction
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Salary transaction
Get single salary transaction
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytransaction/1/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction/1/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction/1/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": ""
}
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/salarytransaction/{salaryTypeId}/{serialNumber}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create multiple salary transactions for one employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytransaction"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_loenart": 7851,
"loentransaktion_antal": 34945.65,
"loentransaktion_sats": 2916.451,
"loentransaktion_beloeb": 6047386.05,
"loentransaktion_afdnr": 62850,
"loentransaktion_projekt": "[email protected]@QzCO2jbEKjG,0jU",
"loentransaktion_tekst": "DD_hT3Dw'iBUmGrI=zX\/g",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "FC4A"
}
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_loenart' => 7851,
'loentransaktion_antal' => 34945.65,
'loentransaktion_sats' => 2916.451,
'loentransaktion_beloeb' => 6047386.05,
'loentransaktion_afdnr' => 62850,
'loentransaktion_projekt' => '[email protected]@QzCO2jbEKjG,0jU',
'loentransaktion_tekst' => 'DD_hT3Dw\'iBUmGrI=zX/g',
'loentransaktion_dato1feriedag' => '2021-01-13',
'loentransaktion_udbkode' => 'FC4A',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction'
payload = {
"loentransaktioner": [
{
"loentransaktion_loenart": 7851,
"loentransaktion_antal": 34945.65,
"loentransaktion_sats": 2916.451,
"loentransaktion_beloeb": 6047386.05,
"loentransaktion_afdnr": 62850,
"loentransaktion_projekt": "[email protected]@QzCO2jbEKjG,0jU",
"loentransaktion_tekst": "DD_hT3Dw'iBUmGrI=zX\/g",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "FC4A"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": false
},
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1235,
"loentransaktion_loenart": 111,
"loentransaktion_loebenr": 1235,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": true
}
]
Example response (422):
[
null,
{
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Medarbejder '1234' findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"loentransaktion_loenart": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "exists"
}
]
},
null,
null,
null,
null
]
HTTP Request
POST api/company/{companyId}/employee/{employeeId}/salarytransaction
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | array list of salary transactions to create |
loentransaktioner.*.loentransaktion_loenart |
integer | required | Between: 1 and 9999 |
loentransaktioner.*.loentransaktion_antal |
numeric | required | Between: -99999.99 and 99999.99 |
loentransaktioner.*.loentransaktion_sats |
numeric | required | Between: 0 and 99999.99 |
loentransaktioner.*.loentransaktion_beloeb |
numeric | required | Between: -9999999.99 and 9999999.99 |
loentransaktioner.*.loentransaktion_afdnr |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_projekt |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_dato1feriedag |
date | optional | Date format: Y-m-d or 0 |
loentransaktioner.*.loentransaktion_udbkode |
string | optional | Maximum: 4 and can only contain A-Å 0-9 |
Update multiple, employee
Update salary transactions for one employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytransaction"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_loenart": 7851,
"loentransaktion_loebenr": 543,
"loentransaktion_antal": -4582.04,
"loentransaktion_sats": 73281.4482582,
"loentransaktion_beloeb": 8031141.66,
"loentransaktion_afdnr": 12505,
"loentransaktion_projekt": ":[email protected]=",
"loentransaktion_tekst": "3ExciBVnGrK=AX'gPH_ph",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_loenart' => 7851,
'loentransaktion_loebenr' => 543,
'loentransaktion_antal' => -4582.04,
'loentransaktion_sats' => 73281.4482582,
'loentransaktion_beloeb' => 8031141.66,
'loentransaktion_afdnr' => 12505,
'loentransaktion_projekt' => ':[email protected]=',
'loentransaktion_tekst' => '3ExciBVnGrK=AX\'gPH_ph',
'loentransaktion_dato1feriedag' => '2021-01-13',
'loentransaktion_udbkode' => 'Z0Di',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction'
payload = {
"loentransaktioner": [
{
"loentransaktion_loenart": 7851,
"loentransaktion_loebenr": 543,
"loentransaktion_antal": -4582.04,
"loentransaktion_sats": 73281.4482582,
"loentransaktion_beloeb": 8031141.66,
"loentransaktion_afdnr": 12505,
"loentransaktion_projekt": ":[email protected]=",
"loentransaktion_tekst": "3ExciBVnGrK=AX'gPH_ph",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": false
},
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1235,
"loentransaktion_loenart": 111,
"loentransaktion_loebenr": 1235,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": true
}
]
Example response (422):
[
null,
{
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Medarbejder '1234' findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"loentransaktion_loenart": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "exists"
}
]
},
null,
null
]
HTTP Request
PATCH api/company/{companyId}/employee/{employeeId}/salarytransaction
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | array list of salary transactions to update |
loentransaktioner.*.loentransaktion_loenart |
integer | required | Between: 1 and 9999 |
loentransaktioner.*.loentransaktion_loebenr |
integer | required | |
loentransaktioner.*.loentransaktion_antal |
numeric | optional | Between: -99999.99 and 99999.99 |
loentransaktioner.*.loentransaktion_sats |
numeric | optional | Between: 0 and 99999.99 |
loentransaktioner.*.loentransaktion_beloeb |
numeric | optional | Between: -9999999.99 and 9999999.99 |
loentransaktioner.*.loentransaktion_afdnr |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_projekt |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_dato1feriedag |
date | optional | Date format: Y-m-d or 0 |
loentransaktioner.*.loentransaktion_udbkode |
string | optional | Maximum: 4 and can only contain A-Å 0-9 |
Update multiple, employee via PUT
The functionality is the same as for the PATCH request - Only difference is the HTTP PUT request method. It enables systems, which native cannot issue a PATCH, to do so using PUT. The PUT requirements have been relaxed to match the PATCH requirement in that not all fields are required.
Update salary transactions for one employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytransaction"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_loenart": 7851,
"loentransaktion_loebenr": 543,
"loentransaktion_antal": -4582.04,
"loentransaktion_sats": 73281.4482582,
"loentransaktion_beloeb": 8031141.66,
"loentransaktion_afdnr": 12505,
"loentransaktion_projekt": ":[email protected]=",
"loentransaktion_tekst": "3ExciBVnGrK=AX'gPH_ph",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
fetch(url, {
method: "PUT",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->put(
'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_loenart' => 7851,
'loentransaktion_loebenr' => 543,
'loentransaktion_antal' => -4582.04,
'loentransaktion_sats' => 73281.4482582,
'loentransaktion_beloeb' => 8031141.66,
'loentransaktion_afdnr' => 12505,
'loentransaktion_projekt' => ':[email protected]=',
'loentransaktion_tekst' => '3ExciBVnGrK=AX\'gPH_ph',
'loentransaktion_dato1feriedag' => '2021-01-13',
'loentransaktion_udbkode' => 'Z0Di',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction'
payload = {
"loentransaktioner": [
{
"loentransaktion_loenart": 7851,
"loentransaktion_loebenr": 543,
"loentransaktion_antal": -4582.04,
"loentransaktion_sats": 73281.4482582,
"loentransaktion_beloeb": 8031141.66,
"loentransaktion_afdnr": 12505,
"loentransaktion_projekt": ":[email protected]=",
"loentransaktion_tekst": "3ExciBVnGrK=AX'gPH_ph",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": ""
}
]
Example response (422):
[
null,
{
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Medarbejder ('1234') findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"stored_procedure": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "stored_procedure"
}
]
},
null,
null,
{
"loentransaktion_loebenr": [
{
"OriginalErrorMessage": "loentransaktion findes ikke",
"ValidationRule": "exists"
}
]
},
null
]
HTTP Request
PUT api/company/{companyId}/employee/{employeeId}/salarytransaction
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | array list of salary transactions to update |
loentransaktioner.*.loentransaktion_loenart |
integer | required | Between: 1 and 9999 |
loentransaktioner.*.loentransaktion_loebenr |
integer | required | |
loentransaktioner.*.loentransaktion_antal |
numeric | optional | Between: -99999.99 and 99999.99 |
loentransaktioner.*.loentransaktion_sats |
numeric | optional | Between: 0 and 99999.99 |
loentransaktioner.*.loentransaktion_beloeb |
numeric | optional | Between: -9999999.99 and 9999999.99 |
loentransaktioner.*.loentransaktion_afdnr |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_projekt |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_dato1feriedag |
date | optional | Date format: Y-m-d or 0 |
loentransaktioner.*.loentransaktion_udbkode |
string | optional | Maximum: 4 and can only contain A-Å 0-9 |
Delete transaction, employee
Delete salary transaction for employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytransaction"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
158683
]
}
fetch(url, {
method: "DELETE",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
158683,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytransaction'
payload = {
"loentransaktioner": [
158683
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
HTTP Request
DELETE api/company/{companyId}/employee/{employeeId}/salarytransaction
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | |
loentransaktioner.* |
integer | required |
Transaction list, salary type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytransaction/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": ""
}
]
HTTP Request
GET api/company/{companyId}/salarytransaction/{salaryTypeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create multiple, employee list
Create salary transactions for more then one employee
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/list"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_arbejder": 78509,
"loentransaktion_loenart": 4593,
"loentransaktion_antal": 18422.61,
"loentransaktion_sats": 30745.2802678,
"loentransaktion_beloeb": 2570023.64,
"loentransaktion_afdnr": 26238,
"loentransaktion_projekt": "N:SBCS2jcEKlIv0jWa=Q",
"loentransaktion_tekst": "Fx'jDVoJtJ=AZ'gRH_piR",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salarytransaction/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_arbejder' => 78509,
'loentransaktion_loenart' => 4593,
'loentransaktion_antal' => 18422.61,
'loentransaktion_sats' => 30745.2802678,
'loentransaktion_beloeb' => 2570023.64,
'loentransaktion_afdnr' => 26238,
'loentransaktion_projekt' => 'N:SBCS2jcEKlIv0jWa=Q',
'loentransaktion_tekst' => 'Fx\'jDVoJtJ=AZ\'gRH_piR',
'loentransaktion_dato1feriedag' => '2021-01-13',
'loentransaktion_udbkode' => 'Z0Di',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/list'
payload = {
"loentransaktioner": [
{
"loentransaktion_arbejder": 78509,
"loentransaktion_loenart": 4593,
"loentransaktion_antal": 18422.61,
"loentransaktion_sats": 30745.2802678,
"loentransaktion_beloeb": 2570023.64,
"loentransaktion_afdnr": 26238,
"loentransaktion_projekt": "N:SBCS2jcEKlIv0jWa=Q",
"loentransaktion_tekst": "Fx'jDVoJtJ=AZ'gRH_piR",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": false
},
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1235,
"loentransaktion_loenart": 111,
"loentransaktion_loebenr": 1235,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": true
}
]
Example response (422):
[
null,
{
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Medarbejder '1234' findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"loentransaktion_loenart": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "exists"
}
]
},
null,
null,
null,
null
]
HTTP Request
POST api/company/{companyId}/salarytransaction/list
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | array list of salary transactions to create |
loentransaktioner.*.loentransaktion_arbejder |
integer | required | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_loenart |
integer | required | Between: 1 and 9999 |
loentransaktioner.*.loentransaktion_antal |
numeric | required | Between: -99999.99 and 99999.99 |
loentransaktioner.*.loentransaktion_sats |
numeric | required | Between: 0 and 99999.99 |
loentransaktioner.*.loentransaktion_beloeb |
numeric | required | Between: -9999999.99 and 9999999.99 |
loentransaktioner.*.loentransaktion_afdnr |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_projekt |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_dato1feriedag |
date | optional | Date format: Y-m-d or 0 |
loentransaktioner.*.loentransaktion_udbkode |
string | optional | Maximum: 4 and can only contain A-Å 0-9 |
Update multiple, employee list
Update salary transactions for multiple employees
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/list"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_loebenr": 158683,
"loentransaktion_arbejder": 54308,
"loentransaktion_loenart": 6747,
"loentransaktion_antal": -32994.63,
"loentransaktion_sats": 80236.9,
"loentransaktion_beloeb": -7498841.57,
"loentransaktion_afdnr": 15994,
"loentransaktion_projekt": "BEQ2kbFMjG;0kTb=R%N4",
"loentransaktion_tekst": "jFXmIuL=D_'[email protected]",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "iCKH"
}
]
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/salarytransaction/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_loebenr' => 158683,
'loentransaktion_arbejder' => 54308,
'loentransaktion_loenart' => 6747,
'loentransaktion_antal' => -32994.63,
'loentransaktion_sats' => 80236.9,
'loentransaktion_beloeb' => -7498841.57,
'loentransaktion_afdnr' => 15994,
'loentransaktion_projekt' => 'BEQ2kbFMjG;0kTb=R%N4',
'loentransaktion_tekst' => 'jFXmIuL=D_\'[email protected]',
'loentransaktion_dato1feriedag' => '2021-01-13',
'loentransaktion_udbkode' => 'iCKH',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/list'
payload = {
"loentransaktioner": [
{
"loentransaktion_loebenr": 158683,
"loentransaktion_arbejder": 54308,
"loentransaktion_loenart": 6747,
"loentransaktion_antal": -32994.63,
"loentransaktion_sats": 80236.9,
"loentransaktion_beloeb": -7498841.57,
"loentransaktion_afdnr": 15994,
"loentransaktion_projekt": "BEQ2kbFMjG;0kTb=R%N4",
"loentransaktion_tekst": "jFXmIuL=D_'[email protected]",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "iCKH"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": false
},
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1235,
"loentransaktion_loenart": 111,
"loentransaktion_loebenr": 1235,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": "",
"loentransaktion_fejl": true
}
]
Example response (422):
[
null,
{
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Medarbejder ('1234') findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"stored_procedure": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "stored_procedure"
}
]
},
null,
null,
{
"loentransaktion_loebenr": [
{
"OriginalErrorMessage": "loentransaktion findes ikke",
"ValidationRule": "exists"
}
]
},
null
]
HTTP Request
PATCH api/company/{companyId}/salarytransaction/list
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | array list of salary transactions to update |
loentransaktioner.*.loentransaktion_loebenr |
integer | required | |
loentransaktioner.*.loentransaktion_arbejder |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_loenart |
integer | optional | Between: 1 and 9999 |
loentransaktioner.*.loentransaktion_antal |
numeric | optional | Between: -99999.99 and 99999.99 |
loentransaktioner.*.loentransaktion_sats |
numeric | optional | Between: 0 and 99999.99 |
loentransaktioner.*.loentransaktion_beloeb |
numeric | optional | Between: -9999999.99 and 9999999.99 |
loentransaktioner.*.loentransaktion_afdnr |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_projekt |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_dato1feriedag |
date | optional | Date format: Y-m-d or 0 |
loentransaktioner.*.loentransaktion_udbkode |
string | optional | Maximum: 4 and can only contain A-Å 0-9 |
Update multiple, employee list via PUT
The functionality is the same as for the PATCH request - Only difference is the HTTP PUT request method. It enables systems, which native cannot issue a PATCH, to do so using PUT. The PUT requirements have been relaxed to match the PATCH requirement in that not all fields are required.
Update salary transactions for multiple employees
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/list"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_loebenr": 158683,
"loentransaktion_arbejder": 54308,
"loentransaktion_loenart": 6747,
"loentransaktion_antal": -32994.63,
"loentransaktion_sats": 80236.9,
"loentransaktion_beloeb": -7498841.57,
"loentransaktion_afdnr": 15994,
"loentransaktion_projekt": "BEQ2kbFMjG;0kTb=R%N4",
"loentransaktion_tekst": "jFXmIuL=D_'[email protected]",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "iCKH"
}
]
}
fetch(url, {
method: "PUT",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->put(
'https://mit.proloen.dk/api/company/1/salarytransaction/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_loebenr' => 158683,
'loentransaktion_arbejder' => 54308,
'loentransaktion_loenart' => 6747,
'loentransaktion_antal' => -32994.63,
'loentransaktion_sats' => 80236.9,
'loentransaktion_beloeb' => -7498841.57,
'loentransaktion_afdnr' => 15994,
'loentransaktion_projekt' => 'BEQ2kbFMjG;0kTb=R%N4',
'loentransaktion_tekst' => 'jFXmIuL=D_\'[email protected]',
'loentransaktion_dato1feriedag' => '2021-01-13',
'loentransaktion_udbkode' => 'iCKH',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/list'
payload = {
"loentransaktioner": [
{
"loentransaktion_loebenr": 158683,
"loentransaktion_arbejder": 54308,
"loentransaktion_loenart": 6747,
"loentransaktion_antal": -32994.63,
"loentransaktion_sats": 80236.9,
"loentransaktion_beloeb": -7498841.57,
"loentransaktion_afdnr": 15994,
"loentransaktion_projekt": "BEQ2kbFMjG;0kTb=R%N4",
"loentransaktion_tekst": "jFXmIuL=D_'gS[email protected]",
"loentransaktion_dato1feriedag": "2021-01-13",
"loentransaktion_udbkode": "iCKH"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": ""
}
]
Example response (422):
[
null,
{
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Medarbejder ('1234') findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"stored_procedure": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "stored_procedure"
}
]
},
null,
null,
{
"loentransaktion_loebenr": [
{
"OriginalErrorMessage": "loentransaktion findes ikke",
"ValidationRule": "exists"
}
]
},
null
]
HTTP Request
PUT api/company/{companyId}/salarytransaction/list
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | array list of salary transactions to update |
loentransaktioner.*.loentransaktion_loebenr |
integer | required | |
loentransaktioner.*.loentransaktion_arbejder |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_loenart |
integer | optional | Between: 1 and 9999 |
loentransaktioner.*.loentransaktion_antal |
numeric | optional | Between: -99999.99 and 99999.99 |
loentransaktioner.*.loentransaktion_sats |
numeric | optional | Between: 0 and 99999.99 |
loentransaktioner.*.loentransaktion_beloeb |
numeric | optional | Between: -9999999.99 and 9999999.99 |
loentransaktioner.*.loentransaktion_afdnr |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_projekt |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_dato1feriedag |
date | optional | Date format: Y-m-d or 0 |
loentransaktioner.*.loentransaktion_udbkode |
string | optional | Maximum: 4 and can only contain A-Å 0-9 |
Delete transaction, employee list
Delete salary transactions for list of employees
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/list"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_arbejder": 78509,
"loentransaktion_loebenr": 543
}
]
}
fetch(url, {
method: "DELETE",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/salarytransaction/list',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_arbejder' => 78509,
'loentransaktion_loebenr' => 543,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/list'
payload = {
"loentransaktioner": [
{
"loentransaktion_arbejder": 78509,
"loentransaktion_loebenr": 543
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
HTTP Request
DELETE api/company/{companyId}/salarytransaction/list
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | |
loentransaktioner.*.loentransaktion_arbejder |
integer | required | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_loebenr |
integer | required |
Transaction list, company
Transaction list for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytransaction',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loentransaktion_firma": 123,
"loentransaktion_arbejder": 1234,
"loentransaktion_loenart": 110,
"loentransaktion_loebenr": 1234,
"loentransaktion_antal": 0,
"loentransaktion_sats": 0,
"loentransaktion_beloeb": 0,
"loentransaktion_beregnet": 0,
"loentransaktion_afdnr": 0,
"loentransaktion_projekt": "",
"loentransaktion_tekst": "",
"loentransaktion_dato1feriedag": 0,
"loentransaktion_udbkode": ""
}
]
HTTP Request
GET api/company/{companyId}/salarytransaction
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Active salary types
Get list of used salary types currently active / in use for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/usedsalarytypes"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytransaction/usedsalarytypes',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/usedsalarytypes'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loentransaktion_loenart": 110
}
]
HTTP Request
GET api/company/{companyId}/salarytransaction/usedsalarytypes
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Validate
Validates the salary transactions
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/validation"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": [
{
"loentransaktion_arbejder": 78509,
"loentransaktion_loenart": 4593,
"loentransaktion_antal": 18422.61,
"loentransaktion_sats": 30745.2802678,
"loentransaktion_beloeb": 2570023.64,
"loentransaktion_afdnr": 26238,
"loentransaktion_projekt": "N:SBCS2jcEKlIv0jWa=Q",
"loentransaktion_tekst": "Fx'jDVoJtJ=AZ'gRH_piR",
"loentransaktion_date1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salarytransaction/validation',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => [
[
'loentransaktion_arbejder' => 78509,
'loentransaktion_loenart' => 4593,
'loentransaktion_antal' => 18422.61,
'loentransaktion_sats' => 30745.2802678,
'loentransaktion_beloeb' => 2570023.64,
'loentransaktion_afdnr' => 26238,
'loentransaktion_projekt' => 'N:SBCS2jcEKlIv0jWa=Q',
'loentransaktion_tekst' => 'Fx\'jDVoJtJ=AZ\'gRH_piR',
'loentransaktion_date1feriedag' => '2021-01-13',
'loentransaktion_udbkode' => 'Z0Di',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/validation'
payload = {
"loentransaktioner": [
{
"loentransaktion_arbejder": 78509,
"loentransaktion_loenart": 4593,
"loentransaktion_antal": 18422.61,
"loentransaktion_sats": 30745.2802678,
"loentransaktion_beloeb": 2570023.64,
"loentransaktion_afdnr": 26238,
"loentransaktion_projekt": "N:SBCS2jcEKlIv0jWa=Q",
"loentransaktion_tekst": "Fx'jDVoJtJ=AZ'gRH_piR",
"loentransaktion_date1feriedag": "2021-01-13",
"loentransaktion_udbkode": "Z0Di"
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (422):
[
null,
{
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Medarbejder (1234) findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"stored_procedure": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "stored_procedure"
}
]
},
null,
null,
null,
null
]
HTTP Request
POST api/company/{companyId}/salarytransaction/validation
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
array | required | array list of salary transactions to validate |
loentransaktioner.*.loentransaktion_arbejder |
integer | required | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_loenart |
integer | required | Between: 1 and 9999 |
loentransaktioner.*.loentransaktion_antal |
numeric | required | Between: -99999.99 and 99999.99 |
loentransaktioner.*.loentransaktion_sats |
numeric | required | Between: 0 and 99999.99 |
loentransaktioner.*.loentransaktion_beloeb |
numeric | required | Between: -9999999.99 and 9999999.99 |
loentransaktioner.*.loentransaktion_afdnr |
integer | optional | Between: 0 and 99999 |
loentransaktioner.*.loentransaktion_projekt |
string | optional | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loentransaktioner.*.loentransaktion_date1feriedag |
date | optional | Date format: Y-m-d or 0 |
loentransaktioner.*.loentransaktion_udbkode |
string | optional | Maximum: 4 and can only contain A-Å 0-9 |
Create multiple, file
Upload salary transaction from file
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/fileupload"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"opdater_arbejder_loen": 0
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salarytransaction/fileupload',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'opdater_arbejder_loen' => 0,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/fileupload'
payload = {
"opdater_arbejder_loen": 0
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"inactiveEmployees": [
{
"arbejder_nr": 7
}
],
"employeesWithErrors": [
{
"arbejder_nr": 42,
"linesWithErrors": 8
},
{
"arbejder_nr": 7,
"linesWithErrors": 1
}
]
}
Example response (422):
{
"loentransaktion_loenart": [
{
"OriginalErrorMessage": "Linjen '7;1' er ikke korrekt. Loenarten 1 findes ikke.",
"ValidationRule": "exists"
}
],
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Linjen '5;1002' er ikke korrekt. Medarbejder 5 findes ikke.",
"ValidationRule": "exists"
}
],
"loentransaktion_projekt": [
{
"OriginalErrorMessage": "Linjen '7;1002;0;0;0;0;dfasdasdadasdasdasdadsdasda' er ikke korrekt. Projekt 'dfasdasdadasdasdasdadsdasda' skal være mellem 0 og 20 tegn.",
"ValidationRule": "length"
}
]
}
HTTP Request
POST api/company/{companyId}/salarytransaction/fileupload
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktionFil |
file | required | Must be a file upload and allowed mime types: text/csv , text/plain , application/csv , application/x-csv , text/comma-separated-values , text/x-comma-separated-values or text/tab-separated-values |
opdater_arbejder_loen |
integer | required | Between: 0 and 1 |
Create multiple, text
Create salary transaction from text
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/field"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loentransaktioner": "quod",
"opdater_arbejder_loen": 1
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salarytransaction/field',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loentransaktioner' => 'quod',
'opdater_arbejder_loen' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/field'
payload = {
"loentransaktioner": "quod",
"opdater_arbejder_loen": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"inactiveEmployees": [
{
"arbejder_nr": 7
}
],
"employeesWithErrors": [
{
"arbejder_nr": 42,
"linesWithErrors": 8
},
{
"arbejder_nr": 7,
"linesWithErrors": 1
}
]
}
Example response (422):
{
"loentransaktion_loenart": [
{
"OriginalErrorMessage": "Linjen '7;1' er ikke korrekt. Loenarten 1 findes ikke.",
"ValidationRule": "exists"
}
],
"loentransaktion_arbejder": [
{
"OriginalErrorMessage": "Linjen '5;1002' er ikke korrekt. Medarbejder 5 findes ikke.",
"ValidationRule": "exists"
}
],
"loentransaktion_projekt": [
{
"OriginalErrorMessage": "Linjen '7;1002;0;0;0;0;dfasdasdadasdasdasdadsdasda' er ikke korrekt. Projekt 'dfasdasdadasdasdasdadsdasda' skal være mellem 0 og 20 tegn.",
"ValidationRule": "length"
}
]
}
HTTP Request
POST api/company/{companyId}/salarytransaction/field
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loentransaktioner |
string | required | the salary transaction as string |
opdater_arbejder_loen |
integer | required | Between: 0 and 1 |
Vacation payment codes
Return list of vacation payment codes
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/vacationpaymentcodelist"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytransaction/vacationpaymentcodelist',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/vacationpaymentcodelist'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"udbetalingskode_nr": "UDB1",
"udbetalingskode_tekst1": "Daglig (også inklusiv udbetalinger efter ferieårets afslutning, hvis ferien er holdt",
"udbetalingskode_tekst2": "Udbetalinger i ferieåret hvor lønmodtageren på almindeligvis har afholdt sin ferie.",
"udbetalingskode_1feriedagkrav": true
}
]
HTTP Request
GET api/company/{companyId}/salarytransaction/vacationpaymentcodelist
Requirements
- User is logged in
Update payment status
Update payment status for employees, activating or disabling salary
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytransaction/paymentstatus"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"medarbejdere": [
543
],
"arbejder_loen": 0
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/salarytransaction/paymentstatus',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'medarbejdere' => [
543,
],
'arbejder_loen' => 0,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytransaction/paymentstatus'
payload = {
"medarbejdere": [
543
],
"arbejder_loen": 0
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejder_nr": 123,
"arbejder_bruttoloen": 3000,
"arbejder_sidstopdtrans": "2017-07-25"
}
]
Example response (422):
{
"arbejder_nr": [
{
"OriginalErrorMessage": "Medarbejder (123) findes ikke",
"ValidationRule": "exist"
}
]
}
HTTP Request
PATCH api/company/{companyId}/salarytransaction/paymentstatus
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read and salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
medarbejdere |
array | required | list of employee numbers to update |
arbejder_loen |
integer | required | Between: 0 and 1 |
medarbejdere.* |
integer | required |
Salary type (lønarter)
Get salary type list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytype',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenart_firma": 123,
"loenart_nr": 7200,
"loenart_tf": "T",
"loenart_tekst": "KØRSELSGODTGØRELSE",
"loenart_sats": 3.53,
"loenart_minantal": -99999,
"loenart_maxantal": 99999,
"loenart_minsats": 0,
"loenart_maxsats": 0,
"loenart_minbeloeb": 0,
"loenart_maxbeloeb": 9999999,
"loenart_nulstil": 1,
"loenart_beregningskode": 0,
"loenart_changed": 0,
"loenart_bruttoskat": 0,
"loenart_aindkomst": 0,
"loenart_ferieberettetloen": 0,
"loenart_pensiongloen": 0,
"loenart_atp": 0,
"loenart_tidkode": 0,
"loenart_tidfaktor": 0,
"loenart_feriepengeudb": 0,
"loenart_haandteringskode": 0,
"loenart_type": 0,
"loenart_firmaloenart": "0",
"loenart_haandteringskode_text": "Ingen kode",
"loenartbeskrivelse_tekst": "Her kommer en beskrivelse i en senere version",
"loenart_standard": true,
"loenart_slutmarkering": 0,
"loenart_ejgroenland": 1,
"loenart_anvendelsesstartdato": 0,
"loenart_anvendelsesslutdato": 20190831,
"loenart_satser": {
"1": 3.53,
"2": 3.53,
"3": 3.53
}
}
]
HTTP Request
GET api/company/{companyId}/salarytype
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Salary type list with department markings
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/withdepartmentmarking"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytype/withdepartmentmarking',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/withdepartmentmarking'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenart_nr": 1234,
"loenart_tekst": "lønart tekst",
"loenart_afdelinger": false
}
]
HTTP Request
GET api/company/{companyId}/salarytype/withdepartmentmarking
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Get single salary type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytype/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"loenart_firma": 123,
"loenart_nr": 7200,
"loenart_tf": "T",
"loenart_tekst": "KØRSELSGODTGØRELSE",
"loenart_sats": 3.53,
"loenart_minantal": -99999,
"loenart_maxantal": 99999,
"loenart_minsats": 0,
"loenart_maxsats": 0,
"loenart_minbeloeb": 0,
"loenart_maxbeloeb": 9999999,
"loenart_nulstil": 1,
"loenart_beregningskode": 0,
"loenart_changed": 0,
"loenart_bruttoskat": 0,
"loenart_aindkomst": 0,
"loenart_ferieberettetloen": 0,
"loenart_pensiongloen": 0,
"loenart_atp": 0,
"loenart_tidkode": 0,
"loenart_tidfaktor": 0,
"loenart_feriepengeudb": 0,
"loenart_haandteringskode": 0,
"loenart_type": 0,
"loenart_firmaloenart": "0",
"loenart_haandteringskode_text": "Ingen kode",
"loenartbeskrivelse_tekst": "Her kommer en beskrivelse i en senere version",
"loenart_standard": true,
"loenart_slutmarkering": 0,
"loenart_ejgroenland": 1,
"loenart_anvendelsesstartdato": 0,
"loenart_anvendelsesslutdato": 20190831,
"loenart_satser": {
"1": 3.53,
"2": 3.53,
"3": 3.53
}
}
HTTP Request
GET api/company/{companyId}/salarytype/{salaryTypeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Update salary type
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loenart_nr": 1586,
"loenart_tf": "h",
"loenart_tekst": "Ncz\/wsKoe=PrQ4hg:[email protected]",
"loenart_sats": 7789.04,
"loenart_minantal": -98623.46,
"loenart_maxantal": 40111.35,
"loenart_minsats": 94691.87,
"loenart_maxsats": -2608.65,
"loenart_minbeloeb": -5304069.04,
"loenart_maxbeloeb": -5400450.82,
"loenart_nulstil": 8,
"loenart_beregningskode": 554,
"loenart_changed": 3,
"loenart_bruttoskat": 8,
"loenart_aindkomst": 5,
"loenart_ferieberettetloen": 7,
"loenart_pensiongloen": 5,
"loenart_atp": 8,
"loenart_tidkode": 4,
"loenart_tidfaktor": 1965960.2269,
"loenart_feriepengeudb": 0,
"loenart_haandteringskode": 71,
"loenart_type": 5
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/salarytype/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loenart_nr' => 1586,
'loenart_tf' => 'h',
'loenart_tekst' => 'Ncz/wsKoe=PrQ4hg:[email protected]',
'loenart_sats' => 7789.04,
'loenart_minantal' => -98623.46,
'loenart_maxantal' => 40111.35,
'loenart_minsats' => 94691.87,
'loenart_maxsats' => -2608.65,
'loenart_minbeloeb' => -5304069.04,
'loenart_maxbeloeb' => -5400450.82,
'loenart_nulstil' => 8,
'loenart_beregningskode' => 554,
'loenart_changed' => 3,
'loenart_bruttoskat' => 8,
'loenart_aindkomst' => 5,
'loenart_ferieberettetloen' => 7,
'loenart_pensiongloen' => 5,
'loenart_atp' => 8,
'loenart_tidkode' => 4,
'loenart_tidfaktor' => 1965960.2269,
'loenart_feriepengeudb' => 0,
'loenart_haandteringskode' => 71,
'loenart_type' => 5,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/1'
payload = {
"loenart_nr": 1586,
"loenart_tf": "h",
"loenart_tekst": "Ncz\/wsKoe=PrQ4hg:[email protected]",
"loenart_sats": 7789.04,
"loenart_minantal": -98623.46,
"loenart_maxantal": 40111.35,
"loenart_minsats": 94691.87,
"loenart_maxsats": -2608.65,
"loenart_minbeloeb": -5304069.04,
"loenart_maxbeloeb": -5400450.82,
"loenart_nulstil": 8,
"loenart_beregningskode": 554,
"loenart_changed": 3,
"loenart_bruttoskat": 8,
"loenart_aindkomst": 5,
"loenart_ferieberettetloen": 7,
"loenart_pensiongloen": 5,
"loenart_atp": 8,
"loenart_tidkode": 4,
"loenart_tidfaktor": 1965960.2269,
"loenart_feriepengeudb": 0,
"loenart_haandteringskode": 71,
"loenart_type": 5
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/salarytype/{salaryTypeId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loenart_nr |
integer | optional | Between: 0 and 9999 |
loenart_tf |
string | optional | Maximum: 1 |
loenart_tekst |
string | optional | Maximum: 21 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loenart_sats |
numeric | optional | Between: -99999.99 and 99999.99 |
loenart_minantal |
numeric | optional | Between: -99999.99 and 99999.99 |
loenart_maxantal |
numeric | optional | Between: -99999.99 and 99999.99 |
loenart_minsats |
numeric | optional | Between: -99999.99 and 99999.99 |
loenart_maxsats |
numeric | optional | Between: -99999.99 and 99999.99 |
loenart_minbeloeb |
numeric | optional | Between: -9999999.99 and 9999999.99 |
loenart_maxbeloeb |
numeric | optional | Between: -9999999.99 and 9999999.99 |
loenart_nulstil |
integer | optional | Between: 0 and 8 |
loenart_beregningskode |
integer | optional | Between: 0 and 999 |
loenart_changed |
integer | optional | Between: 0 and 9 |
loenart_bruttoskat |
integer | optional | Between: 0 and 9 |
loenart_aindkomst |
integer | optional | Between: 0 and 9 |
loenart_ferieberettetloen |
integer | optional | Between: 0 and 9 |
loenart_pensiongloen |
integer | optional | Between: 0 and 9 |
loenart_atp |
integer | optional | Between: 0 and 9 |
loenart_tidkode |
integer | optional | Between: 0 and 9 |
loenart_tidfaktor |
numeric | optional | |
loenart_feriepengeudb |
integer | optional | Between: 0 and 1 |
loenart_haandteringskode |
integer | optional | Between: 0 and 99 |
loenart_type |
integer | optional | Between: 0 and 9 |
Get single department distribution
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/1/departmentdistribution"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytype/1/departmentdistribution',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/1/departmentdistribution'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenartafdeling_id": 1,
"loenartafdeling_firma_nr": 123,
"loenartafdeling_afdeling_nr": 1,
"loenartafdeling_loenart_nr": 920,
"loenartafdeling_procent": 0.1111
},
{
"loenartafdeling_id": 2,
"loenartafdeling_firma_nr": 123,
"loenartafdeling_afdeling_nr": 2,
"loenartafdeling_loenart_nr": 920,
"loenartafdeling_procent": 98.457
},
{
"loenartafdeling_id": 2,
"loenartafdeling_firma_nr": 123,
"loenartafdeling_afdeling_nr": 3,
"loenartafdeling_loenart_nr": 920,
"loenartafdeling_procent": 0.45
},
{
"loenartafdeling_id": 2,
"loenartafdeling_firma_nr": 123,
"loenartafdeling_afdeling_nr": 4,
"loenartafdeling_loenart_nr": 920,
"loenartafdeling_procent": 0.9819
}
]
HTTP Request
GET api/company/{companyId}/salarytype/{salaryTypeId}/departmentdistribution
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Update department distribution
Sum of loenartafdeling_procent
procentages must be either 0 or 100.
Each individual procentage must be an float between 0.0000 and 100.0000, both included.
A department can only be listed once and must be related to the company.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/1/departmentdistribution"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"departmentdistributionlist": [
{
"loenartafdeling_afdeling_nr": 78509,
"loenartafdeling_procent": 67.4728
}
]
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/salarytype/1/departmentdistribution',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'departmentdistributionlist' => [
[
'loenartafdeling_afdeling_nr' => 78509,
'loenartafdeling_procent' => 67.4728,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/1/departmentdistribution'
payload = {
"departmentdistributionlist": [
{
"loenartafdeling_afdeling_nr": 78509,
"loenartafdeling_procent": 67.4728
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/salarytype/{salaryTypeId}/departmentdistribution
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
departmentdistributionlist |
array | optional | |
departmentdistributionlist.*.loenartafdeling_afdeling_nr |
integer | required | Between: 0 and 99999 |
departmentdistributionlist.*.loenartafdeling_procent |
numeric | required | Between: 0.0000 and 100.0000 |
Salary type relation list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/relation"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/salarytype/relation',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/relation'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"loenartsrelation_id": 1,
"loenartsrelation_firma": 123,
"tilloenart": {
"loenartsrelation_tilloenart": 1234,
"loenart_tekst": "TILLÆG MODR.ADGANG"
},
"fraloenart": {
"loenartsrelation_fraloenart": 1258,
"loenart_tekst": "SV NORMALTIMER"
}
}
]
HTTP Request
GET api/company/{companyId}/salarytype/relation
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Create salary type relation
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/relation"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loenartsrelation_fraloenart": 1586,
"loenartsrelation_tilloenart": 5430,
"loenartsrelation_beregningsfaktor": 47703.75147
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/salarytype/relation',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loenartsrelation_fraloenart' => 1586,
'loenartsrelation_tilloenart' => 5430,
'loenartsrelation_beregningsfaktor' => 47703.75147,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/relation'
payload = {
"loenartsrelation_fraloenart": 1586,
"loenartsrelation_tilloenart": 5430,
"loenartsrelation_beregningsfaktor": 47703.75147
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"loenartsrelation_id": 1,
"loenartsrelation_firma": 123,
"tilloenart": {
"loenartsrelation_tilloenart": 1234,
"loenart_tekst": "TILLÆG MODR.ADGANG"
},
"fraloenart": {
"loenartsrelation_fraloenart": 1258,
"loenart_tekst": "SV NORMALTIMER"
}
}
HTTP Request
POST api/company/{companyId}/salarytype/relation
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loenartsrelation_fraloenart |
integer | required | Between: 0 and 9999 |
loenartsrelation_tilloenart |
integer | required | Between: 0 and 9999 |
loenartsrelation_beregningsfaktor |
numeric | optional | Between: -10.00000 and 99999.99999 |
Delete salary type relation
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/salarytype/relation/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/salarytype/relation/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/salarytype/relation/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/salarytype/relation/{relationId}
Requirements
- User is logged in
- User has access to company
- User has access right to salary.write
Server time
Get the server time
Example request:
const url = new URL(
"https://mit.proloen.dk/api/servertime"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/servertime',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/servertime'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"time": "2018-07-26T11:04:29+02:00"
}
HTTP Request
GET api/servertime
Short term fee (Kortfrist gebyr)
display short term fee.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/shorttermfee"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/shorttermfee',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/shorttermfee'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"kortfristgebyr_gebyr": 143
}
HTTP Request
GET api/company/{companyId}/shorttermfee
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Update short term fee.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/shorttermfee"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"kortfristgebyr_gebyr": 124580.7912707
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/shorttermfee',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'kortfristgebyr_gebyr' => 124580.7912707,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/shorttermfee'
payload = {
"kortfristgebyr_gebyr": 124580.7912707
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/shorttermfee
Requirements
- User is logged in
- User has access to company
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
kortfristgebyr_gebyr |
numeric | required |
Staff group (personalegruppe)
List of staff groups
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/staffgroups"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/staffgroups',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/staffgroups'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"personalegruppe_nr": 1,
"personalegruppe_tekst": "Faglært\/ufaglært"
}
]
HTTP Request
GET api/company/{companyId}/staffgroups
Requirements
- User is logged in
StatisticsController
List statistics for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/statistics"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/statistics',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/statistics'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"firmagraf_firma": 123,
"firmagraf_maaned": 201611,
"firmagraf_antalloensedler": 21,
"firmagraf_bruttoskattegrundlag": 123456.78,
"firmagraf_opdateringsdato": "2017-06-22"
}
]
HTTP Request
GET api/company/{companyId}/statistics
Requirements
- User is logged in
- User has access to company
Statistics code (Statistik kode)
Get statistics code list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/statisticscode"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/statisticscode',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/statisticscode'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"statistikkoder_nr": "0",
"statistikkoder_tekst": "NEJ"
}
]
HTTP Request
GET api/company/{companyId}/statisticscode
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Sympa
Get single sympa connection
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/sympa"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/sympa',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/sympa'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"sympa_firma_nr": 123,
"sympa_status": 3,
"sympa_key": "key",
"sympa_secret": "secret",
"sympa_internal_milage": 1,
"sympa_customer_milage": 2
}
HTTP Request
GET api/company/{companyId}/sympa
Requirements
- User is logged in
- User has access to company
- User has access right to read
Updates sympa connection.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/sympa"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"sympa_key": "quod",
"sympa_secret": "natus",
"sympa_internal_milage": 78,
"sympa_customer_milage": 543
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/sympa',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'sympa_key' => 'quod',
'sympa_secret' => 'natus',
'sympa_internal_milage' => 78,
'sympa_customer_milage' => 543,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/sympa'
payload = {
"sympa_key": "quod",
"sympa_secret": "natus",
"sympa_internal_milage": 78,
"sympa_customer_milage": 543
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/sympa
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
sympa_key |
string | optional | |
sympa_secret |
string | optional | |
sympa_internal_milage |
integer | optional | |
sympa_customer_milage |
integer | optional |
Create single sympa connection
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/sympa"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"sympa_key": "quod",
"sympa_secret": "natus",
"sympa_internal_milage": 78,
"sympa_customer_milage": 543
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/sympa',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'sympa_key' => 'quod',
'sympa_secret' => 'natus',
'sympa_internal_milage' => 78,
'sympa_customer_milage' => 543,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/sympa'
payload = {
"sympa_key": "quod",
"sympa_secret": "natus",
"sympa_internal_milage": 78,
"sympa_customer_milage": 543
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"sympa_firma_nr": 123,
"sympa_status": 2,
"sympa_key": "key",
"sympa_secret": "secret",
"sympa_internal_milage": 1,
"sympa_customer_milage": 2
}
HTTP Request
POST api/company/{companyId}/sympa
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
sympa_key |
string | required | |
sympa_secret |
string | required | |
sympa_internal_milage |
integer | required | |
sympa_customer_milage |
integer | required |
Delete sympa connection
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/sympa"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/sympa',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/sympa'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/sympa
Requirements
- User is logged in
- User has access to company
- User has access right to write
System message (System besked)
Get a list of current system messages
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/systemmessage"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/systemmessage',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/systemmessage'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"starttime": "2018-03-19T09:55:04+01:00",
"endtime": "2018-03-19T10:55:04+01:00",
"title": "test",
"message": "test besked",
"hash": "7d98ee1e947c8d997a892bdbf685c87c0fd73f4920070732a7ac4e9c18384252",
"created_at": "2018-03-19T09:55:04+01:00",
"updated_at": "2018-03-19T09:55:04+01:00"
}
]
HTTP Request
GET api/company/{companyId}/systemmessage
Requirements
- User is logged in
Create system message.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/systemmessage"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"starttime": 124580.7912707,
"endtime": 44163.24,
"title": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...",
"message": "Dolorem quisquam cumque repellendus ut quasi hic expedita. Illum optio nemo nihil doloribus. ..."
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/systemmessage',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'starttime' => 124580.7912707,
'endtime' => 44163.24,
'title' => 'Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...',
'message' => 'Dolorem quisquam cumque repellendus ut quasi hic expedita. Illum optio nemo nihil doloribus. ...',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/systemmessage'
payload = {
"starttime": 124580.7912707,
"endtime": 44163.24,
"title": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...",
"message": "Dolorem quisquam cumque repellendus ut quasi hic expedita. Illum optio nemo nihil doloribus. ..."
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"id": 1,
"starttime": "2018-03-19T09:55:04+01:00",
"endtime": "2018-03-19T10:55:04+01:00",
"title": "test",
"message": "test besked",
"hash": "7d98ee1e947c8d997a892bdbf685c87c0fd73f4920070732a7ac4e9c18384252",
"created_at": "2018-03-19T09:55:04+01:00",
"updated_at": "2018-03-19T09:55:04+01:00"
}
HTTP Request
POST api/company/{companyId}/systemmessage
Requirements
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
starttime |
numeric | required | |
endtime |
numeric | required | |
title |
string | required | Maximum: 255 |
message |
string | required | Maximum: 500 |
Get a list of all system messages
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/systemmessage/all"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/systemmessage/all',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/systemmessage/all'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"id": 1,
"starttime": "2018-03-19T09:55:04+01:00",
"endtime": "2018-03-19T10:55:04+01:00",
"title": "test",
"message": "test besked",
"hash": "7d98ee1e947c8d997a892bdbf685c87c0fd73f4920070732a7ac4e9c18384252",
"created_at": "2018-03-19T09:55:04+01:00",
"updated_at": "2018-03-19T09:55:04+01:00"
}
]
HTTP Request
GET api/company/{companyId}/systemmessage/all
Requirements
- User is logged in
- User is super admin
Get a single system message.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/systemmessage/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/systemmessage/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/systemmessage/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"id": 1,
"starttime": "2018-03-19T09:55:04+01:00",
"endtime": "2018-03-19T10:55:04+01:00",
"title": "test",
"message": "test besked",
"hash": "7d98ee1e947c8d997a892bdbf685c87c0fd73f4920070732a7ac4e9c18384252",
"created_at": "2018-03-19T09:55:04+01:00",
"updated_at": "2018-03-19T09:55:04+01:00"
}
HTTP Request
GET api/company/{companyId}/systemmessage/{systemMessageId}
Requirements
- User is logged in
Update a system message.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/systemmessage/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"starttime": 124580.7912707,
"endtime": 44163.24,
"title": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...",
"message": "Dolorem quisquam cumque repellendus ut quasi hic expedita. Illum optio nemo nihil doloribus. ..."
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/systemmessage/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'starttime' => 124580.7912707,
'endtime' => 44163.24,
'title' => 'Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...',
'message' => 'Dolorem quisquam cumque repellendus ut quasi hic expedita. Illum optio nemo nihil doloribus. ...',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/systemmessage/1'
payload = {
"starttime": 124580.7912707,
"endtime": 44163.24,
"title": "Quisquam dolor in nihil quod et non. Cumque temporibus quis officia delectus. ...",
"message": "Dolorem quisquam cumque repellendus ut quasi hic expedita. Illum optio nemo nihil doloribus. ..."
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/systemmessage/{systemMessageId}
Requirements
- User is logged in
- User is super admin
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
starttime |
numeric | optional | |
endtime |
numeric | optional | |
title |
string | optional | Maximum: 255 |
message |
string | optional | Maximum: 500 |
Remove the specified system message.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/systemmessage/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/systemmessage/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/systemmessage/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/systemmessage/{systemMessageId}
Requirements
- User is logged in
- User is super admin
Tax payment (Skattebetaling)
Get tax payment list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/taxpayment"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/taxpayment',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/taxpayment'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"skattebetaling_nr": 1,
"skattebetaling_tekst": "Normal skat"
}
]
HTTP Request
GET api/company/{companyId}/taxpayment
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
Translation (Info I)
Get translations as json.
Example request:
const url = new URL(
"https://mit.proloen.dk/api/translation/da_dk.json"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/translation/da_dk.json',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/translation/da_dk.json'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"INFO.ACCESS.CREATE.USERNAME_INFO": "Brugernavnet skal starte med firmanummer plus '-'",
"INFO.ACCESS.RIGHTS.ONLY_OWN_RIGHTS": "Man kan kun ændre rettigheder, som man selv har."
}
HTTP Request
GET api/translation/{language}.json
URL Parameters
Parameter | Status | Description |
---|---|---|
language |
required | the language to get the translations for |
Get a list of translation
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/translation/da_dk"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/translation/da_dk',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/translation/da_dk'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"key": "INFO.ACCESS.CREATE.USERNAME_INFO",
"value": "Brugernavnet skal starte med firmanummer plus '-'"
},
{
"key": "INFO.ACCESS.RIGHTS.ONLY_OWN_RIGHTS",
"value": "Man kan kun ændre rettigheder, som man selv har."
}
]
HTTP Request
GET api/company/{companyId}/translation/{language}
Requirements
- User is logged in
- User is super admin
URL Parameters
Parameter | Status | Description |
---|---|---|
language |
required | the language to get the translations for |
Get a single translation
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/translation/da_dk/INFO.ACCESS.CREATE.USERNAME_INFO"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/translation/da_dk/INFO.ACCESS.CREATE.USERNAME_INFO',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/translation/da_dk/INFO.ACCESS.CREATE.USERNAME_INFO'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"key": "INFO.ACCESS.CREATE.USERNAME_INFO",
"value": "Brugernavnet skal starte med firmanummer plus '-'"
}
HTTP Request
GET api/company/{companyId}/translation/{language}/{languageKey}
Requirements
- User is logged in
- User is super admin
URL Parameters
Parameter | Status | Description |
---|---|---|
language |
required | the language to get the translation for |
languageKey |
required | the key for the translation |
Update translation
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/translation/da_dk/INFO.ACCESS.CREATE.USERNAME_INFO"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"value": "quod"
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/translation/da_dk/INFO.ACCESS.CREATE.USERNAME_INFO',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'value' => 'quod',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/translation/da_dk/INFO.ACCESS.CREATE.USERNAME_INFO'
payload = {
"value": "quod"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/translation/{language}/{languageKey}
Requirements
- User is logged in
- User is super admin
URL Parameters
Parameter | Status | Description |
---|---|---|
language |
required | the language to update the translation for |
languageKey |
required |
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
value |
string | required |
User (Bruger)
The user id is the person whose external access is being revoked.
NOT the user id of the person who is currently logged in to the system
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/externaluser/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/externaluser/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/externaluser/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/externaluser/{userId}
Requirements
- User is logged in
- User has access to company
- User has access right to write
Create and store an external user
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/externaluser"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"brugeradgang_brugernavn": "6245-nvbVVth0N6Oxir-kC4ZZn",
"loenlaes": 5,
"loenskriv": 6,
"loenbestil": 6,
"loengodkend": 7,
"arkiv": 4,
"adganglaes": 2,
"adgangskriv": 2,
"loen_bestil_laes": 5,
"loen_godkend_laes": 6
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/externaluser',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'brugeradgang_brugernavn' => '6245-nvbVVth0N6Oxir-kC4ZZn',
'loenlaes' => 5,
'loenskriv' => 6,
'loenbestil' => 6,
'loengodkend' => 7,
'arkiv' => 4,
'adganglaes' => 2,
'adgangskriv' => 2,
'loen_bestil_laes' => 5,
'loen_godkend_laes' => 6,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/externaluser'
payload = {
"brugeradgang_brugernavn": "6245-nvbVVth0N6Oxir-kC4ZZn",
"loenlaes": 5,
"loenskriv": 6,
"loenbestil": 6,
"loengodkend": 7,
"arkiv": 4,
"adganglaes": 2,
"adgangskriv": 2,
"loen_bestil_laes": 5,
"loen_godkend_laes": 6
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"ExternalUser": {
"bruger_brugernavn": "123-abc",
"bruger_navn": "Bruger 1"
},
"Access": {
"superadmin": false,
"read": true,
"write": false,
"archive": true,
"salary": {
"read": true,
"write": false,
"order": {
"read": false,
"write": false
},
"approve": {
"read": false,
"write": false
}
}
}
}
HTTP Request
POST api/company/{companyId}/externaluser
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
brugeradgang_brugernavn |
string | required | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
loenlaes |
integer | required | Must have an exact length of 1 |
loenskriv |
integer | required | Must have an exact length of 1 |
loenbestil |
integer | required | Must have an exact length of 1 |
loengodkend |
integer | required | Must have an exact length of 1 |
arkiv |
integer | required | Must have an exact length of 1 |
adganglaes |
integer | required | Must have an exact length of 1 |
adgangskriv |
integer | required | Must have an exact length of 1 |
loen_bestil_laes |
integer | required | Must have an exact length of 1 |
loen_godkend_laes |
integer | required | Must have an exact length of 1 |
Updates an existing external user.
It is only the access rights that can be changed
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/externaluser/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"loenlaes": 2,
"loenskriv": 5,
"loenbestil": 7,
"loengodkend": 6,
"arkiv": 1,
"adganglaes": 3,
"adgangskriv": 6,
"loen_bestil_laes": 4,
"loen_godkend_laes": 9
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/externaluser/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'loenlaes' => 2,
'loenskriv' => 5,
'loenbestil' => 7,
'loengodkend' => 6,
'arkiv' => 1,
'adganglaes' => 3,
'adgangskriv' => 6,
'loen_bestil_laes' => 4,
'loen_godkend_laes' => 9,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/externaluser/1'
payload = {
"loenlaes": 2,
"loenskriv": 5,
"loenbestil": 7,
"loengodkend": 6,
"arkiv": 1,
"adganglaes": 3,
"adgangskriv": 6,
"loen_bestil_laes": 4,
"loen_godkend_laes": 9
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/externaluser/{userId}
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
loenlaes |
integer | optional | Must have an exact length of 1 |
loenskriv |
integer | optional | Must have an exact length of 1 |
loenbestil |
integer | optional | Must have an exact length of 1 |
loengodkend |
integer | optional | Must have an exact length of 1 |
arkiv |
integer | optional | Must have an exact length of 1 |
adganglaes |
integer | optional | Must have an exact length of 1 |
adgangskriv |
integer | optional | Must have an exact length of 1 |
loen_bestil_laes |
integer | optional | Must have an exact length of 1 |
loen_godkend_laes |
integer | optional | Must have an exact length of 1 |
Return a list of all users
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/user"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/user',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/user'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"User": {
"bruger_firma": 123,
"bruger_brugernavn": "123-abc",
"bruger_navn": "bruger",
"bruger_email": "[email protected]",
"bruger_mobil": "12345678"
},
"Access": {
"superadmin": false,
"read": true,
"write": false,
"archive": false,
"salary": {
"read": false,
"write": false,
"order": {
"read": false,
"write": false
},
"approve": {
"read": false,
"write": false
}
}
}
}
]
HTTP Request
GET api/company/{companyId}/user
Requirements
- User is logged in
- User has access to company
- User has access right to read
api/company/{companyId}/user/approval
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/user/approval"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/user/approval',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/user/approval'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"bruger_navn": "bruger",
"bruger_email": "[email protected]",
"bruger_mobil": "12345678"
}
]
HTTP Request
GET api/company/{companyId}/user/approval
Returns a list of all companies a companies users has access to
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/user/admin"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/user/admin',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/user/admin'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
HTTP Request
GET api/company/{companyId}/user/admin
Requirements
- User is logged in
- User has access to company
- User is super admin
Returns a single user based on company and user id
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/user/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/user/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/user/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"User": {
"bruger_firma": 123,
"bruger_brugernavn": "123-abc",
"bruger_navn": "bruger",
"bruger_email": "[email protected]",
"bruger_mobil": "12345678"
},
"Access": {
"superadmin": false,
"read": true,
"write": false,
"archive": false,
"salary": {
"read": false,
"write": false,
"order": {
"read": false,
"write": false
},
"approve": {
"read": false,
"write": false
}
}
}
}
HTTP Request
GET api/company/{companyId}/user/{userId}
Requirements
- User is logged in
- User has access to company
- User has access right to write
Update User
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/user/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"bruger_navn": "YEBvV-gnN0rSw\/[email protected]_iU3D",
"bruger_kodeord": "=ON3F)=%^w7)=,e",
"bruger_kodeord_confirm": "=ON3F)=%^w7)=,e",
"bruger_email": "[email protected]%@iNy:1Q\/mr7jZN&d,QLjO1Sn-OJyyA:bN=Gh%5boRwWFK4",
"bruger_mobil": "Odio.",
"loenlaes": 6,
"loenskriv": 3,
"loenbestil": 8,
"loengodkend": 6,
"arkiv": 2,
"adganglaes": 3,
"adgangskriv": 3,
"loen_bestil_laes": 4,
"loen_godkend_laes": 9
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/user/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'bruger_navn' => 'YEBvV-gnN0rSw/[email protected]_iU3D',
'bruger_kodeord' => '=ON3F)=%^w7)=,e',
'bruger_kodeord_confirm' => '=ON3F)=%^w7)=,e',
'bruger_email' => '[email protected]%@iNy:1Q/mr7jZN&d,QLjO1Sn-OJyyA:bN=Gh%5boRwWFK4',
'bruger_mobil' => 'Odio.',
'loenlaes' => 6,
'loenskriv' => 3,
'loenbestil' => 8,
'loengodkend' => 6,
'arkiv' => 2,
'adganglaes' => 3,
'adgangskriv' => 3,
'loen_bestil_laes' => 4,
'loen_godkend_laes' => 9,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/user/1'
payload = {
"bruger_navn": "YEBvV-gnN0rSw\/[email protected]_iU3D",
"bruger_kodeord": "=ON3F)=%^w7)=,e",
"bruger_kodeord_confirm": "=ON3F)=%^w7)=,e",
"bruger_email": "[email protected]%@iNy:1Q\/mr7jZN&d,QLjO1Sn-OJyyA:bN=Gh%5boRwWFK4",
"bruger_mobil": "Odio.",
"loenlaes": 6,
"loenskriv": 3,
"loenbestil": 8,
"loengodkend": 6,
"arkiv": 2,
"adganglaes": 3,
"adgangskriv": 3,
"loen_bestil_laes": 4,
"loen_godkend_laes": 9
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/user/{userId}
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
bruger_navn |
string | optional | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_kodeord |
string | optional | Minimum: 8 and maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_kodeord_confirm |
string | optional | Required if the parameters bruger_kodeord are present. and must be the same as bruger_kodeord and minimum: 8 and maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_email |
string | optional | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_mobil |
string | optional | Maximum: 8 |
loenlaes |
integer | optional | Must have an exact length of 1 |
loenskriv |
integer | optional | Must have an exact length of 1 |
loenbestil |
integer | optional | Must have an exact length of 1 |
loengodkend |
integer | optional | Must have an exact length of 1 |
arkiv |
integer | optional | Must have an exact length of 1 |
adganglaes |
integer | optional | Must have an exact length of 1 |
adgangskriv |
integer | optional | Must have an exact length of 1 |
loen_bestil_laes |
integer | optional | Must have an exact length of 1 |
loen_godkend_laes |
integer | optional | Must have an exact length of 1 |
Create user
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/user"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"bruger_brugernavn": "6245-nvbVVth0N6Oxir-kC4ZZn",
"bruger_navn": "EyFOu%XDAvS-fmM0rSu [email protected]",
"bruger_kodeord": "=5BS)=5$E9)=AO-)|^=",
"bruger_kodeord_confirm": "=5BS)=5$E9)=AO-)|^=",
"bruger_email": "JDi&H1uUrUMhoY4_O]PyfoViFkMK%PzTI:Or:FXeejyHLnyNv3T%@jOx-1Q'mq,j]N&dX",
"bruger_mobil": "Rerum.",
"loenlaes": 5,
"loenskriv": 2,
"loenbestil": 6,
"loengodkend": 1,
"arkiv": 7,
"adganglaes": 5,
"adgangskriv": 3,
"loen_bestil_laes": 9,
"loen_godkend_laes": 6
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/user',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'bruger_brugernavn' => '6245-nvbVVth0N6Oxir-kC4ZZn',
'bruger_navn' => 'EyFOu%XDAvS-fmM0rSu [email protected]',
'bruger_kodeord' => '=5BS)=5$E9)=AO-)|^=',
'bruger_kodeord_confirm' => '=5BS)=5$E9)=AO-)|^=',
'bruger_email' => 'JDi&H1uUrUMhoY4_O]PyfoViFkMK%PzTI:Or:FXeejyHLnyNv3T%@jOx-1Q\'mq,j]N&dX',
'bruger_mobil' => 'Rerum.',
'loenlaes' => 5,
'loenskriv' => 2,
'loenbestil' => 6,
'loengodkend' => 1,
'arkiv' => 7,
'adganglaes' => 5,
'adgangskriv' => 3,
'loen_bestil_laes' => 9,
'loen_godkend_laes' => 6,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/user'
payload = {
"bruger_brugernavn": "6245-nvbVVth0N6Oxir-kC4ZZn",
"bruger_navn": "EyFOu%XDAvS-fmM0rSu [email protected]",
"bruger_kodeord": "=5BS)=5$E9)=AO-)|^=",
"bruger_kodeord_confirm": "=5BS)=5$E9)=AO-)|^=",
"bruger_email": "JDi&H1uUrUMhoY4_O]PyfoViFkMK%PzTI:Or:FXeejyHLnyNv3T%@jOx-1Q'mq,j]N&dX",
"bruger_mobil": "Rerum.",
"loenlaes": 5,
"loenskriv": 2,
"loenbestil": 6,
"loengodkend": 1,
"arkiv": 7,
"adganglaes": 5,
"adgangskriv": 3,
"loen_bestil_laes": 9,
"loen_godkend_laes": 6
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"User": {
"bruger_firma": 123,
"bruger_brugernavn": "123-abc",
"bruger_navn": "bruger",
"bruger_email": "[email protected]",
"bruger_mobil": "12345678"
},
"Access": {
"superadmin": false,
"read": true,
"write": false,
"archive": false,
"salary": {
"read": false,
"write": false,
"order": {
"read": false,
"write": false
},
"approve": {
"read": false,
"write": false
}
}
}
}
HTTP Request
POST api/company/{companyId}/user
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
bruger_brugernavn |
string | required | Maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_navn |
string | required | Maximum: 30 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_kodeord |
string | required | Minimum: 8 and maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_kodeord_confirm |
string | required | Must be the same as bruger_kodeord and minimum: 8 and maximum: 20 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_email |
string | required | Maximum: 70 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = and space |
bruger_mobil |
string | optional | Maximum: 8 |
loenlaes |
integer | required | Must have an exact length of 1 |
loenskriv |
integer | required | Must have an exact length of 1 |
loenbestil |
integer | required | Must have an exact length of 1 |
loengodkend |
integer | required | Must have an exact length of 1 |
arkiv |
integer | required | Must have an exact length of 1 |
adganglaes |
integer | required | Must have an exact length of 1 |
adgangskriv |
integer | required | Must have an exact length of 1 |
loen_bestil_laes |
integer | required | Must have an exact length of 1 |
loen_godkend_laes |
integer | required | Must have an exact length of 1 |
Delete User
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/user/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/user/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/user/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/user/{userId}
Requirements
- User is logged in
- User has access to company
- User has access right to write
Returns a list of all external users
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/externaluser"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/externaluser',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/externaluser'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"ExternalUser": {
"bruger_brugernavn": "123-abc",
"bruger_navn": "Bruger 1"
},
"Access": {
"superadmin": false,
"read": true,
"write": false,
"archive": true,
"salary": {
"read": true,
"write": false,
"order": {
"read": false,
"write": false
},
"approve": {
"read": false,
"write": false
}
}
}
}
]
HTTP Request
GET api/company/{companyId}/externaluser
Requirements
- User is logged in
- User has access to company
- User has access right to read
Returns an external user based on company and user id
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/externaluser/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/externaluser/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/externaluser/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"ExternalUser": {
"bruger_brugernavn": "123-abc",
"bruger_navn": "Bruger 1"
},
"Access": {
"superadmin": false,
"read": true,
"write": false,
"archive": true,
"salary": {
"read": true,
"write": false,
"order": {
"read": false,
"write": false
},
"approve": {
"read": false,
"write": false
}
}
}
}
HTTP Request
GET api/company/{companyId}/externaluser/{userId}
Requirements
- User is logged in
- User has access to company
- User has access right to read
get external user information
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/externalinformation/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/externalinformation/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/externalinformation/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"bruger_navn": "Mads Madsen",
"firma_navn": "Madsens bageri",
"firma_nr": 123
}
]
HTTP Request
GET api/company/{companyId}/externalinformation/{userId}
Requirements
- User is logged in
- User has access to company
- User has access right to write
e-conomic
Get e-conomic integration for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/economics"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/economics',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/economics'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"economic_firma_nr": 123,
"economic_callbackid": "{1fb2a0dd-5230-4e54-bb82-5d83f083492f}",
"economic_accessid": "SFDFS2342RWE",
"economic_cashbook": "ProLøn",
"economic_status": 3,
"economic_lastcheck": "2020-01-02 09:50:10.887",
"economic_error": "",
"economic_agreementnumber": "0"
}
HTTP Request
GET api/company/{companyId}/economics
Requirements
- User is logged in
- User has access to company
- User has access right to write
Get e-conomic integration for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/economics/error"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/economics/error',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/economics/error'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"economickonteringsbilagfil_id": 1,
"economickonteringsbilagfil_xmlfil": "x50117.321321.3213.321.xml",
"economickonteringsbilagfil_xmlfildato": "2019-07-25T18:36:27+02:00",
"economickonteringsbilagfil_accessid": "Kh2dJ5tZ23bEv54QRy2vrQPMLZQ2heRFbs81",
"economickonteringsbilagfil_fejlbesked": "Error in data: Konto (1) er ukendt ved economic",
"economickonteringsbilagfil_fejltype": 5,
"economickonteringsbilagfil_fejlparametre": "1",
"line_list": [
{
"economickonteringsbilagfilcsv_id": 2,
"economickonteringsbilagfilcsv_economickonteringsbilagfil_id": 1,
"economickonteringsbilagfilcsv_linjenr": 1,
"economickonteringsbilagfilcsv_Proloenkontonummer": 5135000,
"economickonteringsbilagfilcsv_konto": 1,
"economickonteringsbilagfilcsv_afdeling": 0,
"economickonteringsbilagfilcsv_loenart": 0,
"economickonteringsbilagfilcsv_beloeb": "12386.51",
"economickonteringsbilagfilcsv_periode": 0,
"economickonteringsbilagfilcsv_linjetekst": "BRUTTOSKATTEGRUNDLAG ",
"economickonteringsbilagfilcsv_afdelingtekst": " ",
"economickonteringsbilagfilcsv_loenarttekst": " ",
"economickonteringsbilagfilcsv_dato": "2019-07-31T00:00:00+02:00"
}
]
}
]
HTTP Request
GET api/company/{companyId}/economics/error
Requirements
- User is logged in
- User has access to company
Create e-conomic integration for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/economics"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"economic_accessid": "zKsIDiK.GR",
"economic_status": 405
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/economics',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'economic_accessid' => 'zKsIDiK.GR',
'economic_status' => 405,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/economics'
payload = {
"economic_accessid": "zKsIDiK.GR",
"economic_status": 405
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"economic_firma_nr": 123,
"economic_callbackid": "{1fb2a0dd-5230-4e54-bb82-5d83f083492f}",
"economic_accessid": "SFDFS2342RWE",
"economic_cashbook": "ProLøn",
"economic_status": 3,
"economic_lastcheck": "2020-01-02 09:50:10.887",
"economic_error": "",
"economic_agreementnumber": "0"
}
HTTP Request
POST api/company/{companyId}/economics
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
economic_accessid |
string | optional | Between: 0 and 50 and can only contain A-Å 0-9, . + - ' / % ( ) : @ _ & ? = |
economic_status |
integer | optional | |
economic_lastcheck |
string | optional |
update e-conomic error for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/economics/error/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"economickonteringsbilagfil_opdater": true,
"economickonteringsbilagfil_gensend": true,
"economickonteringsbilagfil_slet": true,
"economickonteringsbilagfilcsv": [
{
"economickonteringsbilagfilcsv_id": 543,
"economickonteringsbilagfilcsv_konto": 96151,
"economickonteringsbilagfilcsv_afdeling": 2353887
}
]
}
fetch(url, {
method: "PATCH",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->patch(
'https://mit.proloen.dk/api/company/1/economics/error/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'economickonteringsbilagfil_opdater' => true,
'economickonteringsbilagfil_gensend' => true,
'economickonteringsbilagfil_slet' => true,
'economickonteringsbilagfilcsv' => [
[
'economickonteringsbilagfilcsv_id' => 543,
'economickonteringsbilagfilcsv_konto' => 96151,
'economickonteringsbilagfilcsv_afdeling' => 2353887,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/economics/error/1'
payload = {
"economickonteringsbilagfil_opdater": true,
"economickonteringsbilagfil_gensend": true,
"economickonteringsbilagfil_slet": true,
"economickonteringsbilagfilcsv": [
{
"economickonteringsbilagfilcsv_id": 543,
"economickonteringsbilagfilcsv_konto": 96151,
"economickonteringsbilagfilcsv_afdeling": 2353887
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PATCH', url, headers=headers, json=payload)
response.json()
HTTP Request
PATCH api/company/{companyId}/economics/error/{economicsFileId}
Requirements
- User is logged in
- User has access to company
- User has access right to write
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
economickonteringsbilagfil_opdater |
boolean | optional | Required if the parameters economickonteringsbilagfil_gensend are not present. |
economickonteringsbilagfil_gensend |
boolean | optional | Required if the parameters economickonteringsbilagfil_opdater are not present. |
economickonteringsbilagfil_slet |
boolean | optional | Required if the parameters economickonteringsbilagfil_gensend are not present. |
economickonteringsbilagfilcsv |
array | optional | Required if economickonteringsbilagfil_opdater is 1 |
economickonteringsbilagfilcsv.*.economickonteringsbilagfilcsv_id |
integer | optional | |
economickonteringsbilagfilcsv.*.economickonteringsbilagfilcsv_konto |
integer | optional | |
economickonteringsbilagfilcsv.*.economickonteringsbilagfilcsv_afdeling |
integer | optional |
Delete e-conomic integration for company
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/economics"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "DELETE",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://mit.proloen.dk/api/company/1/economics',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/economics'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
HTTP Request
DELETE api/company/{companyId}/economics
Requirements
- User is logged in
- User has access to company
- User has access right to write
eTaxCard (eSkattekort)
Get eTaxCard list
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/etaxcard"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/etaxcard',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/etaxcard'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"eskattekort_firma": 123,
"eskattekort_arbejder": 1234,
"eskattekort_linjenr": 1,
"eskattekort_skatteaar": 2010,
"eskattekort_gyldigdato": 20170101,
"eskattekort_modtagetdato": 201691023,
"eskattekort_fradragprdag": 222,
"eskattekort_fradragperioden": 1234,
"eskattekort_traekprocent": 39,
"eskattekort_frikort": 0,
"eskattekort_korttype": 2,
"eskattekort_loebenummer": "2010001"
}
]
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/etaxcard
Requirements
- User is logged in
- User has access to company
- User has access right to salary.read
employee salary type
Get employee salary type List
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytype"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
fetch(url, {
method: "GET",
headers: headers,
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://mit.proloen.dk/api/company/1/employee/1/salarytype',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytype'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
[
{
"arbejderloenart_firma": 123,
"arbejderloenart_arbejder": 1234,
"arbejderloenart_loenart": 110,
"arbejderloenart_sats": 1234
}
]
HTTP Request
GET api/company/{companyId}/employee/{employeeId}/salarytype
Requirements
- User is logged in
- User has access to company
- User has salary read access right
- Company has employee salary types
replace employee salary types
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytype"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejderloenarter": [
{
"arbejderloenart_loenart": 27812651,
"arbejderloenart_sats": 64875.79614
}
]
}
fetch(url, {
method: "PUT",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->put(
'https://mit.proloen.dk/api/company/1/employee/1/salarytype',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejderloenarter' => [
[
'arbejderloenart_loenart' => 27812651,
'arbejderloenart_sats' => 64875.79614,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytype'
payload = {
"arbejderloenarter": [
{
"arbejderloenart_loenart": 27812651,
"arbejderloenart_sats": 64875.79614
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (200):
[
{
"arbejderloenart_firma": 123,
"arbejderloenart_arbejder": 1234,
"arbejderloenart_loenart": 110,
"arbejderloenart_sats": 1234
}
]
Example response (422):
[
null,
{
"arbejderloenart_arbejder": [
{
"OriginalErrorMessage": "Medarbejder '1234' findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"stored_procedure": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "stored_procedure"
}
]
},
null,
null,
{
"arbejderloenart_loenart": [
{
"OriginalErrorMessage": "der kan kun være en personlig sats per loenart",
"ValidationRule": "exists"
}
]
},
null
]
HTTP Request
PUT api/company/{companyId}/employee/{employeeId}/salarytype
Requirements
- User is logged in
- User has access to company
- User has salary write and read access right
- Company has employee salary types
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejderloenarter |
array | optional | Maximum: 7 |
arbejderloenarter.*.arbejderloenart_loenart |
integer | required | |
arbejderloenarter.*.arbejderloenart_sats |
numeric | required |
Validate employee salary types
Example request:
const url = new URL(
"https://mit.proloen.dk/api/company/1/employee/1/salarytype/validate"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"api-key": "XXX",
};
let body = {
"arbejderloenarter": [
{
"arbejderloenart_loenart": 5430,
"arbejderloenart_sats": 5921130.1665
}
]
}
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(body)
})
.then(response => response.json())
.then(json => console.log(json));
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://mit.proloen.dk/api/company/1/employee/1/salarytype/validate',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'api-key' => 'XXX',
],
'json' => [
'arbejderloenarter' => [
[
'arbejderloenart_loenart' => 5430,
'arbejderloenart_sats' => 5921130.1665,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://mit.proloen.dk/api/company/1/employee/1/salarytype/validate'
payload = {
"arbejderloenarter": [
{
"arbejderloenart_loenart": 5430,
"arbejderloenart_sats": 5921130.1665
}
]
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'api-key': 'XXX'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (422):
[
null,
{
"arbejderloenart_arbejder": [
{
"OriginalErrorMessage": "Medarbejder '1234' findes ikke.",
"ValidationRule": "exists"
}
]
},
{
"stored_procedure": [
{
"OriginalErrorMessage": "Lønarten (1234) - lønart findes ikke.",
"ValidationRule": "stored_procedure"
}
]
},
null,
null,
{
"arbejderloenart_loenart": [
{
"OriginalErrorMessage": "der kan kun være en personlig sats per loenart",
"ValidationRule": "exists"
}
]
},
null
]
HTTP Request
POST api/company/{companyId}/employee/{employeeId}/salarytype/validate
Requirements
- User is logged in
- User has access to company
- User has salary write and read access right
- Company has employee salary types
Body Parameters
Parameter | Type | Status | Description |
---|---|---|---|
arbejderloenarter |
array | optional | Maximum: 7 |
arbejderloenarter.*.arbejderloenart_loenart |
integer | required | Between: 0 and 9999 |
arbejderloenarter.*.arbejderloenart_sats |
numeric | required | Between: 1 and 9999999 |