Epignosis (TalentLMS, eFront, TalentCards) Plugin API

The Plugin API from Epignosis (TalentLMS, eFront, TalentCards) — 2 operation(s) for plugin.

OpenAPI Specification

epignosis-talentlms-efront-talentcards-plugin-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.0.0
  title: Efront Account Plugin API
  description: Efront API Documentation
servers:
- url: https://virtserver.swaggerhub.com/Epignosis/Efront-API/1.0.0
  description: SwaggerHub API Auto Mocking
- url: https://ssc.efrontlearning.com/API/v1.0
security:
- basicAuth: []
tags:
- name: Plugin
paths:
  /Plugins:
    get:
      tags:
      - Plugin
      description: Returns a list of the available plugins and their information.
      responses:
        '200':
          description: A JSON array of the plugins.
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        type: object
                        properties:
                          Name:
                            type: string
                            example: Plugin1
                          Title:
                            type: string
                            example: Plugin 1
                          Version:
                            type: number
                            format: float
                            example: 1.0.0
                - $ref: '#/components/schemas/standardResponse'
        '400':
          $ref: '#/components/responses/errorResponse'
  /Plugin/{pluginName}:
    get:
      tags:
      - Plugin
      description: Returns a list of the requested plugin and its information.
      parameters:
      - name: pluginName
        in: path
        required: true
        style: simple
        explode: false
        schema:
          type: string
          example: Demo
      responses:
        '200':
          description: A JSON array of the requested plugin.
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    data:
                      type: object
                      properties:
                        Name:
                          type: string
                          example: Demo
                        Title:
                          type: string
                          example: Demo plugin
                        Version:
                          type: number
                          format: float
                          example: 1.0.0
                - $ref: '#/components/schemas/standardResponse'
        '400':
          $ref: '#/components/responses/errorResponse'
    post:
      tags:
      - Plugin
      summary: Executes a callback method
      description: Returns the specified plugin's return value only if the plugin has the corresponding callback method implemented.
      parameters:
      - $ref: '#/components/parameters/pluginName'
      requestBody:
        required: false
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                anyProperty:
                  description: Any payload you want to add to the specified plugin.
                  anyOf:
                  - type: string
                    example: test
                  - type: integer
                    example: 5
                  - type: number
                    example: '1.3'
                  - type: array
                    items:
                      type: string
                  - type: boolean
                    example: true
                  - type: object
                    properties:
                      parent value:
                        type: array
                        items:
                          type: string
                          example: value 1
      responses:
        '200':
          description: A JSON array with the return value of the plugin.
          content:
            application/json:
              schema:
                allOf:
                - type: object
                  properties:
                    result:
                      description: The plugin's return value.
                      anyOf:
                      - type: string
                        example: 'I am Efront\Plugin\Demo\Model\DemoPlugin::onApiCall plugin. I will execute a POST method with these serialized data: { a:0:{} }'
                      - type: integer
                        example: 5
                      - type: number
                        example: '1.3'
                      - type: array
                        items:
                          type: string
                      - type: boolean
                        example: true
                      - type: object
                        properties:
                          parent value:
                            type: array
                            items:
                              type: string
                              example: value 1
                - $ref: '#/components/schemas/standardResponse'
        '400':
          $ref: '#/components/responses/errorResponse'
components:
  parameters:
    pluginName:
      name: pluginName
      in: path
      required: true
      style: simple
      explode: false
      schema:
        type: string
        example: Demo
  responses:
    errorResponse:
      description: Bad request
      content:
        application/json:
          schema:
            allOf:
            - type: object
              properties:
                error:
                  type: object
                  properties:
                    code:
                      type: integer
                      description: same as the response code
                      minimum: 400
                      default: 400
                    message:
                      type: string
                      description: A message that points out that something went wrong.
                      example: Not possible to get the requested resource information.
                    reason:
                      type: string
                      nullable: true
            - $ref: '#/components/schemas/standardResponse'
  schemas:
    standardResponse:
      type: object
      properties:
        executionDuration:
          type: number
          format: float
          example: 0.5281
        success:
          type: boolean
          enum:
          - true
          - false
        version:
          type: number
          format: float
          default: '1.0'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic