University of Wisconsin-Madison Members API

The members API from University of Wisconsin-Madison — 2 operation(s) for members.

Operations 2

GET /members/{id} Get a group member. #
GET /members/{id}/groups Get a member's groups. #

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-person-api-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-mock-person-api-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-mock-person-api-certificates-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-hr-api-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-mock-hr-api-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-manifest-api-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-mock-manifest-api-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-enterprise-billing-api-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/json-schema/university-of-wisconsin-madison-course-search-api-schema.json

Other Resources

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/university-of-wisconsin-madison-members-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 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 Specification

university-of-wisconsin-madison-members-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: University Of Wisconsin Madison Members API
  version: 1.0.0
  contact:
    name: DoIT Enterprise Integration API Team
    email: api@doit.wisc.edu
  description: 'Operations tagged members across 2 of this provider''s published API definitions: university-of-wisconsin-madison-manifest-api-openapi.yml, university-of-wisconsin-madison-mock-manifest-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.wisc.edu/manifest
- url: https://mock.api.wisc.edu/manifest
security:
- OAuth2ClientCredentials: []
tags:
- name: members
paths:
  /members/{id}:
    get:
      description: Get a group member.
      summary: Get a group member.
      operationId: get_member
      tags:
      - members
      parameters:
      - name: id
        description: ID of a member.
        in: path
        example: f8c6bf65-1992-4017-b7de-ee3b9f1f0abc
        required: true
        schema:
          type: string
          description: Manifest ID for the person/member.
      responses:
        '200':
          description: A single member
          content:
            application/vnd.api+json:
              schema:
                type: object
                required:
                - data
                - links
                properties:
                  data:
                    description: Manifest group member.
                    type: object
                    required:
                    - type
                    - id
                    - attributes
                    - links
                    properties:
                      type:
                        type: string
                        example: members
                      id:
                        type: string
                        description: Manifest ID for the person/member.
                      attributes:
                        type: object
                        required:
                        - name
                        properties:
                          name:
                            description: Name of the group member.
                            type: string
                            example: John Doe
                          netId:
                            description: Net ID of the group member.
                            type: string
                            example: jdoe
                          emailAddress:
                            description: Email address of the group member.
                            type: string
                            example: jdoe@wisc.edu
                      links:
                        description: The link to access a resource itself
                        type: object
                        properties:
                          self:
                            type: string
                            example: https://api.wisc.edu/link/to/self
                  links:
                    description: The link to access a resource itself
                    type: object
                    properties:
                      self:
                        type: string
                        example: https://api.wisc.edu/link/to/self
              examples:
                example-member:
                  value:
                    data:
                      attributes:
                        name: John Doe
                        netId: jdoe
                        emailAddress: jdoe@wisc.edu
                      id: 26b8827a-f050-4558-baea-0fffa88fcde0
                      links:
                        self: https://api.wisc.edu/manifest/members/26b8827a-f050-4558-baea-0fffa88fcde0
                      type: members
                    links:
                      self: https://api.wisc.edu/manifest/members/26b8827a-f050-4558-baea-0fffa88fcde0
        '400':
          description: A bad request.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                application/vnd.api+json:
                  value:
                    errors:
                    - id: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                      links: {}
                      meta: {}
                      source: {}
                      status: 400
                      title: Bad Request
                      detail: Bad request.
        '401':
          description: Incorrect or expired OAuth token.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                unauthorized-response:
                  value:
                    errors:
                    - status: 401
                      title: Unauthorized
                      detail: Invalid OAuth authentication - InvalidAccessToken
        '403':
          description: The API call is authenticated but the client isn't allowed to perform the requested operation.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                no-access-example:
                  value:
                    errors:
                    - status: 403
                      title: Forbidden
                      detail: Requested method is forbidden for endpoint.
        '404':
          description: Unable to find the specified record
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                not-found-example:
                  value:
                    errors:
                    - status: 404
                      title: Not Found
                      detail: Requested resource not found.
        '406':
          description: Servers respond with a 406 Not Acceptable status code if a request’s Accept header contains the JSON:API media type and all instances of that media type are modified with media type parameters.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                not-acceptable-example:
                  value:
                    errors:
                    - status: 406
                      title: Not Acceptable
                      detail: Request's Accept header contained the JSON:API media type and all instances of that media type were modified with media type parameters.
        '429':
          description: The API quota has been exceeded.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                too-many-requests-example:
                  value:
                    errors:
                    - status: 429
                      title: Too Many Requests
                      detail: The quota has been exceeded.
        '500':
          description: An unexpected error.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                internal-server-error-example:
                  value:
                    errors:
                    - status: 500
                      title: Internal Server Error
                      detail: Something went wrong in the server-side.
    servers:
    - url: https://api.wisc.edu/manifest
  /members/{id}/groups:
    get:
      description: Get the groups a member belongs to.
      summary: Get a member's groups.
      operationId: get_member_groups
      tags:
      - members
      parameters:
      - name: id
        description: ID of a member.
        in: path
        example: f8c6bf65-1992-4017-b7de-ee3b9f1f0abc
        required: true
        schema:
          type: string
          description: Manifest ID for the person/member.
      - name: page[number]
        description: The page number to retrieve. Defaults to 1.
        in: query
        required: false
        example: 1
        schema:
          type: integer
          minimum: 1
          default: 1
      - name: page[size]
        description: The number of results per page. Defaults to the maximum page size. Must not exceed the configured maximum (default 100).
        in: query
        required: false
        example: 10
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 100
      responses:
        '200':
          description: The groups for a member
          content:
            application/vnd.api+json:
              schema:
                type: object
                required:
                - data
                - links
                properties:
                  data:
                    description: A collection of groups
                    type: array
                    items:
                      description: Manifest group.
                      type: object
                      required:
                      - type
                      - id
                      - attributes
                      - links
                      properties:
                        type:
                          type: string
                          example: groups
                        id:
                          type: string
                          description: ID of the Manifest group.
                        attributes:
                          type: object
                          required:
                          - path
                          properties:
                            path:
                              description: Group name.
                              type: string
                              example: uw:org:my:group:name
                            description:
                              description: Group description.
                              type: string
                              example: A sample group
                        links:
                          description: The link to access a resource itself
                          type: object
                          properties:
                            self:
                              type: string
                              example: https://api.wisc.edu/link/to/self
                  links:
                    description: Pagination links for a paginated collection.
                    type: object
                    required:
                    - self
                    properties:
                      self:
                        type: string
                        description: Link to the current page.
                        example: https://api.wisc.edu/manifest/groups/uw:org:my:group/members?page%5Bnumber%5D=2&page%5Bsize%5D=10
                      next:
                        type: string
                        description: Link to the next page. Only present when there are more results.
                        example: https://api.wisc.edu/manifest/groups/uw:org:my:group/members?page%5Bnumber%5D=3&page%5Bsize%5D=10
                      prev:
                        type: string
                        description: Link to the previous page. Only present when the current page is greater than 1.
                        example: https://api.wisc.edu/manifest/groups/uw:org:my:group/members?page%5Bnumber%5D=1&page%5Bsize%5D=10
              examples:
                example-member-groups:
                  value:
                    data:
                    - attributes:
                        path: uw:org:my:group
                        description: A sample group
                      id: uw:org:my:group
                      links:
                        self: https://api.wisc.edu/manifest/groups/uw:org:my:group
                      type: groups
                    links:
                      self: https://api.wisc.edu/manifest/members/26b8827a-f050-4558-baea-0fffa88fcde0/groups?page%5Bnumber%5D=1&page%5Bsize%5D=10
                      next: https://api.wisc.edu/manifest/members/26b8827a-f050-4558-baea-0fffa88fcde0/groups?page%5Bnumber%5D=2&page%5Bsize%5D=10
        '400':
          description: A bad request.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                application/vnd.api+json:
                  value:
                    errors:
                    - id: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                      links: {}
                      meta: {}
                      source: {}
                      status: 400
                      title: Bad Request
                      detail: Bad request.
        '401':
          description: Incorrect or expired OAuth token.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                unauthorized-response:
                  value:
                    errors:
                    - status: 401
                      title: Unauthorized
                      detail: Invalid OAuth authentication - InvalidAccessToken
        '403':
          description: The API call is authenticated but the client isn't allowed to perform the requested operation.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                no-access-example:
                  value:
                    errors:
                    - status: 403
                      title: Forbidden
                      detail: Requested method is forbidden for endpoint.
        '404':
          description: Unable to find the specified record
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                not-found-example:
                  value:
                    errors:
                    - status: 404
                      title: Not Found
                      detail: Requested resource not found.
        '406':
          description: Servers respond with a 406 Not Acceptable status code if a request’s Accept header contains the JSON:API media type and all instances of that media type are modified with media type parameters.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                not-acceptable-example:
                  value:
                    errors:
                    - status: 406
                      title: Not Acceptable
                      detail: Request's Accept header contained the JSON:API media type and all instances of that media type were modified with media type parameters.
        '429':
          description: The API quota has been exceeded.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                too-many-requests-example:
                  value:
                    errors:
                    - status: 429
                      title: Too Many Requests
                      detail: The quota has been exceeded.
        '500':
          description: An unexpected error.
          content:
            application/vnd.api+json:
              schema:
                description: A JSON:API error response body containing one or more errors.
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      description: An error
                      type: object
                      properties:
                        id:
                          type:
                          - string
                          - 'null'
                          example: 0fd247d9-a93c-4b48-bde8-247ce352ebcb
                        status:
                          type: integer
                          example: 400
                        title:
                          type: string
                          example: Error title
                        detail:
                          type: string
                          example: Additional details about the error
                        links:
                          type: object
                        meta:
                          type: object
                        source:
                          type: object
              examples:
                internal-server-error-example:
                  value:
                    errors:
                    - status: 500
                      title: Internal Server Error
                      detail: Something went wrong in the server-side.
    servers:
    - url: https://api.wisc.edu/manifest
components:
  securitySchemes:
    OAuth2ClientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.wisc.edu/oauth/token
          scopes: {}
externalDocs:
  description: Read more about JSON:API here
  url: https://jsonapi.org/
x-refined-from:
- university-of-wisconsin-madison-manifest-api-openapi.yml
- university-of-wisconsin-madison-mock-manifest-api-openapi.yml
x-operator: institution
x-provenance:
  generated: '2026-08-19'
  method: probed
  source: https://public.enroll.wisc.edu/api/search/v1
  note: 'Reverse-described from live unauthenticated responses. Not a UW-Madison publication and must never be counted as one. Probes: GET /terms (200, 499 bytes, 2 terms), GET /aggregate (200, 127,065 bytes), POST / (200, term 1266 "computer science" -> found=226; term 1272 -> found=932).'