Accredible Groups API

Course or achievement containers that credentials are issued against.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/accredible-groups-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

accredible-groups-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Accredible Analytics Groups API
  description: The Accredible API issues, manages, and verifies digital credentials - certificates and Open Badges - programmatically. Credentials are issued to a recipient against a Group (a course or achievement) and rendered with a reusable Design. The API also manages Evidence Items and References attached to credentials, generates credential PDFs and blockchain-verifiable records, returns engagement analytics, administers Departments and Team Members, and generates recipient SSO links. All requests are authenticated with an API key sent in the Authorization header using the scheme `Token token=YOUR_API_KEY`. Production base URL is https://api.accredible.com/v1; a sandbox is available at https://sandbox.api.accredible.com/v1. Endpoints and paths are grounded in Accredible's published API reference; request and response schemas are modeled and simplified.
  version: '1.0'
  contact:
    name: Accredible
    url: https://www.accredible.com
  license:
    name: Proprietary
    url: https://www.accredible.com/terms-of-service
servers:
- url: https://api.accredible.com/v1
  description: Production
- url: https://sandbox.api.accredible.com/v1
  description: Sandbox
security:
- tokenAuth: []
tags:
- name: Groups
  description: Course or achievement containers that credentials are issued against.
paths:
  /issuer/groups:
    post:
      operationId: createGroup
      tags:
      - Groups
      summary: Create a group
      description: Creates a new Group (course or achievement) under the issuer account.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                group:
                  $ref: '#/components/schemas/GroupInput'
      responses:
        '200':
          description: The created group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupEnvelope'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /issuer/groups/{group_id}:
    parameters:
    - $ref: '#/components/parameters/GroupId'
    get:
      operationId: getGroup
      tags:
      - Groups
      summary: View a group
      description: Retrieves a single Group by ID.
      responses:
        '200':
          description: The requested group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupEnvelope'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateGroup
      tags:
      - Groups
      summary: Update a group
      description: Updates an existing Group.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                group:
                  $ref: '#/components/schemas/GroupInput'
      responses:
        '200':
          description: The updated group.
        '401':
          $ref: '#/components/responses/Unauthorized'
    delete:
      operationId: deleteGroup
      tags:
      - Groups
      summary: Delete a group
      description: Deletes a Group by ID.
      responses:
        '200':
          description: The group was deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /issuer/all_groups:
    get:
      operationId: listAllGroups
      deprecated: true
      tags:
      - Groups
      summary: View all groups (deprecated)
      description: Lists all Groups under the issuer account. Deprecated in favor of search.
      parameters:
      - name: name
        in: query
        schema:
          type: string
      - name: page
        in: query
        schema:
          type: integer
      - name: page_size
        in: query
        schema:
          type: integer
      responses:
        '200':
          description: A list of groups.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /issuer/groups/search:
    post:
      operationId: searchGroups
      tags:
      - Groups
      summary: Search for groups
      description: Searches Groups by name and other attributes with pagination.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                page:
                  type: integer
                page_size:
                  type: integer
      responses:
        '200':
          description: Matching groups.
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    GroupEnvelope:
      type: object
      properties:
        group:
          $ref: '#/components/schemas/Group'
    Group:
      allOf:
      - $ref: '#/components/schemas/GroupInput'
      - type: object
        properties:
          id:
            type: integer
            description: The unique group ID.
    Error:
      type: object
      properties:
        error:
          type: string
          description: A human-readable error message.
        errors:
          type: array
          items:
            type: string
    GroupInput:
      type: object
      properties:
        name:
          type: string
          description: The internal name of the group.
        course_name:
          type: string
          description: The course/achievement name shown to recipients.
        course_description:
          type: string
          description: The course/achievement description.
        design_id:
          type: integer
          description: The Design used to render credentials in this group.
        language:
          type: string
          description: The language code for the group.
  responses:
    Unauthorized:
      description: Invalid or missing API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  parameters:
    GroupId:
      name: group_id
      in: path
      required: true
      description: The unique ID of the group.
      schema:
        type: integer
  securitySchemes:
    tokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: API key sent in the Authorization header using the scheme `Token token=YOUR_API_KEY`.