GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - uvdesk/api-bundle: API Integration for UVdesk Community Helpdesk System.

BranchesTags
Open more actions menu

Latest commit

 

History

102 Commits
102 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
API
API
 
 
Controller
Controller
 
 
DependencyInjection
DependencyInjection
 
 
Entity
Entity
 
 
EventListeners/API
EventListeners/API
 
 
Providers
Providers
 
 
Repository
Repository
 
 
Resources
Resources
 
 
Routing
Routing
 
 
Security/Guards
Security/Guards
 
 
Templates/package
Templates/package
 
 
UIComponents/Dashboard
UIComponents/Dashboard
 
 
CHANGELOG-1.0.md
CHANGELOG-1.0.md
 
 
CHANGELOG-1.1.md
CHANGELOG-1.1.md
 
 
LICENSE.txt
LICENSE.txt
 
 
README.md
README.md
 
 
UVDeskApiBundle.php
UVDeskApiBundle.php
 
 
composer.json
composer.json
 
 

Repository files navigation

The API Bundle empowers integration developers to seamlessly interact with the UVDesk Community Helpdesk system using its robust RESTful API. It provides a comprehensive set of endpoints that allow external applications to perform key operations—such as creating, updating, and retrieving tickets, managing customers and agents and smooth integration with third-party platforms and custom systems.

Installation

This bundle can be easily integrated into any symfony application (though it is recommended that you're using Symfony 4 as things have changed drastically with the newer Symfony versions). Before continuing, make sure that you're using PHP 8.1 or higher and have Composer installed.

To require the api bundle into your symfony project, simply run the following from your project root:

$ composer require uvdesk/api-bundle

After installing api bundle run the below command:

$ php bin/console doctrine:schema:update --force

Finally clear your project cache by below command(write prod if running in production environment i.e --env prod):

$ php bin/console cache:clear --env dev

API References

Use the below available apis to interact with your helpdesk system.

Session:

  • POST /api/v1/session/login

    Authenticate user credentials and generate an access token in response to access helpdesk apis as the authenticated user.

    Headers:

    {
        "Authorization": "Bearer AUTH_TOKEN"
    }
    

    To generate the required auth token, simply encode the user's email and password separated by a colon in base64 format, i.e. base64_encode("email:password").

    Sample Response:

    {
        "success": true,
        "accessToken": "VBGLASXENR..."
    }
    
  • POST /api/v1/session/logout

    Invalidates an authenticated user access token so that it can't be used anymore.

    Headers:

    {
        "Authorization": "Bearer ACCESS_TOKEN"
    }
    

    ACCESS_TOKEN: The api access token that was generated either using the session login api or directly from the dashboard.

    Sample Response:

    {
        "status": true,
        "message": "Session token has been expired successfully."
    }
    

Tickets:

More examples of ticket related apis can be found over here.

  • GET /tickets

    Get a collection of all user accessible tickets.

    Headers:

    {
        "Authorization": "Bearer ACCESS_TOKEN"
    }
    

    ACCESS_TOKEN: The api access token that was generated either using the session login api or directly from the dashboard.

    Sample Response:

    {
        "tickets": [
            {
                "id": 1,
                "subject": "Support Request ...",
                "isCustomerView": false,
                "status": {
                    "id": 1,
                    "code": "open",
                    "description": "Open",
                    "colorCode": "#0056fc",
                    "sortOrder": 1
                },
                "group": null,
                "type": {
                    "id": 1,
                    "code": "support",
                    "description": "Support",
                    "isActive": true
                },
                "priority": {
                    "id": 1,
                    "code": "low",
                    "description": "Low",
                    "colorCode": "#2DD051"
                },
                "formatedCreatedAt": "16-05-2023 12:55pm",
                "totalThreads": "0",
                "agent": {
                    "id": 1,
                    "email": "[email protected]",
                    "name": "Sample Agent",
                    "firstName": "Sample",
                    "lastName": "Agent",
                    "isEnabled": true,
                    "profileImagePath": null,
                    "smallThumbnail": null,
                    "isActive": true,
                    "isVerified": true,
                    "designation": null,
                    "contactNumber": null,
                    "signature": null,
                    "ticketAccessLevel": null
                },
                "customer": {
                    "id": 2,
                    "email": "[email protected]",
                    "name": "Sample Customer",
                    "firstName": "Sample",
                    "lastName": "Customer",
                    "contactNumber": null,
                    "profileImagePath": null,
                    "smallThumbnail": null
                }
            }
        ],
        "pagination": {
            "last": 1,
            "current": 1,
            "numItemsPerPage": 15,
            "first": 1,
            "pageCount": 1,
            "totalCount": 1,
            "pageRange": 1,
            "startPage": 1,
            "endPage": 1,
            "pagesInRange": [
                1
            ],
            "firstPageInRange": 1,
            "lastPageInRange": 1,
            "currentItemCount": 1,
            "firstItemNumber": 1,
            "lastItemNumber": 1,
            "url": "#page/replacePage"
        },
        "userDetails": {
            "user": 1,
            "name": "Sample Agent"
        },
        "agents": [
            {
                "id": 1,
                "udId": 1,
                "email": "[email protected]",
                "name": "Sample Agent",
                "smallThumbnail": null
            }
        ],
        "status": [
            {
                "id": 1,
                "code": "open",
                "description": "Open",
                "colorCode": "#0056fc",
                "sortOrder": 1
            },
            {
                "id": 2,
                "code": "pending",
                "description": "Pending",
                "colorCode": "#FF6A6B",
                "sortOrder": 2
            },
            {
                "id": 3,
                "code": "answered",
                "description": "Answered",
                "colorCode": "#FFDE00",
                "sortOrder": 3
            },
            {
                "id": 4,
                "code": "resolved",
                "description": "Resolved",
                "colorCode": "#2CD651",
                "sortOrder": 4
            },
            {
                "id": 5,
                "code": "closed",
                "description": "Closed",
                "colorCode": "#767676",
                "sortOrder": 5
            },
            {
                "id": 6,
                "code": "spam",
                "description": "Spam",
                "colorCode": "#00A1F2",
                "sortOrder": 6
            }
        ],
        "group": [
            {
                "id": 1,
                "name": "Default"
            }
        ],
        "team": [],
        "priority": [
            {
                "id": 1,
                "code": "low",
                "description": "Low",
                "colorCode": "#2DD051"
            },
            {
                "id": 2,
                "code": "medium",
                "description": "Medium",
                "colorCode": "#F5D02A"
            },
            {
                "id": 3,
                "code": "high",
                "description": "High",
                "colorCode": "#FA8B3C"
            },
            {
                "id": 4,
                "code": "urgent",
                "description": "Urgent",
                "colorCode": "#FF6565"
            }
        ],
        "type": [
            {
                "id": 1,
                "name": "support"
            }
        ],
        "source": {
            "email": "Email",
            "website": "Website"
        }
    }
    

License

The API Bundle and libraries included within the bundle are released under released under the OSL-3.0 license

About

API Integration for UVdesk Community Helpdesk System.

Topics

create-ticketfetch-all-ticketsticket-managementtrash-ticketuvdesk-api-bundleview-ticket

Resources

Readme
OSL-3.0 license

Security policy

Security policy
Activity
Custom properties

Stars

16 stars

Watchers

8 watching

Forks

16 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.