Projects: Retrieving, Creating, Updating, and Deleting Projects via the API

In this article, you can read about retrieving project data, creating and updating projects, uploading project files, managing project attributes, and deleting projects via the API.

Get Project

GET

https://api.recman.io/v2/get/?key={{api_key}}&scope=project&
fields=companyId,number,departmentId,responsibleUserId,name,type,status,completePercent,invoiceNotes,startDate,endDate,created,
updated,directions,invoiceRefUserId,workUnitPeriodType,
invoiceRefCompanyContactId,holidayRate,defaultInvoice,
defaultSalary,invoiceFactor,members,costCentreId,occupationCode,
value,description,attributes,file,serviceTypeId,commissionSplit,
notes,offerCompanyContactId,invoiceCurrency,salaryCurrency&page=1

Retrieving data about projects is done through the GET method. You can search by page, a single
projectId, or multiple projectIds, and narrow the results further with optional filters.

Note

One of page, projectId, or projectIds is mandatory and can be combined with the optional search parameters below. At least one field must be specified in fields.

FieldTypeRequiredDescription
pageintegerRequired (one of page/projectId/projectIds)Page number (1000 projects per page)
projectIdintegerRequired (one of page/projectId/projectIds)Search for a specific project ID
projectIdsarray of integerRequired (one of page/projectId/projectIds)Search for multiple project IDs
companyIdintegerOptionalRetrieve projects connected to a specific company
departmentIdintegerOptionalRetrieve projects connected to a specific department
responsibleUserIdintegerOptionalRetrieve projects assigned to a specific responsible user
minProjectIdintegerOptionalRetrieve projects with projectId greater than or equal to the specified value
serviceTypeIdintegerOptionalFilter projects by service type
updatedstringOptionalRetrieve projects updated later than or equal to the specified date, e.g. 2026-01-01
minEndDatestringOptionalFilter projects with end date greater than or equal to the specified value, e.g. 2026-01-01
maxEndDatestringOptionalFilter projects with end date less than or equal to the specified value, e.g. 2026-01-01

Project fields (available via fields parameter):

FieldTypeRequiredDescription
companyIdintegerRequired (insert/update)Company ID
departmentIdintegerRequired (insert/update)Department ID
responsibleUserIdintegerRequired (insert/update)Responsible user ID
namestringRequired (insert/update)Project name
numberintegerOptionalProject number
serviceTypeIdintegerOptionalService type ID
notesstringOptionalNotes, free text
descriptionstringOptionalDescription, free text
valueintegerOptionalValue, positive integer
typestringOptional

Project type. Allowed values:

  • recruiting
  • staffing
  • healthcare
  • recruitmentStaffing
  • other
statusstringOptional

Project status. Allowed values:

  • request
  • active
  • urgent
  • notStarted
  • solvedEnded
  • solvedOngoing
  • cancelled
  • lost
startDatestringOptionalStart date. Format "Y-m-d"
endDatestringOptionalEnd date. Format "Y-m-d"
createdstringOptionalCreated date. Format "Y-m-d H:i:s"
updatedstringOptionalUpdated date. Format "Y-m-d H:i:s"
directionsstringOptionalDirections, free text
defaultSalarydecimalOptionalDefault salary
defaultInvoicedecimalOptionalDefault invoice
holidayRatedecimalOptionalHoliday rate
completePercentdecimalOptionalComplete percent
invoiceNotesstringOptionalInvoice notes, free text
workUnitPeriodTypestringOptional

Work unit period type. Allowed values:

  • monthly
  • cutoffSunday
  • cutoffFriday
invoiceRefUserIdintegerOptionalInvoice reference user ID
invoiceRefCompanyContactIdintegerOptionalInvoice reference company contact person ID
membersobjectOptionalArray of integers withuserIds key and/or array of integers with
companyContactIds key. See Members object table below.
invoiceCurrencystringOptionalCurrency code. Empty string = undefined currency. See currency codes below.
salaryCurrencystringOptionalCurrency code. Empty string = undefined currency. See currency codes below.
invoiceFactordecimalOptional 
(GET only)
Invoice factor
costCentreIdintegerOptional 
(GET only)
Cost center ID
occupationCodeintegerOptional 
(GET only)
Occupation code
attributesobjectOptional 
(GET only)
Project attributes. See the Insert Project - Attribute section below.
commissionSplitobjectOptional 
(GET only)
Commission split details
offerCompanyContactIdintegerOptional 
(GET only)
Offer company contact person ID
fileobjectOptional 
(GET only)
Project file reference. See the Insert Project - Files section below.

Members object:

FieldTypeRequiredDescription
userIdsarray of integerOptionalCo-worker user IDs to add as project members
companyContactIdsarray of integerOptionalCompany contact person IDs to add as project members

Allowed currency codes (for invoiceCurrency and salaryCurrency):

  • NOK
  • SEK
  • DKK
  • EUR
  • USD
  • GBP
  • UAH
  • COP
  • MYR
  • MZN
  • KRW
  • SGD
  • CNY
  • BRL
  • MAD
  • ZAR
  • INR
  • BGN
  • CZK
  • PLN
  • RON
  • CHF
  • CAD
  • MXN
  • SAR
  • AED

Get Project File

GET

https://api.recman.io/v2/get/?key={{api_key}}&scope=projectFile&
projectId={{projectId}}&fileId={{fileId}}

Retrieving a specific file attached to a project is done through the GET method, using the 
projectFile scope.

FieldTypeRequiredDescription
keystringRequiredYour API key
scopestringRequiredMust be set to projectFile
projectIdintegerRequiredThe ID of the project the file belongs to
fileIdintegerRequiredThe ID of the file to retrieve

Insert Project

POST

https://api.recman.io/v2/post/

Creating a project is done through the POST method with scope set to project and 
operation set to insert. The companyId, departmentId, 
responsibleUserId, and name fields are required.

Refer to the Project fields table above for all available fields.

Update Project

POST

https://api.recman.io/v2/post/

Updating a project is done through the POST method with scope set to project and 
operation set to update. The projectId is required to identify the project being updated, and uses the same field set as Insert Project.

FieldTypeRequiredDescription
projectIdintegerRequiredThe ID of the project to update

All other fields are the same as listed in the Project fields table above.

Insert Project - Files

POST

https://api.recman.io/v2/post/

Uploading a file to a project is done through the POST method, using the project scope with a nested file object.

FieldTypeRequiredDescription
projectIdintegerRequiredThe ID of the project the file is attached to

File object:

FieldTypeRequiredDescription
fileIdintegerRequired on deleteThe file ID
namestringOptionalName of file with extension
extstringOptionalExtension
createdstringOptionalDate of the file creation. Format "Y-m-d H:i:s"
base64stringRequiredBase64 encoded file

Insert Project - Attribute

POST

https://api.recman.io/v2/post/

Adding an attribute value to a project is done through the POST method, using the project scope with a nested attribute object.

FieldTypeRequiredDescription
projectIdintegerRequiredThe ID of the project the attribute is attached to

Attribute object:

FieldTypeRequiredDescription
attributeIdintegerRequired on insertThe ID of the attribute
projectAttributeIdintegerRequired on update/deleteThe ID of the attribute on the project
boolbooleanOptional

No = 0, Yes = 1. Valid values:

  • 0
  • 1
textstringOptionalText content
ratingintegerOptional

Rating. Valid values:

  • 1
  • 2
  • 3
  • 4
  • 5
checkboxIdsarray of integerOptionalList of checkbox IDs
dropdownIdintegerOptionalDropdown ID

Delete Project

POST

https://api.recman.io/v2/post/

Deleting a project and all of its data is done through the POST method with operation set to 
delete.

FieldTypeRequiredDescription
projectIdintegerRequiredThe ID of the project to delete
projectAttributeIdintegerOptionalDeletes only this specific project attribute.
Was this article helpful?
0 out of 0 found this helpful