University of Wisconsin-Madison Worktags API

The Worktags API from University of Wisconsin-Madison — 31 operation(s) for worktags.

Operations 31

GET /activities
GET /activities/{id}
GET /awardLines
GET /awardLines/{id}
GET /companies
GET /companies/{id}
GET /costCenters
GET /costCenters/{id}
GET /functions
GET /functions/{id}
GET /funds
GET /funds/{id}
GET /gifts
GET /gifts/{id}
GET /grants
GET /grants/{id}
GET /hierarchies
GET /hierarchies/{id}
GET /ledgerAccounts
GET /ledgerAccounts/{id}
GET /programs
GET /programs/{id}
GET /projects
GET /projects/{id}
GET /revenueCategories
GET /revenueCategories/{id}
GET /spendCategories
GET /spendCategories/{id}
GET /taxCodes
GET /taxCodes/{id}
POST /validateFdm

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-worktags-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-worktags-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: finance-apis@doit.wisc.edu
    name: DoIT Enterprise Business Systems (EBS) Integrated Business Solutions (IBS) API Team
  description: 'An API for accessing and validating UW financial data.

    ## Getting Started

    For information on how to create an application on the portal and request access to the API, please visit the [Getting Started page](https://financeapis.wisc.edu/getting-started/) on our website.

    ## Endpoints, Filtering, Inclusions, and Sourcing

    Information on how to use the filter query parameter and include related resources, individual endpoints, and how we source our data can be found on the [Documentation page](https://financeapis.wisc.edu/documentation/) of our website.

    ## Help/Support

    If you need assistance in using the Finance API, have questions about the data, need to report a bug, or would like to suggest features/improvements, please fill out the form on the [Contact Us page](https://financeapis.wisc.edu/contact-us/) of our website or email us at [finance-apis@doit.wisc.edu](mailto:finance-apis@doit.wisc.edu).'
  title: Finance Worktags API
  version: 2026-02-18
servers:
- description: Production
  url: https://api.wisc.edu/finance
security:
- OAuth2ClientCredentials: []
tags:
- name: Worktags
paths:
  /activities:
    get:
      description: Retrieves a paginated listing of all activities.
      parameters:
      - description: The datetime that the record was last changed in the Finance API's database.
        in: query
        name: filter[lastModified]
        required: false
        schema:
          format: datetime
          type: string
      - description: Page offset of records included in the response
        in: query
        name: page[number]
        required: false
        schema:
          minimum: 1
          type: integer
      - description: Number of records included in the response
        in: query
        name: page[size]
        required: false
        schema:
          maximum: 1000
          minimum: 1
          type: integer
      responses:
        '200':
          content:
            application/vnd.api+json:
              example:
                data:
                - attributes:
                    active: true
                    company: UWRVF
                    name: AC000001 UWRVF | BIOL 341 and 342 - Anatomy and Physiology I and II
                  id: AC000001
                  links:
                    self: https://api.wisc.edu/finance/activities/AC000001
                  meta:
                    lastModified: 2026-06-15 13:11:13
                  type: activities
                links:
                  first: https://api.wisc.edu/finance/activities?page[number]=1
                  last: https://api.wisc.edu/finance/activities?page[number]=99
                  next: https://api.wisc.edu/finance/activities/page[number]=2
                  prev: https://api.wisc.edu/finance/activities?page[number]=1
                  self: https://api.wisc.edu/finance/activities
                meta:
                  pageNumber: 1
                  pageSize: 100
                  totalCount: 1234
                  totalPages: 13
              schema:
                oneOf:
                - properties:
                    data:
                      description: A collection of activities.
                      items:
                        description: A single activity record.
                        properties:
                          attributes:
                            properties:
                              active:
                                description: Whether the activity is currently active or not.
                                example: true
                                type:
                                - boolean
                                - 'null'
                              company:
                                description: Company this activity belongs to.
                                example: UWRVF
                                type: string
                              name:
                                description: Name of the activity.
                                example: AC000001 UWRVF | BIOL 341 and 342 - Anatomy and Physiology I and II
                                type: string
                            type: object
                          id:
                            description: The unique identifier for an activity record.
                            example: AC000001
                            type: string
                          links:
                            description: Links related to this record
                            properties:
                              self:
                                example: https://api.wisc.edu/finance/activities/AC000001
                                type: string
                            type: object
                          meta:
                            properties:
                              lastModified:
                                description: Date/time of the last time this worktag was updated in the product database in ISO format.
                                example: 2026-06-15 13:11:13
                                type:
                                - string
                                - 'null'
                            type: object
                          type:
                            example: activities
                            type: string
                        type: object
                      type: array
                    links:
                      properties:
                        first:
                          description: A link to the first page of results
                          example: https://api.wisc.edu/finance/activities?page[number]=1
                          type: string
                        last:
                          description: A link to the last page of results
                          example: https://api.wisc.edu/finance/activities?page[number]=99
                          type: string
                        next:
                          description: A link to the next page of results, if there is one
                          example: https://api.wisc.edu/finance/activities/page[number]=2
                          type:
                          - string
                          - 'null'
                        prev:
                          description: A link to the previous page of results, if there is one
                          example: https://api.wisc.edu/finance/activities?page[number]=1
                          type:
                          - string
                          - 'null'
                        self:
                          description: The link that generated this response
                          example: https://api.wisc.edu/finance/activities
                          type: string
                      type: object
                    meta:
                      properties:
                        pageNumber:
                          description: Page number requested.
                          example: 1
                          format: int64
                          type: integer
                        pageSize:
                          description: Number of items on each page.
                          example: 100
                          format: int64
                          type: integer
                        totalCount:
                          description: Total number of items across all pages.
                          example: 1234
                          format: int64
                          type: integer
                        totalPages:
                          description: Total number of pages given pageSize.
                          example: 13
                          format: int64
                          type: integer
                      type: object
                  type: object
                - properties:
                    attributes:
                      properties:
                        url:
                          description: Presigned URL to download the data from S3. The URL is valid for 15 minutes.
                          example: https://example.com/link
                          type: string
                      type: object
                    id:
                      description: The unique identifier for an presigned link.
                      example: 670ac856-91ef-47ee-8f1d-b79d4f656a10
                      type: string
                    type:
                      enum:
                      - bulkDelivery
                      example: bulkDelivery
                      type: string
                  type: object
          description: An API response with a collection of activities, pagination, and metadata
        '400':
          content:
            application/vnd.api+json:
              examples:
                invalid-filter-parameters-not-filterable:
                  description: 'Error raised when filtering on valid attributes that cannot be filtered on, such as attributes that are containers for nested objects.

                    '
                  value:
                    errors:
                    - detail: Attribute 'lines' cannot be filtered on for internalServiceDeliveries.
                      status: 400
                      title: Bad Request
                invalid-filter-parameters-not-found:
                  description: Error raised when filtering on non-existent attributes.
                  value:
                    errors:
                    - detail: Attribute 'foo' does not exist on internalServiceProviders.
                      status: 400
                      title: Bad Request
                invalid-pagination-parameters-bad-value:
                  description: 'Error raised when providing pagination parameters outside the allowed range or in an invalid datatype/format.

                    '
                  value:
                    errors:
                    - detail: 'Invalid pagination parameter: ''size'' must be a positive integer between 1 and 1000 (got: '''').'
                      status: 400
                      title: Bad Request
                invalid-pagination-parameters-not-found:
                  description: Error raised when providing non-existent pagination parameters.
                  value:
                    errors:
                    - detail: 'Invalid pagination parameter: ''num'' does not exist.'
                      status: 400
                      title: Bad Request
                invalid-query-parameters:
                  description: 'Error raised when using invalid query parameters, such as malformed filter parameters on valid attributes.

                    '
                  value:
                    errors:
                    - detail: 'Invalid parameter: ''filter[id''.'
                      status: 400
                      title: Bad Request
                unsupported-parameters:
                  description: Error raised when attempting to use query parameters that an endpoint does not support.
                  value:
                    errors:
                    - detail: 'The following query parameters are not supported/recongized for this endpoint: include, page.'
                      status: 400
                      title: Bad Request
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: A bad request.
        '401':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Invalid or expired OAuth token.
                  status: 401
                  title: Unauthorized
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Invalid or expired OAuth token.
        '403':
          content:
            application/vnd.api+json:
              examples:
                invalid-company-access:
                  description: Error raised when your application has misconfigured company access.
                  value:
                    errors:
                    - detail: Your application has no allowed companies set. Contact the Finance API team (finance-apis@doit.wisc.edu) to resolve this.
                      status: 403
                      title: Forbidden
                no-company-access:
                  description: Error raised when attempting to query data belonging to companies you not have access to.
                  value:
                    errors:
                    - detail: You don't have access to company 'XYZ'.
                      status: 403
                      title: Forbidden
                no-permission:
                  description: Error raised when your application does not have permission to use an endpoint.
                  value:
                    errors:
                    - detail: You don't have access to this endpoint.
                      status: 403
                      title: Forbidden
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: You requested information for which you don't have the proper authorization.
        '404':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Requested record could not be found.
                  status: 404
                  title: Not Found
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Requested record could not be found.
        '415':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Expected media type 'application/vnd.api+json'.
                  status: 415
                  title: Unsupported Media Type
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Invalid media type in contentType header.
        '429':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Quota exceeded.
                  status: 429
                  title: Too Many Requests
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Quota exceeded.
        '503':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Dependent service unavailable.
                  status: 503
                  title: Service Unavailable
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Finance API is unavailable.
      tags:
      - Worktags
  /activities/{id}:
    get:
      description: Retrieves a single activity by its ID.
      parameters:
      - description: An activity ID passed in as a URL parameter.
        in: path
        name: id
        required: true
        schema:
          description: The unique identifier for an activity record.
          example: AC000001
          type: string
      responses:
        '200':
          content:
            application/vnd.api+json:
              example:
                data:
                  attributes:
                    active: true
                    company: UWRVF
                    name: AC000001 UWRVF | BIOL 341 and 342 - Anatomy and Physiology I and II
                  id: AC000001
                  links:
                    self: https://api.wisc.edu/finance/activities/AC000001
                  meta:
                    lastModified: 2026-06-15 13:11:13
                  type: activities
                links:
                  self: https://api.wisc.edu/finance/activities/AC000001
              schema:
                properties:
                  data:
                    description: A single activity record.
                    properties:
                      attributes:
                        properties:
                          active:
                            description: Whether the activity is currently active or not.
                            example: true
                            type:
                            - boolean
                            - 'null'
                          company:
                            description: Company this activity belongs to.
                            example: UWRVF
                            type: string
                          name:
                            description: Name of the activity.
                            example: AC000001 UWRVF | BIOL 341 and 342 - Anatomy and Physiology I and II
                            type: string
                        type: object
                      id:
                        description: The unique identifier for an activity record.
                        example: AC000001
                        type: string
                      links:
                        description: Links related to this record
                        properties:
                          self:
                            example: https://api.wisc.edu/finance/activities/AC000001
                            type: string
                        type: object
                      meta:
                        properties:
                          lastModified:
                            description: Date/time of the last time this worktag was updated in the product database in ISO format.
                            example: 2026-06-15 13:11:13
                            type:
                            - string
                            - 'null'
                        type: object
                      type:
                        example: activities
                        type: string
                    type: object
                  links:
                    description: Links related to this record
                    properties:
                      self:
                        example: https://api.wisc.edu/finance/activities/AC000001
                        type: string
                    type: object
                type: object
          description: An API response with a collection of activities, pagination, and metadata
        '400':
          content:
            application/vnd.api+json:
              examples:
                invalid-filter-parameters-not-filterable:
                  description: 'Error raised when filtering on valid attributes that cannot be filtered on, such as attributes that are containers for nested objects.

                    '
                  value:
                    errors:
                    - detail: Attribute 'lines' cannot be filtered on for internalServiceDeliveries.
                      status: 400
                      title: Bad Request
                invalid-filter-parameters-not-found:
                  description: Error raised when filtering on non-existent attributes.
                  value:
                    errors:
                    - detail: Attribute 'foo' does not exist on internalServiceProviders.
                      status: 400
                      title: Bad Request
                invalid-pagination-parameters-bad-value:
                  description: 'Error raised when providing pagination parameters outside the allowed range or in an invalid datatype/format.

                    '
                  value:
                    errors:
                    - detail: 'Invalid pagination parameter: ''size'' must be a positive integer between 1 and 1000 (got: '''').'
                      status: 400
                      title: Bad Request
                invalid-pagination-parameters-not-found:
                  description: Error raised when providing non-existent pagination parameters.
                  value:
                    errors:
                    - detail: 'Invalid pagination parameter: ''num'' does not exist.'
                      status: 400
                      title: Bad Request
                invalid-query-parameters:
                  description: 'Error raised when using invalid query parameters, such as malformed filter parameters on valid attributes.

                    '
                  value:
                    errors:
                    - detail: 'Invalid parameter: ''filter[id''.'
                      status: 400
                      title: Bad Request
                unsupported-parameters:
                  description: Error raised when attempting to use query parameters that an endpoint does not support.
                  value:
                    errors:
                    - detail: 'The following query parameters are not supported/recongized for this endpoint: include, page.'
                      status: 400
                      title: Bad Request
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: A bad request.
        '401':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Invalid or expired OAuth token.
                  status: 401
                  title: Unauthorized
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Invalid or expired OAuth token.
        '403':
          content:
            application/vnd.api+json:
              examples:
                invalid-company-access:
                  description: Error raised when your application has misconfigured company access.
                  value:
                    errors:
                    - detail: Your application has no allowed companies set. Contact the Finance API team (finance-apis@doit.wisc.edu) to resolve this.
                      status: 403
                      title: Forbidden
                no-company-access:
                  description: Error raised when attempting to query data belonging to companies you not have access to.
                  value:
                    errors:
                    - detail: You don't have access to company 'XYZ'.
                      status: 403
                      title: Forbidden
                no-permission:
                  description: Error raised when your application does not have permission to use an endpoint.
                  value:
                    errors:
                    - detail: You don't have access to this endpoint.
                      status: 403
                      title: Forbidden
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: You requested information for which you don't have the proper authorization.
        '404':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Requested record could not be found.
                  status: 404
                  title: Not Found
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Requested record could not be found.
        '415':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Expected media type 'application/vnd.api+json'.
                  status: 415
                  title: Unsupported Media Type
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Invalid media type in contentType header.
        '429':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Quota exceeded.
                  status: 429
                  title: Too Many Requests
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Quota exceeded.
        '503':
          content:
            application/vnd.api+json:
              example:
                errors:
                - detail: Dependent service unavailable.
                  status: 503
                  title: Service Unavailable
              schema:
                properties:
                  errors:
                    items:
                      description: An error
                      properties:
                        detail:
                          type: string
                        status:
                          type: number
                        title:
                          type: string
                    type: array
                type: object
          description: Finance API is unavailable.
      tags:
      - Worktags
  /awardLines:
    get:
      description: Retrieves a paginated listing of all award lines from the accounting system
      parameters:
      - description: The datetime that the record was last changed in the Finance API's database.
        in: query
        name: filter[lastModified]
        required: false
        schema:
          format: datetime
          type: string
      - description: Page offset of records included in the response
        in: query
        name: page[number]
        required: false
        schema:
          minimum: 1
          type: integer
      - description: Number of records included in the response
        in: query
        name: page[size]
        required: false
        schema:
          maximum: 1000
          minimum: 1
          type: integer
      - in: query
        name: filter[awardId]
        required: false
        schema:
          type: string
      - in: query
        name: filter[name]
        required: false
        schema:
          type: string
      - in: query
        name: filter[grantId]
        required: false
        schema:
          type: string
      - in: query
        name: filter[fromDate]
        required: false
        schema:
          format: date
          type: string
      - in: query
        name: filter[toDate]
        required: false
        schema:
          format: date
          type: string
      - in: query
        name: filter[costCenterId]
        required: false
        schema:
          type: string
      - in: query
        name: filter[revenueCategoryId]
        schema:
          type: string
      - in: query
        name: filter[fundId]
        schema:
          type: string
      - in: query
        name: filter[functionId]
        schema:
          type: string
      responses:
        '200':
          content:
            application/vnd.api+json:
              example:
                data:
                - attributes:
                    allocationProfileId: UWMSN_Federal
                    allocationProfileName: UWMSN - Federal
                    awardId: AWARD_CONTRACT-6-9854
                    basisType: Modified Total Direct Costs
                    billingScheduleId: BILLING_SCHEDULE-6-11038
                    costCenterId: CC002851
                    costRateTypeId: UWMSN_MTDC_On_Campus_Research
                    costRateTypeName: On Campus Research
                    currentAmount: 155500
                    facilitiesAdminRate: 0.555
                    fromDate: 2024-04-01
                    functionId: FN0400
                    fundId: FD0144
                    grantId: GRTEST00002
                    lifecycleStatus: Open
                    name: AWD-900001 RC00037 - Federal Grants & Contracts (Sponsored Research) (Line 1)
                    rateAgreementId: UWMSN_MTDC_Federal_Rate_Agreement
                    rateAgreementName: UWMSN - MTDC - Federal Rate Agreement (04/01/2022)
                    revenueCategoryId: RC0

# --- truncated at 32 KB (510 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/university-of-wisconsin-madison/refs/heads/main/openapi/university-of-wisconsin-madison-worktags-api-openapi.yml