Skip to content

TIMIFY Developer API GraphQL Proxy (0.0.4)

HTTP proxy API in front of TIMIFY GraphQL services. Generated from Express routes and route analysis docs.

Download OpenAPI description
Overview
TIMIFY API Team
Languages
Servers
Mock server
https://docs2.timify.com/_mock/apis/openapi
Production
https://api.timify.com
Staging
https://api-stg.timify.com
Local development
http://localhost:3030

Auth

Endpoints from auth routes module.

Operations

Appointments

Endpoints from appointments routes module.

Operations

Availability

Endpoints from availability routes module.

Operations

Booker Services

Endpoints from booker-services routes module.

Operations

Timeshifts

Endpoints from timeshifts routes module.

Operations

Customers

Endpoints from customers routes module.

Operations

Enterprise Customers

Endpoints for enterprise-level customer management.

Operations

Companies

Endpoints from companies routes module.

Operations

Enterprises

Endpoints from enterprises routes module.

Operations

Permissions

Endpoints from permissions routes module.

Operations

Services

Endpoints from services routes module.

Operations

Enterprise Services

Endpoints for enterprise-level service management.

Operations

List enterprise services

Request

This endpoint retrieves all the enterprise services. When the developer wants to include booking limit suggestions in the response, the booking limitation params needs to be be included in the query, only the start_date is mandatory ?start_date=2019-02-23 11:30&event_id=645515845089ba22acfa569e&durations_pattern=5&duration_before=30&duration_after=30

Security
BearerAuth
Query
is_bookableboolean

Filter results to only bookable services. Set to true to exclude non-bookable services.

Example: is_bookable=true
category_idstring^[0-9a-f]{24}$

Filter services by category. Accepts valid MongoDB ObjectId of a service category.

Example: category_id=65f4c840b6f1a10012ab34cd
resource_idstring^[0-9a-f]{24}$

Filter services assigned to a specific resource. Accepts valid MongoDB ObjectId.

Example: resource_id=65f4c840b6f1a10012ab34cd
resource_category_idstring^[0-9a-f]{24}$

Filter services by resource category. Accepts valid MongoDB ObjectId of a resource category.

Example: resource_category_id=65f4c840b6f1a10012ab34cd
idsArray of stringsnon-empty

Filter results by service IDs. Accepts array of valid MongoDB ObjectIds.

Example: ids=65f4c840b6f1a10012ab34cd
external_idsArray of stringsnon-empty

Filter services by external IDs. Accepts array of external ID strings.

Example: external_ids=EXT-SERVICE-001
is_stalledboolean

Filter stalled services. Set to true to show only temporarily paused services.

Example: is_stalled=true
pageinteger>= 1

Page number (1-based).

Default 1
Example: page=1
limitinteger>= 1

Maximum items per page. Default: 10000 (when not provided or when provided value ≤ 0).

Default 10000
Example: limit=50
sort_typestring

Sort direction. Accepts "asc" (ascending) or "desc" (descending). Default: asc.

Enum"asc""desc"
sortstring

Sort results by field. Typically "name" or "createdAt".

start_datestring^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$

Start date for availability checks in booking limit suggestions. Format: YYYY-MM-DD HH:mm.

Example: start_date=2026-03-02 09:00
event_idstring^[0-9a-f]{24}$

Filter services by event. Accepts valid MongoDB ObjectId.

Example: event_id=65f4c840b6f1a10012ab34cd
durations_pattern[]integermultiple of 5>= 0

Duration availability pattern. Must be divisible by 5 (minutes). Include multiple times for varied availability.

Example: durations_pattern[]=20
duration_beforeintegermultiple of 5>= 0

Buffer time before service. Must be divisible by 5 (minutes).

Example: duration_before=30
duration_afterintegermultiple of 5>= 0

Buffer time after service. Must be divisible by 5 (minutes).

Example: duration_after=30
Headers
company-idstring

Company MongoDB id used in auth context.

Example: 65f4c840b6f1a10012ab34cd
curl -i -X GET \
  'https://docs2.timify.com/_mock/apis/openapi/v1/enterprise-services?is_bookable=true&category_id=65f4c840b6f1a10012ab34cd&resource_id=65f4c840b6f1a10012ab34cd&resource_category_id=65f4c840b6f1a10012ab34cd&ids=65f4c840b6f1a10012ab34cd&external_ids=EXT-SERVICE-001&is_stalled=true&page=1&limit=50&sort_type=asc&sort=string&start_date=2026-03-02+09%3A00&event_id=65f4c840b6f1a10012ab34cd&durations_pattern%5B%5D=20&duration_before=30&duration_after=30' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'company-id: 65f4c840b6f1a10012ab34cd'

Responses

Returns paginated list of enterprise services with optional booking limit suggestions based on provided date/time parameters.

Bodyapplication/json
dataArray of objects(GenericRecord)required

List payload.

Example: [{"id":"65f4c840b6f1a10012ab34cd","externalId":"ext_1001","firstName":"John","lastName":"Doe","fullName":"John Doe","email":"john@example.com","totalBookings":5,"createdAt":"2024-01-15T10:30:00Z","updatedAt":"2024-02-20T14:45:30Z","ts":1708430730},{"id":"65f4c840b6f1a10012ab34ce","externalId":"ext_1002","firstName":"Jane","lastName":"Smith","fullName":"Jane Smith","email":"jane@example.com","totalBookings":3,"createdAt":"2024-01-20T11:15:00Z","updatedAt":"2024-02-25T13:22:00Z","ts":1708516200}]
data[].​property name*anyadditional property
metaobject(ApiMeta)
totalinteger

Total count used by legacy list endpoints.

Example: 182
statusinteger

Operation status flag.

Example: 1
Response
application/json
{ "data": [ {}, {} ], "total": 42, "meta": { "page": 1, "limit": 20, "totalItems": 42, "totalPages": 3 }, "status": 1 }

Create enterprise service

Request

Create a new enterprise-level service.

Security
BearerAuth
Query
start_datestring^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$

Start date for service availability. Format: YYYY-MM-DD HH:mm.

Example: start_date=2026-03-02 09:00
event_idstring^[0-9a-f]{24}$

Associate service with event. Accepts valid MongoDB ObjectId.

Example: event_id=65f4c840b6f1a10012ab34cd
durations_pattern[]integermultiple of 5>= 0

Duration availability pattern. Must be divisible by 5 (minutes). Include multiple times for varied availability.

Example: durations_pattern[]=20
duration_beforeintegermultiple of 5>= 0

Buffer time before service. Must be divisible by 5 (minutes).

Example: duration_before=30
duration_afterintegermultiple of 5>= 0

Buffer time after service. Must be divisible by 5 (minutes).

Example: duration_after=30
Headers
company-idstring

Company MongoDB id used in auth context.

Example: 65f4c840b6f1a10012ab34cd
Bodyapplication/jsonrequired
is_bookableboolean

Is bookable.

Example: true
namestringrequired

Name.

Example: "example"
external_idstring

External id.

Example: "65f4c840b6f1a10012ab34cd"
category_idstring

Category id.

Example: "65f4c840b6f1a10012ab34cd"
descriptionstring

Description.

Example: "example"
colorstring

Color.

Example: "active"
durationinteger>= 0required

Duration.

Example: 20
duration_beforeinteger>= 0

Duration before.

Example: 20
duration_afterinteger>= 0

Duration after.

Example: 20
durations_patternArray of integersnon-emptyrequired

Durations pattern.

Example: [15]
pricenumber>= 0

Price.

Example: 19.9
has_online_paymentboolean

Has online payment.

Example: true
is_stalledboolean

Is stalled.

Example: true
is_payment_mandatoryboolean

Is payment mandatory.

Example: true
max_participantsinteger>= 0

Max participants.

Example: 20
dependenciesstring

Dependencies.

Example: "example"
affected_branch_idsArray of stringsnon-empty

Affected branch ids.

Example: ["65f4c840b6f1a10012ab34cd"]
affected_branch_external_idsArray of stringsnon-empty

Affected branch external ids.

Example: ["65f4c840b6f1a10012ab34cd"]
customer_reminders_minutesinteger>= 0

Customer reminders minutes.

Example: 20
resource_reminders_minutesinteger>= 0

Resource reminders minutes.

Example: 20
is_combinationboolean

Is combination.

Example: true
combination_service_idsArray of stringsnon-empty

Combination service ids.

Example: ["65f4c840b6f1a10012ab34cd"]
is_combination_price_overwrittenboolean

Is combination price overwritten.

Example: true
has_combination_same_resources_preferenceboolean

Has combination same resources preference.

Example: true
calendarstring

Calendar.

Example: "example"
booking_limitstring

Booking limit.

Example: "example"
disable_booking_limitstring

Disable booking limit.

Example: "example"
maximum_lead_timestring

Maximum lead time.

Example: "09:30"
minimum_lead_timestring

Minimum lead time.

Example: "09:30"
cancellation_lead_timestring

Cancellation lead time.

Example: "09:30"
attributesstring

Attributes.

Example: "example"
locationobject

Location.

Example: {"key":"value"}
curl -i -X POST \
  'https://docs2.timify.com/_mock/apis/openapi/v1/enterprise-services?start_date=2026-03-02+09%3A00&event_id=65f4c840b6f1a10012ab34cd&durations_pattern%5B%5D=20&duration_before=30&duration_after=30' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'company-id: 65f4c840b6f1a10012ab34cd' \
  -d '{
    "is_bookable": true,
    "name": "example",
    "external_id": "65f4c840b6f1a10012ab34cd",
    "category_id": "65f4c840b6f1a10012ab34cd",
    "description": "example",
    "color": "active",
    "duration": 20,
    "duration_before": 20,
    "duration_after": 20,
    "durations_pattern": [
      15
    ],
    "price": 19.9,
    "has_online_payment": true,
    "is_stalled": true,
    "is_payment_mandatory": true,
    "max_participants": 20,
    "dependencies": "example",
    "affected_branch_ids": [
      "65f4c840b6f1a10012ab34cd"
    ],
    "affected_branch_external_ids": [
      "65f4c840b6f1a10012ab34cd"
    ],
    "customer_reminders_minutes": 20,
    "resource_reminders_minutes": 20,
    "is_combination": true,
    "combination_service_ids": [
      "65f4c840b6f1a10012ab34cd"
    ],
    "is_combination_price_overwritten": true,
    "has_combination_same_resources_preference": true,
    "calendar": "example",
    "booking_limit": "example",
    "disable_booking_limit": "example",
    "maximum_lead_time": "09:30",
    "minimum_lead_time": "09:30",
    "cancellation_lead_time": "09:30",
    "attributes": "example",
    "location": {
      "key": "value"
    }
  }'

Responses

Creates new enterprise service and returns created service record with assigned ID.

Bodyapplication/json
dataobject(GenericRecord)

Generic response data object for proxied GraphQL entities.

Example: {"id":"65f4c840b6f1a10012ab34cd","externalId":"ext_1001","name":"Demo value"}
statusinteger

Operation status flag.

Example: 1
Response
application/json
{ "data": { "id": "65f4c840b6f1a10012ab34cd", "externalId": "ext_1001", "firstName": "John", "lastName": "Doe", "fullName": "John Doe", "email": "john@example.com", "phone": {}, "tags": [], "totalBookings": 5, "avatarUrl": "https://example.com/avatar.jpg", "firstLetters": "JD", "createdAt": "2024-01-15T10:30:00Z", "updatedAt": "2024-02-20T14:45:30Z", "ts": 1708430730 }, "status": 1 }

List enterprise service categories

Request

List enterprise service categories.

Security
BearerAuth
Query
idsArray of stringsnon-empty

Filter results by category IDs. Accepts array of valid MongoDB ObjectIds.

Example: ids=65f4c840b6f1a10012ab34cd
resource_idstring^[0-9a-f]{24}$

Filter categories by resource. Accepts valid MongoDB ObjectId.

Example: resource_id=65f4c840b6f1a10012ab34cd
pageinteger>= 1

Page number (1-based).

Default 1
Example: page=1
limitinteger>= 1

Maximum items per page. Default: 10000 (when not provided or when provided value ≤ 0).

Default 10000
Example: limit=50
Headers
company-idstring

Company MongoDB id used in auth context.

Example: 65f4c840b6f1a10012ab34cd
curl -i -X GET \
  'https://docs2.timify.com/_mock/apis/openapi/v1/enterprise-services/categories?ids=65f4c840b6f1a10012ab34cd&resource_id=65f4c840b6f1a10012ab34cd&page=1&limit=50' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'company-id: 65f4c840b6f1a10012ab34cd'

Responses

Returns paginated list of enterprise service categories that organize services.

Bodyapplication/json
dataArray of objects(GenericRecord)required

List payload.

Example: [{"id":"65f4c840b6f1a10012ab34cd","externalId":"ext_1001","firstName":"John","lastName":"Doe","fullName":"John Doe","email":"john@example.com","totalBookings":5,"createdAt":"2024-01-15T10:30:00Z","updatedAt":"2024-02-20T14:45:30Z","ts":1708430730},{"id":"65f4c840b6f1a10012ab34ce","externalId":"ext_1002","firstName":"Jane","lastName":"Smith","fullName":"Jane Smith","email":"jane@example.com","totalBookings":3,"createdAt":"2024-01-20T11:15:00Z","updatedAt":"2024-02-25T13:22:00Z","ts":1708516200}]
data[].​property name*anyadditional property
metaobject(ApiMeta)
totalinteger

Total count used by legacy list endpoints.

Example: 182
statusinteger

Operation status flag.

Example: 1
Response
application/json
{ "total": 182, "data": [ {}, {} ], "status": 1 }

Group Services

Endpoints from group-services routes module.

Operations

Enterprise Group Services

Endpoints from group-services-enterprise routes module.

Operations

Resources

Endpoints from resources routes module.

Operations

Enterprise Resource Categories

Endpoints for enterprise-level resource categories.

Operations

Notifications

Endpoints from notifications routes module.

Operations

Files

Endpoints from files routes module.

Operations

ICS

Endpoints from ics routes module.

Operations

Tags

Endpoints from tags routes module.

Operations

Statistics

Endpoints from statistics routes module.

Operations

Transactions

Endpoints from transactions routes module.

Operations

Public

Endpoints from public routes module.

Operations