National Archives and Records Administration Accounts API

The Accounts API from National Archives and Records Administration — 4 operation(s) for accounts.

Operations 4

GET /users/userId/{userId} Get public account data by account id directly from the database #
GET /users/userName/{userName} Get public account data by account id directly from the database #
GET /users Get public account data directly from the database #
PUT /users/lastViewedNotificationsAt/:userId Update the timestamp of the last time the user viewed their notifications #

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/national-archives-and-records-administration-accounts-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

national-archives-and-records-administration-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: NextGen Catalog Accounts API
  version: 0.2.0
  description: This is the NextGen Catalog API application made with Express and documented with Swagger.
servers:
- url: https://catalog.archives.gov/api/v2/
tags:
- name: Accounts
paths:
  /users/userId/{userId}:
    get:
      summary: Get public account data by account id directly from the database
      description: Get public account data by account id directly from the database. Returns a JSON result.
      tags:
      - Accounts
      responses:
        '200':
          description: A body of response data containing public account data from the database if any were found.
        '422':
          description: Unprocessable Entity.
      operationId: getUsersUserIdByUserId
      x-operation-id-source: derived
  /users/userName/{userName}:
    get:
      summary: Get public account data by account id directly from the database
      description: Get public account data by account id directly from the database. Returns a JSON result.
      tags:
      - Accounts
      responses:
        '200':
          description: A body of response data containing public account data from the database if any were found.
        '422':
          description: Unprocessable Entity.
      operationId: getUsersUserNameByUserName
      x-operation-id-source: derived
  /users:
    get:
      summary: Get public account data directly from the database
      description: Provide any combination of the parameters below to return all users that match this criteria. Use asterisks for wildcards. Values are NOT case sensitive.
      x-role: public
      tags:
      - Accounts
      parameters:
      - in: query
        name: userId
        schema:
          type: string
        description: User id of the user account.
        example: 55555555-5555-5555-5555-555555555555
      - in: query
        name: email
        schema:
          type: string
        description: Email address of the user account.
        example: johndoe@example.com
      - in: query
        name: userName
        schema:
          type: string
        description: Username of the user account.
        example: johndoe1
      - in: query
        name: fullName
        schema:
          type: string
        description: Full name of the user account.
        example: John Doe
      - in: query
        name: role
        schema:
          type: string
        description: Role of the user account.
        example: contributor
      - in: query
        name: status
        schema:
          type: string
          enum:
          - active
          - deactivated
        description: Status of the user account.
        example: active
      - in: query
        name: limit
        schema:
          type: integer
        description: Number of records to be returned on a page. Defaults to 5.
        example: 100
      - in: query
        name: page
        schema:
          type: integer
        description: Page number of records to display. Defaults to 1.
        example: 2
      - in: query
        name: sortCol
        schema:
          type: string
        description: Column name to sort the results by. Optional.
        example: userName
      - in: query
        name: sortOrder
        schema:
          type: string
          enum:
          - asc
          - desc
        description: Sort order, ascending or descending. Defaults to "asc" if not specified.
        example: asc
      responses:
        '200':
          description: A body of response data containing user records from the database that match search criteria.
          content:
            application/json:
              schema:
                type: object
                properties:
                  criteria:
                    type: object
                  metadata:
                    type: object
                    properties:
                      totalCount:
                        type: integer
                        description: The total number of users.
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/User'
        '400':
          description: Invalid query parameters.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  error:
                    type: array
                    items:
                      type: string
        '500':
          description: Error retrieving data.
      operationId: getUsers
      x-operation-id-source: derived
  /users/lastViewedNotificationsAt/:userId:
    put:
      summary: Update the timestamp of the last time the user viewed their notifications
      description: Update the timestamp of the last time the user viewed their notifications, by userId, to the current time.
      tags:
      - Accounts
      parameters:
      - in: path
        name: userId
        schema:
          type: string
        required: true
        description: userId of the user who's lastViewedNotificationsAt is being updated.
        example: 55555555-5555-5555-5555-555555555555
      - in: body
        name: lastViewedNotificationsAt
        schema:
          type: string
        required: false
        description: Optional timestamp to update lastViewedNotificationsAt with.
        example: '2016-1-17T16:27:05.000Z'
      responses:
        '200':
          description: A sucess response.
        '422':
          description: Unprocessable Entity.
      operationId: putUsersLastViewedNotificationsAt:userId
      x-operation-id-source: derived