Skip to main content
GET
/
employees
curl --request GET \
  --url "https://v1-api.ticket-plus.app/employees?page=1&perPage=10" \
  --header "Authorization: Basic <base64(clientId:clientSecret)>"
{
  "data": {
    "data": [
      {
        "id": 42,
        "firstName": "Anna",
        "lastName": "Müller",
        "email": "anna.mueller@example.com",
        "dateOfBirth": "1990-04-15",
        "profileImage": null,
        "resource": "employee",
        "subscription": {
          "status": "active",
          "startAt": "2024-01-01",
          "nextTicketAt": "2024-06-01",
          "pausedAt": null,
          "cancelledAt": null,
          "reactivatedAt": null
        },
        "plan": {
          "type": "fully-subsidized-plan",
          "contractSigningStatus": "accepted",
          "employeeContributionAmount": null
        },
        "ticket": {
          "ticketId": "tkt_9Xk2mPqL",
          "ticketMonth": "2024-05",
          "validFrom": "2024-05-01",
          "validUntil": "2024-05-31",
          "links": {
            "apple": "https://wallet.example.com/apple/tkt_9Xk2mPqL",
            "google": "https://wallet.example.com/google/tkt_9Xk2mPqL"
          }
        },
        "hrIntergartionLinks": [],
        "_links": {
          "self": { "href": "https://v1-api.ticket-plus.app/employees/42", "type": "application/json" },
          "employeeDocuments": { "href": "https://v1-api.ticket-plus.app/employees/42/documents", "type": "application/json" }
        }
      }
    ],
    "page": 1,
    "perPage": 10,
    "totalPages": 5,
    "total": 47
  }
}

Documentation Index

Fetch the complete documentation index at: https://jobticket-docs.ticket-plus.app/llms.txt

Use this file to discover all available pages before exploring further.

Returns all employees with their subscription status, plan details, current transit ticket, and HR integration links. Use the filter parameters to narrow results by status, plan type, email, or specific IDs.
curl --request GET \
  --url "https://v1-api.ticket-plus.app/employees?page=1&perPage=10" \
  --header "Authorization: Basic <base64(clientId:clientSecret)>"
{
  "data": {
    "data": [
      {
        "id": 42,
        "firstName": "Anna",
        "lastName": "Müller",
        "email": "anna.mueller@example.com",
        "dateOfBirth": "1990-04-15",
        "profileImage": null,
        "resource": "employee",
        "subscription": {
          "status": "active",
          "startAt": "2024-01-01",
          "nextTicketAt": "2024-06-01",
          "pausedAt": null,
          "cancelledAt": null,
          "reactivatedAt": null
        },
        "plan": {
          "type": "fully-subsidized-plan",
          "contractSigningStatus": "accepted",
          "employeeContributionAmount": null
        },
        "ticket": {
          "ticketId": "tkt_9Xk2mPqL",
          "ticketMonth": "2024-05",
          "validFrom": "2024-05-01",
          "validUntil": "2024-05-31",
          "links": {
            "apple": "https://wallet.example.com/apple/tkt_9Xk2mPqL",
            "google": "https://wallet.example.com/google/tkt_9Xk2mPqL"
          }
        },
        "hrIntergartionLinks": [],
        "_links": {
          "self": { "href": "https://v1-api.ticket-plus.app/employees/42", "type": "application/json" },
          "employeeDocuments": { "href": "https://v1-api.ticket-plus.app/employees/42/documents", "type": "application/json" }
        }
      }
    ],
    "page": 1,
    "perPage": 10,
    "totalPages": 5,
    "total": 47
  }
}

Query Parameters

Full-text search across employee names and email addresses.
page
integer
default:"1"
Page number to return. Starts at 1.
perPage
integer
default:"10"
Number of results per page. Maximum is 100.
sortOrder
string
default:"desc"
Sort direction. Allowed values: asc, desc.
sortField
string
default:"id"
Field to sort results by. Allowed values: id, createdAt, updatedAt.
ids
integer[]
Filter to a specific set of employee IDs.
emails
string[]
Filter to specific employee email addresses.
subscriptionStatuses
string[]
Filter by subscription status. Allowed values: no-subscription, scheduled, active, scheduled-pause, paused, scheduled-cancellation, cancelled.
planTypes
string[]
Filter by plan type. Allowed values: fully-subsidized-plan, deferred-plan, split-pay-plan.

Response

data
object
required

Authorizations

Authorization
string
header
required

HTTP Basic Auth using your API key credentials. Use the username and password issued from the Developer Portal. Encode them as Base64(username:password) and pass in the Authorization: Basic <token> header.

Query Parameters

search
string | null

Full-text search across employee names and email addresses.

page
integer | null
default:1

Page number to return. Starts at 1.

Required range: x >= 0
perPage
integer | null
default:10

Number of results per page. Maximum is 100.

Required range: 0 <= x <= 100
sortOrder
enum<string> | null
default:desc

Sort direction — asc for ascending, desc for descending.

Available options:
asc,
desc
sortField
enum<string> | null
default:id

Field to sort results by.

Available options:
id,
createdAt,
updatedAt
ids
integer[] | null

Filter to a specific set of employee IDs.

Required range: x >= 0
emails
string[] | null

Filter to specific employee email addresses.

subscriptionStatuses
enum<string>[] | null

Filter by subscription status. Accepted values: no-subscription, cancelled, scheduled-cancellation, active, scheduled, scheduled-pause, paused.

Available options:
no-subscription,
cancelled,
scheduled-cancellation,
active,
scheduled,
scheduled-pause,
paused
planTypes
enum<string>[] | null

Filter by plan type. Accepted values: fully-subsidized-plan, deferred-plan, split-pay-plan.

Available options:
fully-subsidized-plan,
deferred-plan,
split-pay-plan

Response

200 - application/json

A paginated list of employees.

data
object
required