Pulse Software Learning API API
API for managing learning info in Pulse
API for managing learning info in Pulse
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/pulse-software-learning-api-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Pulse Public Authentication Learning API
version: 1.0.1
description: "The Pulse API is targeted towards developers looking to automate tasks in Pulse. \n\n# Authentication\nAll endpoints in Pulse require authentication. Legacy endpoints require only a Private API Key, while all new endpoints incorporate JSON Web Tokens. \n\n**API Key**\nTo consume a Pulse endpoint using API Key authentication, :\n * Contact Pulse support at support@pulsesoftware.com to enable the Pulse Public API and issue your API key.\n * Pass the API key in the **'x-Api-Key'** header with each request.\n\nNote: It is recommended to use a User Private API key where possible, rather than the Application Private Key. When using a User API key, functionality will be restricted based on the role of the User for which the API key was generated. See API endpoint documentation for authorised roles. \n\n**JSON Web Token (JWT)**\nTo consume a Pulse endpoint using JWT authentication:\n * Contact Pulse support at support@pulsesoftware.com to enable the Pulse Public API and issue your API key.\n * Request a bearer token from /pulse/jwt, passing the API key in the **'x-Api-Key'** header with the request.\n * Pass the token issued in the **'Authorization'** header of all requests as **'bearer [token]'**\n\n**Note** Tokens will expire 60 minutes after being issued, at which point your application will need to request a new token.\n\n# Requests\nThe Pulse API follows REST principles. Data resources are accessed via standard HTTPS requests in UTF-8 format to an API endpoint. Where possible, Web API uses appropriate HTTP verbs for each action.\nHTTP Verbs:\n * **GET** Retrieves resources\n * **POST** Creates resources\n * **PUT** Changes and/or replaces resources or collections\n * **DELETE** Deletes resources\n\nThe Pulse API accepts the following ISO-8601 formats for date strings:\n * Date, Time, Timezone: e.g. \"2021-06-02T21:39:18+00:00\"\n * Date, Time: e.g. \"2021-06-02T21:39:18Z\"\n * Date: e.g. \"2021-06-02\"\n\n# Responses\nPulse API returns all response data as a JSON object. \n\n# Response Status Codes\nPulse API uses the following status codes:\n * **200** OK - Request succeeded. Result provided in response body.\n * **400** Bad Request - Malformed syntax. See message body for information.\n * **401** Unauthorised - Missing authentication (API Key or JWT).\n * **403** Forbidden - API user is not authorised to access requested resource.\n * **404** Not Found - Request resource does not exist.\n\n# Support\nContact support@pulsesoftware.com for any queries or issues related to this API\n"
termsOfService: http://www.apache.org/licenses/LICENSE-2.0.html
contact:
email: support@pulsesoftware.com
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://*.pulsesoftware.com/webservices/api
- url: http://*.pulsesoftware.com/webservices/api
tags:
- name: Learning API
description: API for managing learning info in Pulse
paths:
/training/traininghistoryrecord/{hours}:
get:
security:
- ApiKey: []
tags:
- Learning API
summary: Retrieve training history records verified in the last specified number of hours
description: Retrieve training history records verified in the last specified number of hours (defaults to 12 hours if no value is given)
operationId: getTrainingHistory
parameters:
- in: path
required: true
name: hours
description: The max number of hours to look back when retrieving training records based on their date of verification
schema:
type: number
responses:
200:
description: OK. Request completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/GetTrainingHistoryRecordsResponse'
401:
description: The provided API Key is invalid.
403:
description: An API Key must be provided to use this resource.
components:
schemas:
GetTrainingHistoryRecordsResponse:
type: array
items:
$ref: '#/components/schemas/TrainingHistoryRecord'
example:
- Payroll_Num: 1234
Username: test.user
Email: test_user@test.com
Given_Name: Test
Surname: User
Course_Name: How to build an API
Course_Code: api101
Completion_Date: 17/05/2021 3:36:28 PM
- Payroll_Num: 1235
Username: test.user123
Email: test_user123@test.com
Given_Name: Tester
Surname: User
Course_Name: Agile Methodologies
Course_Code: agile123
Completion_Date: 9/05/2021 3:36:28 PM
TrainingHistoryRecord:
type: object
properties:
Payroll_Num:
type: string
Username:
type: string
Email:
type: string
Given_Name:
type: string
Surname:
type: string
Course_Name:
type: string
Course_Code:
type: string
Completion_Date:
type: string
securitySchemes:
ApiKey:
type: apiKey
name: x-Api-Key
in: header
BearerJWT:
type: apiKey
name: Authorisation
in: header
externalDocs:
description: Find out more about Swagger
url: http://swagger.io