Integration Process

The steps for integrating with TaskMonk are detailed below. There are two environments used for the integration process: the staging environment for testing and the production environment for actual integration.

Endpoints

The following endpoints are used for integration:

API Endpoints

Environment

Endpoint

Staging

https://preprod.taskmonk.io

Production

https://api.taskmonk.io

Portal

The portal can be used for viewing reports and status:

Important

Please ensure that the following endpoints are accessible from within your firewall:

Access Credentials

API Endpoints

The APIs use OAuth2 client credentials mechanism for authentication. The client_id and client_secret will be provided by TaskMonk. These credentials can be:

  • Generated for each project individually

  • Shared across projects if they belong to the same team

Portal

Users can register on the portals using their email address. Email addresses will be configured for the projects they have access to.

Note

Production credentials and access are typically provided after successful integration and testing with the staging environment.

Project Creation

The project will typically be set up by the Annotation Partner through the portal. The project_id will be shared with users.

API Integration

Once credentials are available, you can integrate with the APIs using one of three methods:

Integration Methods

Option 1: REST API

Directly integrate with the REST APIs for maximum flexibility and control.

See REST API for documentation.

Option 2: Java SDK

Use the Java SDK for streamlined integration in Java applications.

See Java SDK for documentation.

Option 3: Python SDK

Use the Python SDK for easy integration in Python applications.

See Python SDK for documentation.

Tip

Please review the Concepts section to better understand the integration process.

Integration Workflow

The typical workflow for client code execution:

1. Create a new batch
   └─> Returns: batch_id

2. Upload tasks to the batch
   └─> Returns: job_id (for upload process)

3. Check job progress
   └─> Wait until upload completes

4. Monitor job status
   └─> Wait for completion by Annotation Partners

5. Retrieve output
   └─> Specify fields to include in output file

Testing

For testing purposes:

  • Contact the annotation partner to complete tasks uploaded to the test server

  • In certain circumstances, the Annotation Partner can configure the project to:

    • Fill in random values for output fields

    • Automatically submit tasks for testing