Talentics API

Authentication

Talentics APIs handle enormous amounts of data. The way we ensure this data is secured for developers and users alike is through authentication. There are a few methods for authentication, each listed below.

This section can help you get acquainted with the current platform organization, explains how to get access to the different tools and endpoints, and provides supporting code and learning resources.

Basic Authentication

Talentics APIs require the use of HTTP Basic Authentication. To make a successful request to an API that requires Basic Authentication, you must pass a valid App ID and App Secret combination as an authorization header for each request. The App ID and App Secret will be available in Talentics Developer Console once you register as Developer Account, and can be edited from within this console as well.

When building a request using Basic Authentication, make sure you add the Authentication: Basic HTTP header with encoded credentials over HTTPS.

In the following cURL request example, you would replace {app_id} and {app_secret} with your credentials before sending the request:

curl -v --compressed -u {app_id}:{app_secret} "https://api.talentics.id/v2/jobs"

Then the server will respond to a client with 200 (OK) response status and provide information about jobs.

If your credentials don't match, the server responds to a client with a 401 (Unauthorized) response status.

You can get your App ID and App Secret here.

API Reference Index

Get Test List
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Rate limit

50 requests per 15-minute window

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

page optional, integer

Specific page you want

per_page optional, integer

How many records you want in one page. Max 100/page

GET
https://api.talentics.id/v2/exams
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/exams
Response

Response Success

HTTP Status Code: 200

Response Field

data array

Contains main content of response

links object

List of several links for pagination

meta object

Meta data of pagination

id integer

Test ID

organization_id integer

Organization ID

job_id integer

Job ID related to this test

title string

Test title

started_at datetime

Time when test will started

ended_at datetime

Time when test will ended

Response
{
    "data": [
        {
            "id": 8,
            "organization_id": 106291,
            "job_id": 10,
            "title": "Random title",
            "started_at": "2020-05-23 00:54:00",
            "ended_at": "2020-05-29 00:55:00",
            "created_at": "2020-05-23 00:54:27",
            "updated_at": "2020-05-23 00:54:27"
        }
    ],
    "links": {
        "first": "https://api.talentics.id/v2/exams?page=1",
        "last": "https://api.talentics.id/v2/exams?page=52",
        "prev": null,
        "next": "https://api.talentics.id/v2/exams?page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 52,
        "path": "https://api.talentics.id/v2/exams",
        "per_page": "1",
        "to": 1,
        "total": 52
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Test Detail
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Rate limit

50 requests per 15-minute window

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

-

GET
https://api.talentics.id/v2/exams/{EXAM_ID}
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/exams/1
Response

Response Success

HTTP Status Code: 200

Response Field

data object

Contains main content of response

id integer

Test ID

organization_id integer

Organization ID

job_id integer

Job ID related to this test

title string

Test title

started_at datetime

Time when test will started

ended_at datetime

Time when test will ended

Response
{
    "data": {
        "id": 1,
        "organization_id": 106291,
        "job_id": 10,
        "title": "Random title",
        "started_at": "2020-05-23 00:54:00",
        "ended_at": "2020-05-29 00:55:00",
        "created_at": "2020-05-23 00:54:27",
        "updated_at": "2020-05-23 00:54:27"
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Test Participants
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Rate limit

50 requests per 15-minute window

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

page optional, integer

Specific page you want

per_page optional, integer

How many records you want in one page. Max 100/page

GET
https://api.talentics.id/v2/exams/{EXAM_ID}/tickets
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/exams/1/tickets
Response

Response Success

HTTP Status Code: 200

Response Field

data array

Contains main content of response

links object

List of several links for pagination

meta object

Meta data of pagination

id integer

Ticket ID

name string

Participant name

email string

Participant email

started_at datetime

Time of participant start the test

finished_at datetime

Time of participant finish the test

exam object

Test detail

id integer

Test ID

title integer

Test name

started_at datetime

Test start date & time

ended_at datetime

Test end date & time

created_at datetime

Ticket created date

updated_at datetime

Ticket updated date

status string

Ticket status

Response
{
    "data": [
        {
            "id": 12,
            "name": "John Doe",
            "email": "[email protected]",
            "started_at": null,
            "finished_at": null,
            "exam": {
                "id": 8,
                "title": "Random title",
                "started_at": "2020-05-23 00:54:00",
                "ended_at": "2020-05-29 00:55:00"
            },
            "created_at": "2020-05-27T13:12:50.000000Z",
            "updated_at": "2020-11-04T08:39:37.000000Z",
            "status": "sending invitation"
        },
        {
            "id": 25,
            "name": "Tina Smith",
            "email": "[email protected]",
            "started_at": null,
            "finished_at": null,
            "exam": {
                "id": 8,
                "title": "Random title",
                "started_at": "2020-05-23 00:54:00",
                "ended_at": "2020-05-29 00:55:00"
            },
            "created_at": "2020-06-02T16:21:03.000000Z",
            "updated_at": "2020-11-04T08:39:37.000000Z",
            "status": "sending invitation"
        },
    ],
    "links": {
        "first": "https://api.talentics.id/v2/exams/1/tickets?page=1",
        "last": "https://api.talentics.id/v2/exams/1/tickets?page=52",
        "prev": null,
        "next": "https://api.talentics.id/v2/exams/1/tickets?page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 52,
        "path": "https://api.talentics.id/v2/exams/1/tickets",
        "per_page": "1",
        "to": 1,
        "total": 52
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Test Results and Score
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Rate limit

50 requests per 15-minute window

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

-

GET
https://api.talentics.id/v2/exams/ticket/{TICKET_ID}/scores
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/exams/tickets/1/scores
Response

Response Success

HTTP Status Code: 200

Response Field

ticket_id integer

Ticket ID

name string

Participant name

email string

Participant email

results array

Participant results data

assessment_name string

Assessment name

assessment_slug string

Assessment slug

total_score integer

Participant total score in the assessment

aspect_scores array

Assessment aspects scores

aspect_group string

Aspect group name

aspect_name string

Aspect name

aspect_slug string

Aspect slug

score integer

Aspect score

Response
{
    "data": {
        "ticket_id": 1,
        "name": "John Doe",
        "email": "[email protected]",
        "results": [
            {
                "assessment_name": "asm-1",
                "assessment_slug": "asm-1",
                "total_score": 10,
                "aspect_scores": [
                    {
                        "aspect_group": "Aspect",
                        "aspect_name": "aspect-1",
                        "aspect_slug": "aspect-1",
                        "score": 100
                    }
                ]
            }
        ]
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Job List
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Rate limit

50 requests per 15-minute window

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

page optional, integer

Specific page you want

per_page optional, integer

How many records you want in one page. Max 100/page

GET
https://api.talentics.id/v2/jobs
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/jobs
Response

Response Success

HTTP Status Code: 200

Response Field

data array

Contains main content of response

links object

List of several links for pagination

meta object

Meta data of pagination

id integer

Job ID

profession_id integer

Profession's ID related to this test

title string

Job title

due_date datetime

Due date for the job

min_experience integer

Minimum experience for the job (in years)

min_salary integer

Minimum salary for the job (IDR)

Response
{
    "data": [
        {
            "id": 10,
            "type": 1,
            "organization_id": 106291,
            "profession_id": 2,
            "title": "Quality Control Analysts",
            "description": "Some description about jobs",
            "created_at": "2019-10-09 10:32:07",
            "updated_at": "2020-08-18 15:30:11",
            "location": "Kandanghaur, Kabupaten Indramayu",
            "due_date": "2021-08-18 15:30:11",
            "min_experience": 1,
            "min_salary": 5000000,
            "max_salary": 6500000,
            "requirements": "Some requirement about the jobs",
            "benefits": "Some benefit about the jobs",
            "youtube_video_url": "https://youtu.be/fPJSX0cL20Q",
            "industry_id": 16,
            "code": "JOBCODE123",
            "country_id": 1,
            "province_id": 1,
            "city_id": 7,
            "district_id": 40,
            "slug": "quality-control-analysts"
        }
    ],
    "links": {
        "first": "https://api.talentics.id/v2/jobs?page=1",
        "last": "https://api.talentics.id/v2/jobs?page=52",
        "prev": null,
        "next": "https://api.talentics.id/v2/jobs?page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 52,
        "path": "https://api.talentics.id/v2/jobs",
        "per_page": "1",
        "to": 1,
        "total": 52
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Job Detail
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

-

GET
https://api.talentics.id/v2/jobs/{JOB_ID}
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/jobs/1
Response

Response Success

HTTP Status Code: 200

Response Field

id integer

Job ID

organization_id integer

Organization ID

profession_id integer

Profession's ID

title string

Job title

description string

Job description

due_date datetime

Job apply due date

min_experience string

Job min experience in year

min_salary string

Job min salary

requirements string

Job requirements

benefits string

Job benefits

organization object

Organization data

Response
{
    "data": {
        "id": 1,
        "type": 1,
        "organization_id": 107172,
        "profession_id": 597,
        "title": "Programmer",
        "description": "Programmer",
        "location": "Jakarta Selatan",
        "due_date": "2021-06-10 00:00:00",
        "min_experience": 1,
        "min_salary": 4000000,
        "max_salary": 8000000,
        "requirements": "The requirement of the job",
        "benefits": "Benefit you can get",
        "youtube_video_url": "https://youtu.be/job",
        "industry_id": 6,
        "code": "PRO123",
        "country_id": 1,
        "province_id": 1,
        "city_id": 7,
        "district_id": 40,
        "slug": "programmer",
        "private": 0,
        "closed": 0,
        "verified": 0,
        "verified_at": null,
        "suspended": 0,
        "suspended_at": null,
        "organization": {
            "id": 107172,
            "parent_id": null,
            "name": "Prof. Janis Boyle DVM",
            "slug": "prof-janis-boyle-dvm",
            "partnership": 0,
            "created_at": "2021-05-11 06:19:17",
            "updated_at": "2021-05-11 06:19:17",
            "email_logo_file_path": null,
            "assessment_logo_file_path": null,
            "report_logo_file_path": null,
            "company_name": null,
            "description": null,
            "benefit": null,
            "tips_for_applier": null,
            "location": null,
            "address": null,
            "website": null,
            "email": null,
            "phone": null,
            "linkedin_url": null,
            "instagram_url": null,
            "facebook_url": null,
            "twitter_url": null,
            "youtube_url": null,
            "established": null,
            "tags": null,
            "verified": 0,
            "verified_at": null,
            "deleted_at": null,
            "industry_id": null,
            "latitude": null,
            "longitude": null,
            "exam_engine_access_token": null,
            "private": 0,
            "rejected": 0,
            "rejected_at": null,
            "referral_code": null,
            "referral_id": null,
            "verified_email_sent_at": null,
            "trial": 0,
            "trial_started_at": null,
            "trial_ended_at": null,
            "suspended": 0,
            "suspended_at": null,
            "developer_activated_at": null,
            "avatar_url": "https://picsum.photos/200",
            "cover_url": "https://picsum.photos/500",
            "logo_url": "https://picsum.photos/200"
        },
        "company": {
            "id": 107172,
            "parent_id": null,
            "name": "Prof. Janis Boyle DVM",
            "slug": "prof-janis-boyle-dvm",
            "partnership": 0,
            "created_at": "2021-05-11 06:19:17",
            "updated_at": "2021-05-11 06:19:17",
            "email_logo_file_path": null,
            "assessment_logo_file_path": null,
            "report_logo_file_path": null,
            "company_name": null,
            "description": null,
            "benefit": null,
            "tips_for_applier": null,
            "location": null,
            "address": null,
            "website": null,
            "email": null,
            "phone": null,
            "linkedin_url": null,
            "instagram_url": null,
            "facebook_url": null,
            "twitter_url": null,
            "youtube_url": null,
            "established": null,
            "tags": null,
            "verified": 0,
            "verified_at": null,
            "deleted_at": null,
            "industry_id": null,
            "latitude": null,
            "longitude": null,
            "exam_engine_access_token": null,
            "private": 0,
            "rejected": 0,
            "rejected_at": null,
            "referral_code": null,
            "referral_id": null,
            "verified_email_sent_at": null,
            "trial": 0,
            "trial_started_at": null,
            "trial_ended_at": null,
            "suspended": 0,
            "suspended_at": null,
            "developer_activated_at": null,
            "avatar_url": "https://picsum.photos/200",
            "cover_url": "https://picsum.photos/500",
            "logo_url": "https://picsum.photos/200"
        },
        "page_url": "https://talentics.id/prof-janis-boyle-dvm/programmer",
        "required_assessments": [],
        "required_aspects": [],
        "related_profession": {
            "id": 597,
            "profession_cluster_id": 6,
            "name": "IT Support",
            "slug": "it-support",
            "description": "IT Support"
        },
        "applicable": true,
        "work_ready": true,
        "redirect_url": "https://karier.rencanamu.id/company/job-slug?utm_source=rencanamu.id"
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Job Applicants List
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

-

GET
https://api.talentics.id/v2/jobs/{JOB_ID}/applicants
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/jobs/1/applicants
Response

Response Success

HTTP Status Code: 200

Response Field

id integer

Job Applicant ID

organization_id integer

Organization ID

job_id integer

Job ID

account_id integer

Applicant / Account ID

name string

Applicant name

email string

Applicant email

phone_number string

Applicant phone number

identity_number string

Applicant identity number

location string

Applicant location

education string

Applicant last education

year_of_experience string

Applicant year of experience

gender enum

Applicant gender
1 = Male, 2 = Female

dob date

Applicant birthdate

address string

Applicant address

access_code string

Applicant access code

access_code_expired_at datetime

Applicant access code will expire at

Response
{
    "data": [
        {
            "id": 1,
            "organization_id": 99999,
            "job_id": 1,
            "account_id": 100001,
            "name": "John Doe",
            "email": "[email protected]",
            "phone_number": "0811111111",
            "identity_number": "3201150001100223",
            "location": "Jakarta",
            "education": "S1",
            "year_of_experience": "1-3 years",
            "gender": 1,
            "dob": "1986-12-19",
            "nik": "3201150001100223",
            "draft": 0,
            "background_enabled": 1,
            "portfolio_link": "http://portfolio.com",
            "address": "Pela Mampang, Jakarta Selatan",
            "cv_file_path": "jobs/apply/cv/1598762375.pdf",
            "access_code": "A123456",
            "access_code_expired_at": "2021-06-06 00:00:00"
        },
        {
            
            "id": 2,
            "organization_id": 99999,
            "job_id": 1,
            "account_id": 100002,
            "name": "Mary Jane",
            "email": "[email protected]",
            "phone_number": "08222222222",
            "identity_number": "3201150001100224",
            "location": "Jakarta",
            "education": "S1",
            "year_of_experience": "< 1 years",
            "gender": 2,
            "dob": "1990-11-12",
            "nik": "3201150001100224",
            "draft": 0,
            "background_enabled": 1,
            "portfolio_link": "http://portfolio.com",
            "address": "Pela Mampang, Jakarta Selatan",
            "cv_file_path": "jobs/apply/cv/1598762375.pdf",
            "access_code": "A234567",
            "access_code_expired_at": "2021-06-7 00:00:00"
        }
    ]
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Job Applicant Detail
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

-

GET
https://api.talentics.id/v2/jobs/applicants/{JOB_APPLICANT_ID}
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/jobs/applicants/1
Response

Response Success

HTTP Status Code: 200

Response Field

id integer

Job Applicant ID

organization_id integer

Organization ID

job_id integer

Job ID

account_id integer

Applicant / Account ID

name string

Applicant name

email string

Applicant email

phone_number string

Applicant phone number

identity_number string

Applicant identity number

location string

Applicant location

education string

Applicant last education

year_of_experience string

Applicant year of experience

gender enum

Applicant gender
1 = Male, 2 = Female

dob date

Applicant birthdate

address string

Applicant address

access_code string

Applicant access code

access_code_expired_at datetime

Applicant access code will expire at

Response
{
    "data": {
        "id": 1,
        "organization_id": 99999,
        "job_id": 1,
        "account_id": 100001,
        "name": "John Doe",
        "email": "[email protected]",
        "phone_number": "0811111111",
        "identity_number": "3201150001100223",
        "location": "Jakarta",
        "education": "S1",
        "year_of_experience": "1-3 years",
        "gender": 1,
        "dob": "1986-12-19",
        "nik": "3201150001100223",
        "draft": 0,
        "background_enabled": 1,
        "portfolio_link": "http://portfolio.com",
        "address": "Pela Mampang, Jakarta Selatan",
        "cv_file_path": "jobs/apply/cv/1598762375.pdf",
        "access_code": "A123456",
        "access_code_expired_at": "2021-06-06 00:00:00"
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}
Get Applicant Employment Application Detail
Request

Request Headers

Content-Type

application/json

Authorization

Basic AUTH

Notes:

AUTH = base64(ACCESS_KEY:ACCESS_SECRET)

Query Parameters

-

GET
https://api.talentics.id/v2/jobs/applicants/{JOB_APPLICANT_ID}/employment-application-form
Example Request
curl -v --compressed -u {app_id}:{app_secret} https://api.talentics.id/v2/jobs/applicants/30/employment-application-form
Response

Response Success

HTTP Status Code: 200

Response Field

id integer

Job Applicant ID

applicant_id integer

Job Applicant ID

name string

Applicant name

email string

Applicant email

application_time datetime

Employment application form submitted time

employment_application_form arary

Employment application form values

Response
{
    "data": {
        "id": 30,
        "applicant_id": 30,
        "name": "John Doe",
        "email": "[email protected]",
        "application_time": "2021-07-07 10:10:10",
        "employment_application_form": [
            {
                "name": "birthplace",
                "value": "Kota Jakarta Selatan"
            },
            {
                "name": "religion",
                "value": "Moslem"
            },
            {
                "name": "identity_address",
                "value": "Pela Mampang"
            },
            {
                "name": "current_address",
                "value": "Pela Mampang"
            },
            {
                "name": "blood_type",
                "value": "O"
            },
            {
                "name": "marital_status",
                "value": "Married"
            },
            {
                "name": "date_of_married",
                "value": "2018-12-02"
            },
            {
                "name": "number_of_children",
                "value": "1"
            },
            {
                "name": "npwp_number",
                "value": "111111111111111"
            },
            {
                "name": "npwp_address",
                "value": "Pela Mampang"
            },
            {
                "name": "license_number",
                "value": "111111"
            },
            {
                "name": "reference_name",
                "value": "Mary"
            },
            {
                "name": "reference_address",
                "value": "Pela Mampang"
            },
            {
                "name": "reference_phone",
                "value": "0811111111"
            },
            {
                "name": "reference_email",
                "value": "[email protected]"
            },
            {
                "name": "reference_relation",
                "value": "Wife"
            },
            {
                "name": "bank_account_number",
                "value": "1270101"
            },
            {
                "name": "bank_name",
                "value": "BANK BCA"
            },
            {
                "name": "bank_account_name",
                "value": "John Doe"
            },
            {
                "name": "identity_card",
                "value": "https://talentics.id/download/file_uploaded/identity_card/1625642548/2019-07.pdf"
            },
            {
                "name": "npwp_card",
                "value": "https://talentics.id/download/file_uploaded/npwp_card/1625642554/2019-08.pdf"
            },
            {
                "name": "bank_book",
                "value": "https://talentics.id/download/file_uploaded/bank_book/1625642557/2019-09.pdf"
            },
            {
                "name": "other_document",
                "value": "https://talentics.id/download/file_uploaded/other_document/1625642560/2019-10.pdf"
            }
        ]
    }
}

Response Failed

HTTP Status Code: 401

Response Field

errors array

Error message

Response
{
    "data": {
        "errors": [],
    }
}