Skip to content

letsdeel/deel-api-java-sdk

Repository files navigation

deel-api-java-sdk

Deel REST API

  • API version: 1.25.0
    • Build date: 2025-05-06T11:40:30.585715606Z[GMT]
    • Generator version: 7.13.0

Deel REST API

Automatically generated by the OpenAPI Generator

Requirements

Building the API client library requires:

  1. Java 1.8+
  2. Maven (3.8.3+)/Gradle (7.2+)

Installation

To install the API client library to your local Maven repository, simply execute:

mvn clean install

To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:

mvn clean deploy

Refer to the OSSRH Guide for more information.

Maven users

Add this dependency to your project's POM:

<dependency>
  <groupId>com.deel</groupId>
  <artifactId>deel-api-java-sdk</artifactId>
  <version>2.1.83</version>
  <scope>compile</scope>
</dependency>

Gradle users

Add this dependency to your project's build file:

  repositories {
    mavenCentral()     // Needed if the 'deel-api-java-sdk' jar has been published to maven central.
    mavenLocal()       // Needed if the 'deel-api-java-sdk' jar has been published to the local maven repo.
  }

  dependencies {
     implementation "com.deel:deel-api-java-sdk:2.1.83"
  }

Others

At first generate the JAR by executing:

mvn clean package

Then manually install the following JARs:

  • target/deel-api-java-sdk-2.1.83.jar
  • target/lib/*.jar

Getting Started

Please follow the installation instruction and execute the following Java code:

// Import classes:
import org.openapitools.client.ApiClient;
import org.openapitools.client.ApiException;
import org.openapitools.client.Configuration;
import org.openapitools.client.auth.*;
import org.openapitools.client.model.*;
import org.openapitools.client.api.AccountingApi;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    defaultClient.setBasePath("https://api.letsdeel.com/rest/v2");
    
    // Configure HTTP bearer authorization: deelToken
    HttpBearerAuth deelToken = (HttpBearerAuth) defaultClient.getAuthentication("deelToken");
    deelToken.setBearerToken("BEARER TOKEN");

    // Configure OAuth2 access token for authorization: oauth2
    OAuth oauth2 = (OAuth) defaultClient.getAuthentication("oauth2");
    oauth2.setAccessToken("YOUR ACCESS TOKEN");

    AccountingApi apiInstance = new AccountingApi(defaultClient);
    String id = "abcd1234efgh5678"; // String | The invoice ID used to identify the invoice to be downloaded.
    try {
      GetBillingInvoiceDownloadLink200Response result = apiInstance.getBillingInvoiceDownloadLink(id)
            .execute();
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling AccountingApi#getBillingInvoiceDownloadLink");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Documentation for API Endpoints

All URIs are relative to https://api.letsdeel.com/rest/v2

Class Method HTTP request Description
AccountingApi getBillingInvoiceDownloadLink GET /invoices/{id}/download Download invoice PDF
AccountingApi getPaymentsBreakDownById GET /payments/{payment_id}/breakdown Retrieve a payment breakdown
AccountingApi retrieveDeelInvoices GET /invoices/deel Retrieve Deel invoices
BackgroundChecksApi getBackgroundChecksOptions GET /background-checks/options List of background check options
CandidatesApi addCandidate POST /candidates Add Candidate
ContractorsApi amendContractDetails POST /contracts/{contract_id}/amendments Amend contract
ContractsApi getContractById GET /contracts/{contract_id} Retrieve a single contract
ContractsApi getContractList GET /contracts List of contracts
ContractsApi getContractTemplates GET /contract-templates Retrieve contract templates
CustomFieldsApi getCustomFieldValuesFromContract GET /contracts/{contract_id}/custom_fields Retrieve custom fields for a contract
CustomFieldsApi getCustomFieldsFromPeople GET /people/custom_fields List all custom fields
EorApi createEorContract POST /eor Create an EOR contract
EorApi downloadEmployeeAgreementPdf GET /eor/workers/contracts/{contract_id}/employee-agreement/download Download employee agreement PDF
EorApi getEORContractBenefits GET /eor/{contract_id}/benefits Retrieve Benefits for EOR Contract
EorApi getEorEmployeeComplianceDocuments GET /eor/workers/compliance-documents List of employee compliance documents
GlobalPayrollApi getGPLegalEntities GET /gp/legal-entities/{id}/reports List payroll events by legal entity
GlobalPayrollApi getGpBankGuide GET /gp/workers/{worker_id}/banks/guide Retrieve bank guide
GlobalPayrollApi getGrossToNetGPReports GET /gp/reports/{id}/gross_to_net List gross-to-net report.
GlobalPayrollApi getWorkerPayslips GET /gp/workers/{id}/payslips Retrieve employee payslips
InvoicesApi getInvoiceAdjustmentsById GET /invoice-adjustments/{id} Invoice line item by Id
LookupsApi getSeniorityList GET /lookups/seniorities Retrieve Seniority Levels
ManagersApi getManagers GET /managers Retrieve List of Managers
OffboardingApi getRetrieveOffboardingList GET /offboarding/tracker Retrieve offboarding list
OrganizationsApi getLegalEntityList GET /legal-entities List of legal entities
OrganizationsApi getOrganizations GET /organizations Get Current Organization
OrganizationsApi getTeams GET /teams Get Team List
PeopleApi getPeople GET /people/me Get my current personal profile
PeopleApi getPeopleById GET /people/{hrisProfileOid} Retrieve a single person
PeopleApi getPeopleList GET /people List of people
PositionsApi getHrisPositions GET /hris/positions/profile/{hrisProfileId} Fetch HrisPositions from a HrisProfile
TasksApi deleteContractTaskById DELETE /contracts/{contract_id}/tasks/{task_id} Delete task
TimeOffApi getWorkScheduleAndHolidays GET /time-offs/dailies Get Work Schedule and Holidays
TimesheetsApi createTimesheet POST /timesheets Create a timesheet entry
TimesheetsApi getTimesheets GET /timesheets List of timesheets
TimesheetsApi getTimesheetsByContract GET /contracts/{contract_id}/timesheets List of timesheets by contract
WebhooksApi createWebhook POST /webhooks Create a webhook
WebhooksApi getAllWebhookEventTypes GET /webhooks/events/types List of webhook event types
WebhooksApi getAllWebhooks GET /webhooks List of webhooks
WebhooksApi webhookControllerDeleteById DELETE /webhooks/{id} Delete a webhook
WebhooksApi webhookControllerEditById PATCH /webhooks/{id} Edit a webhook
WebhooksApi webhookControllerGetById GET /webhooks/{id} Retrieve a single webhook
WorkerRelationsApi getAllProfileWorkerRelations GET /hris/worker_relations/profile/{hrisProfileOid} List of worker relations

Documentation for Models

Documentation for Authorization

Authentication schemes defined for the API:

deelToken

  • Type: HTTP Bearer Token authentication (JWT)

oauth2

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL: https://auth.deel.com/authorize
  • Scopes:
    • accounting:read: View payments and invoices in your organization.
    • accounting:write: Create and edit payments and invoices.
    • candidates:read: View candidates in your organization.
    • candidates:write: Create, edit and delete candidates in your organization.
    • contracts:read: View contracts in your organization.
    • contracts:write: Create and amend contracts.
    • people:write: Write worker’s information such as profile, time-off and expense.
    • people:read: Read worker’s information such as profile, time-off and expenses.
    • profile:read: Read Profile information such as name, email, phone
    • Users:read: View information about people in Deel HR.
    • webhooks:read: View webhooks in your organization.
    • webhooks:write: Create and edit webhooks in your organization.
    • global-payroll:read: View global payroll information about your employees.
    • global-payroll:write: Write global payroll information about your employees.
    • adjustments:write: Create / update adjustments of your employee.
    • adjustments:read: View adjustments of your employee.
    • invoice-adjustments:read: View invoices of your workforce.
    • invoice-adjustments:write: Create, edit, review, and delete invoice adjustments.
    • milestones:read: View milestones of your contractors.
    • milestones:write: Create, edit, review, and delete milestones.
    • organizations:read: View basic information about your organizations, teams, legal entities and agreements.
    • organizations:write: Modify information in your organization. Create, edit, delete admin users or managers.
    • off-cycle-payments:read: View your off-cycle payments.
    • off-cycle-payments:write: Create, edit, review your off-cycle payments.
    • timesheets:read: View work submitted for time-based contracts.
    • timesheets:write: Create, edit, review, and delete timesheets.
    • tasks:read: View your pay-as-you-go tasks.
    • tasks:write: Create, edit, review and delete your pay-as-you-go tasks.
    • payslips:read: View employee payslips.
    • payslips:write: Create, edit, review and delete employee payslips.
    • public-token:write: Create, edit, review and delete public tokens.
    • profile:write: Write Profile information such as name, email, phone

public

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL:
  • Scopes:
    • contracts:read: View contracts in your organization.

Recommendation

It's recommended to create an instance of ApiClient per thread in a multithreaded environment to avoid any potential issues.

Author

[email protected]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 2

  •  
  •  

Languages