REST API Endpoints Documentation
Overview
The Out of Office Assistant REST API provides programmatic access to absence rule management, enabling organizations to integrate absence automation with third-party platforms, custom applications, and existing enterprise systems. The API supports both end-user and administrative operations with token-based authentication.
Detailed API Documentation: https://app.swaggerhub.com/apis/resolution-cloud/jira-outofoffice/1.0.2
API Architecture and Access
API Availability
API Capabilities:
- Out of Office Assistant REST API Functions:
- ✅ Create new absence rules
- ✅ Modify existing rules
- ✅ Retrieve rule data and configurations
- ✅ Delete rules and manage lifecycle
Base URL Structure
API Base URL Format:
- https://out-of-office-connect.herokuapp.com/rest/1.0/
Authentication Methods
Available Use Cases
There are two main use cases available:
The administrator establishes an API connection for all users.
The administrator allows users to use their own API connections.
Admins create API Token on behalf for Users
Users can create their own tokens or
API connection for all users
Token Creation Requirements:
Admin: Create REST API Token (Scope Admin)
Token Management: Created and managed through Out of Office Assistant UI
Token Creation Process:
Navigate to Out of Office Assistant: Access app from Jira Apps menu
User Administration: Look for User Administration Button
Rest API Permissions: Click “Rest API Permissions” Tab
Create New Token: Click “Create New Token” Button
Select User: Select yourself as a User
Set Scope: Set Scope to Admin
Copy Token: Securely store generated token (shown only once)
Save Token: Press Ok Button
Allows users to use their own API connections (Admin controlled)
Admins create API Token on behalf for Users
Token Creation Requirements:
Admin: Create REST API Token (Scope Admin)
Token Management: Created and managed through Out of Office Assistant UI
Token Creation Process:
Navigate to Out of Office Assistant: Access app from Jira Apps menu
User Administration: Look for User Administration Button
Rest API Permissions: Click “Rest API Permissions” Tab
Create New Token: Click “Create New Token” Button
Select User: Select User for designated Token
Set Scope: Set Scope to READ / WRITE / DELETE (this Token can’t manage Rules on behalf of other Users)
Copy Token: Securely store generated token (shown only once)
Save Token: Press Ok Button
Allows users to use their own API connections (User controlled)
User can create an API Token for themself
Token Creation Requirements:
Admin: Allow Users to create their own REST API Token (General Settings)
Token Management: Created and managed through Out of Office Assistant UI
Token Creation Process:
Navigate to Out of Office Assistant: Access app from Jira Apps menu
Integrations: Click “Integrations” Tab
Rest API Connection: Click “connect” Button
Copy Token: Securely store generated token (shown only once)
Save Token: Press “Close” Button
Authentication Headers
Bearer Authentication:
- Authorization: Bearer {api-token}
Authentication Examples:
- # Bearer Authentication
- curl --location 'https://out-of-office-connect.herokuapp.com/v1/outofoffice/myrules' \
- --header 'Authorization: Bearer <OoO Token>'
Token Scope and Permissions
Available Token Scopes:
- admins
- GET /outofoffice/rules
- POST /outofoffice/rules
- PUT /outofoffice/rules
- DELETE /outofoffice/rules
- users:
- GET /outofoffice/myrules
- POST /outofoffice/myrules
- PUT /outofoffice/myrules
- DELETE /outofoffice/myrules
Scope Restrictions:
|400|bad input parameter|
|401|valid token missing|
|403|no permission|
/outofoffice/rules
Jira Out of Office Assistant REST API Endpoints
Absences
Create Absence
- POST /absences
Creates a new absence record for a user.
Request Body:
- json
- {
- "userId": "string",
- "startDate": "2025-06-20T00:00:00Z",
- "endDate": "2025-06-25T23:59:59Z",
- "message": "On vacation - please contact my coverer",
- "covererId": "string"
- }
Get User Absences
- GET /absences/user/{userId}
Retrieves all absences for a specific user.
Update Absence
- PUT /absences/{absenceId}
Updates an existing absence record.
Delete Absence
- DELETE /absences/{absenceId}
Removes an absence record.
Out of Office Rules
Create Rule
- POST /rules
Creates a new out-of-office rule.
Request Body:
- json
- {
- "name": "Vacation Rule",
- "userId": "string",
- "projectKey": "PROJ",
- "issueTypes": ["Bug", "Task"],
- "covererId": "string",
- "message": "I'm out of office. {coverer} will handle this.",
- "enabled": true
- }
Get User Rules
- GET /rules/user/{userId}
Retrieves all rules for a specific user.
Update Rule
- PUT /rules/{ruleId}
Updates an existing rule configuration.
Enable/Disable Rule
- PATCH /rules/{ruleId}/status
Toggles a rule's active status.
Coverage
Get Current Coverage
- GET /coverage/current
Returns all active coverage relationships.
Check User Availability
- GET /coverage/availability/{userId}
Checks if a user is currently available or out of office.
Rate Limiting
Rate Limit: 1000 requests per hour per token
Headers: Check
X-RateLimit-Remaining
andX-RateLimit-Reset
Retry After: When rate limited, check
Retry-After
header
Support and Resources
Documentation
Full API Reference: SwaggerHub Documentation
User Guide: Out of Office Assistant Documentation
Getting Help
Support Email: support@resolution.de
Community Forum: Visit the Atlassian Marketplace listing
Feature Requests: Submit via the Resolution support portal
API Status: ✅ PRODUCTION READY
Next Steps: https://resolution.atlassian.net/wiki/spaces/OoO/pages/4848353590