---
title: "Plunet API - Workflow Description: Jobs"
canonical: "https://support.plunet.com/space/KB/888422/Plunet%20API%20-%20Workflow%20Description%3A%20Jobs"
format: markdown
---
**Related features**

- [Plunet API: Introduction](https://plunethelp.atlassian.net/wiki/spaces/KB/pages/894749)

**Contents**

> Macro (toc)

---

## Supported versions

- Plunet BusinessManger Version: 7.3 or higher
- SOAP-API Version: 30

## Basics

### Service stub generation

The Plunet API is represented by multiple separate services. In order to interact with them, the services need to be mapped. Service stubs can be generated within many development environments directly or with tools such as wsimport.  
Example for the job service (DataJob):

![image](media://aaf9b706-c482-4d9a-adca-239b788c4479)

### Result objects

Any web service call (except for **PlunetAPI.login**) will return an instance of **Result**, depending on the requested information (e.g. **StringResult** for delivery note).

![image](media://1c53e0cc-b76a-479e-8bcf-6080ea02989a)

Every result will contain an error code that indicates if the call could be proceeded or not. A list of all possible codes can be found in the general Plunet API documentation.

### Error handling

Every result object will return a data entry, a status code and a status message. To avoid problems, it is essential to always check the status code after any API call to ensure that your action has been processed correctly.

Example:

![image](media://e878a04d-3e66-4070-aeb8-44c645c32ee0)

### Authentication via API

Generate the used token (UUID), which will be used for any further API calls. Please note that the token is invalidated automatically after a configurable lifetime.

![image](media://4ad8415c-70fe-4ca5-a544-dee4411c0956)

You can manually invalidate the token by calling

![image](media://1f3d5b26-179f-4926-a314-b2d95c910fd5)

## Use case I - Create a job

There are three different ways to create a new job. You can either specify the project, the project position or insert by using a JobIN object.

Each call returns an IntegerResult object that contains the jobID of the job.

### Create a new job by project

The project is specified by its **projectID** and the **projectType**.

![image](media://3223642d-60c6-4ee3-afc8-d5af0ea653f8)

### Create a new job by project position

In addition to the **projectID** and **projectType**, the **itemID** ( = position ID ) is also required.

![image](media://28ad4b7f-87c9-4d0d-8db5-b771b2be3667)

### Create a new job by JobIN object

In addition to the **projectID** and **projectType**, the **itemID** ( = position ID ) is also required.

![image](media://c31f54d4-40a0-4ffd-bac2-793adb479e69)

## Use case II – Get language combination of job

To manage this task, you need to understand that the job itself has no language combinations. Therefore, there is no call in the **DataJob30** web service to get/set this information. The language information is stored in the item linked with the job, which means that you will need to query the items to fetch the language data.

![image](media://0b0e04da-5ff1-4893-9a8e-1049036ddf98)



---

> Macro (html)