Accela Records/Documents API

The Records/Documents API from Accela — 3 operation(s) for records/documents.

Operations 4

GET /v4/records/{recordId}/documentCategories Get All Document Categories for Record #
GET /v4/records/{recordId}/documents Get All Documents for Record #
POST /v4/records/{recordId}/documents Create Record Documents #
DELETE /v4/records/{recordId}/documents/{documentIds} Delete Record Documents #

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/accela-records-documents-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

accela-records-documents-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Accela API for transactional records and related record resources
  title: Records/Documents API
  version: v4
servers:
- url: https://apis.accela.com/
tags:
- name: Records/Documents
paths:
  /v4/records/{recordId}/documentCategories:
    get:
      description: 'Gets the document types associated with the specified record.


        **API Endpoint**: GET /v4/records/{recordId}/documentCategories


        **Scope**: records


        **App Type**: All


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Get All Document Categories for Record
      operationId: v4.get.records.recordId.documentCategories
      tags:
      - Records/Documents
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/recordId'
      - $ref: '#/components/parameters/lang'
      responses:
        '200':
          description: 'Successful request. Note: A successful request may return no data matching the filter criteria. A successful request may also return messages related to Event Manager Scripting Engine back-end processing.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/response_documentTypeModelArray'
        '400':
          description: Invalid request.
        '401':
          description: Authorization failed.
        '403':
          description: Forbidden request.
        '404':
          description: Requested resource not found.
        '500':
          description: Internal server error or bad connection.
  /v4/records/{recordId}/documents:
    get:
      description: 'Gets the documents associated with the specified record.


        **API Endpoint**: GET /v4/records/{recordId}/documents


        **Scope**: records


        **App Type**: All


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Get All Documents for Record
      operationId: v4.get.records.recordId.documents
      tags:
      - Records/Documents
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/recordId'
      - $ref: '#/components/parameters/fields'
      - $ref: '#/components/parameters/lang'
      responses:
        '200':
          description: 'Successful request. Note: A successful request may return no data matching the filter criteria. A successful request may also return messages related to Event Manager Scripting Engine back-end processing.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/response_documentModelArray'
        '400':
          description: Invalid request.
        '401':
          description: Authorization failed.
        '403':
          description: Forbidden request.
        '404':
          description: Requested resource not found.
        '500':
          description: Internal server error or bad connection.
    post:
      description: 'Creates one or more document attachments for the specified record. To specify the documents to be attached, use the HTTP header "Content-Type:multipart/form-data" and form-data for "uploadedFile" and "fileInfo". Note that the "fileInfo" is a string containing an array of file attributes. Use "fileInfo" to specify one or more documents to be attached. See the example for details.


        **API Endpoint**: POST /v4/records/{recordId}/documents


        **Scope**: records


        **App Type**: All


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Create Record Documents
      operationId: v4.post.records.recordId.documents
      tags:
      - Records/Documents
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/recordId'
      - description: The document group
        in: query
        name: group
        required: false
        schema:
          type: string
      - description: The document category
        in: query
        name: category
        required: false
        schema:
          type: string
      - description: The EDMS Adapter User ID. It's required for user level authentication
        in: query
        name: userId
        required: false
        schema:
          type: string
      - description: The EMDS Adapter password. It's required for user level authentication
        in: query
        name: password
        required: false
        schema:
          type: string
      - $ref: '#/components/parameters/lang'
      responses:
        '200':
          description: 'Successful request. Note: A successful request may return no data matching the filter criteria. A successful request may also return messages related to Event Manager Scripting Engine back-end processing.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/response_resultModelArray'
        '400':
          description: Invalid request.
        '401':
          description: Authorization failed.
        '403':
          description: Forbidden request.
        '404':
          description: Requested resource not found.
        '500':
          description: Internal server error or bad connection.
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                uploadedFile:
                  type: string
                  description: Specify the filename parameter with the file to be uploaded. See example for details.
                  format: binary
                fileInfo:
                  type: string
                  description: A string array containing the file metadata for each specified filename. See example for details.
              required:
              - uploadedFile
              - fileInfo
  /v4/records/{recordId}/documents/{documentIds}:
    delete:
      description: 'Deletes documents attached to a record.


        **API Endpoint**: DELETE /v4/records/{recordId}/documents/{documentIds}


        **Scope**: records


        **App Type**: All


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Delete Record Documents
      operationId: v4.delete.records.recordId.documents.documentIds
      tags:
      - Records/Documents
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/recordId'
      - description: Comma-delimited IDs of the documents to be deleted.
        in: path
        name: documentIds
        required: true
        schema:
          type: string
      - description: The EDMS Adapter User ID. It's required for user level authentication
        in: query
        name: userId
        required: true
        schema:
          type: string
      - description: The EMDS Adapter password. It's required for user level authentication
        in: query
        name: password
        required: true
        schema:
          type: string
      - $ref: '#/components/parameters/lang'
      responses:
        '200':
          description: 'Successful request. Note: A successful request may return no data matching the filter criteria. A successful request may also return messages related to Event Manager Scripting Engine back-end processing.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/response_resultModelArray'
        '400':
          description: Invalid request.
        '401':
          description: Authorization failed.
        '403':
          description: Forbidden request.
        '404':
          description: Requested resource not found.
        '500':
          description: Internal server error or bad connection.
components:
  parameters:
    lang:
      description: Language parameter to support I18N. Default language is en_US.
      in: query
      name: lang
      required: false
      schema:
        type: string
    recordId:
      description: The ID of the record to fetch. See [Get All Records](./api-records.html#operation/v4.get.records), [Search Records](./api-search.html#operation/v4.post.search.records), or [Get My Records](./api-records.html#operation/v4.get.records.mine).
      in: path
      name: recordId
      required: true
      schema:
        type: string
    fields:
      description: Comma-delimited names of fields to be returned in the response. Note - Field names are case-sensitive and only first-level fields are supported. Invalid field names are ignored.
      in: query
      name: fields
      required: false
      schema:
        type: string
    authHeaderParam:
      description: Construct oAuth2 authentication token
      in: header
      name: Authorization
      required: true
      schema:
        type: string
  schemas:
    response_resultModelArray:
      type: object
      properties:
        result:
          items:
            $ref: '#/components/schemas/resultModel'
          type: array
        status:
          type: integer
          description: The HTTP return status.
    response_documentTypeModelArray:
      type: object
      properties:
        result:
          items:
            $ref: '#/components/schemas/documentTypeModel'
          type: array
        status:
          type: integer
          description: The HTTP return status.
    response_documentModelArray:
      type: object
      properties:
        result:
          items:
            $ref: '#/components/schemas/documentModel'
          type: array
        status:
          type: integer
          description: The HTTP return status.
    documentTypeModel:
      type: object
      properties:
        deletable:
          description: Indicates whether or not the record can be deleted.
          type: boolean
        downloadable:
          description: Indicates whether or not the document type can be downloaded.
          type: boolean
        group:
          type: object
          description: "The document group for the document category.\t"
          properties:
            text:
              description: The localized display value.
              type: string
            value:
              description: The data value.
              type: string
        id:
          description: The document category system id assigned by the Civic Platform server.
          type: string
        text:
          description: The localized display text.
          type: string
        uploadable:
          description: Indicates whether or not you can upload documents of the specified category.
          type: boolean
        value:
          description: The document category value.
          type: string
        viewable:
          description: Indicates whether or not you can view the document category associated with the record.
          type: boolean
    documentModel:
      type: object
      properties:
        category:
          type: object
          description: The document category. The list of category options varies depending on the document group.
          properties:
            text:
              description: The localized display value.
              type: string
            value:
              description: The data value.
              type: string
        deletable:
          description: Contains permission assignments for deleting documents.
          $ref: '#/components/schemas/userRolePrivilegeModel'
        department:
          description: The name of the department the document belongs to.
          type: string
        description:
          description: The document description.
          type: string
        downloadable:
          description: Contains permission assignments for downloading documents.
          $ref: '#/components/schemas/userRolePrivilegeModel'
        entityId:
          description: The unique ID of the entity or record.
          type: string
        entityType:
          description: The type of entity.
          type: string
        fileName:
          description: The name of the file as it displays in the source location.
          type: string
        group:
          type: object
          description: The document group.
          properties:
            text:
              description: The localized display value.
              type: string
            value:
              description: The data value.
              type: string
        id:
          description: The document id.
          format: int64
          type: integer
        modifiedBy:
          description: The user account that last modified the document.
          type: string
        modifiedDate:
          description: The date the document was last modified.
          format: date-time
          type: string
        serviceProviderCode:
          description: The unique agency identifier.
          type: string
        size:
          description: The file size of the document.
          format: double
          type: number
        source:
          description: The name for your agency's electronic document management system.
          type: string
        status:
          type: object
          description: The documet status.
          properties:
            text:
              description: The localized display value.
              type: string
            value:
              description: The data value.
              type: string
        statusDate:
          description: The date when the current status changed.
          format: date-time
          type: string
        titleViewable:
          description: Contains permission assignments for viewing document names.
          $ref: '#/components/schemas/userRolePrivilegeModel'
        type:
          description: The document type.
          type: string
        uploadedBy:
          description: The user who uploaded the document to the record.
          type: string
        uploadedDate:
          description: The date when the document was uploaded.
          format: date-time
          type: string
        virtualFolders:
          description: This is the virtual folder for storing the attachment. With virtual folders you can organize uploaded attachments in groups
          type: string
    resultModel:
      type: object
      properties:
        code:
          description: The error code, if an error is encountered.
          type: string
        id:
          description: The system id of the object in this operation.
          format: int64
          type: integer
        isSuccess:
          description: Indicates whether or not the operation on the object is successful.
          type: boolean
        message:
          description: The error message, if an error is encountered
          type: string
    userRolePrivilegeModel:
      type: object
      properties:
        contactAllowed:
          description: Indicates whether or not the permission is given to a contact.
          type: boolean
        deleteAllowed:
          description: "Indicates whether or not the permission to delete a document is allowed.\t"
          type: boolean
        downloadAllowed:
          description: Indicates whether or not the permission to download a document is allowed.
          type: boolean
        licenseTypeRules:
          items:
            type: string
            description: "A string array containing the types of licensed professionals who are given the permission.\t"
          type: array
        licensendProfessionalAllowed:
          description: Indicates whether or not the permission is given to a licensed professional.
          type: boolean
        ownerAllowed:
          description: Indicates whether or not the permission is given to an owner.
          type: boolean
        recordCreatorAllowed:
          description: Indicates whether or not the permission is given to a record creator.
          type: boolean
        registeredUserAllowed:
          description: Indicates whether or not the permission is given to a registered public user.
          type: boolean
        titleViewAllowed:
          description: Indicates whether or not the permission to view a document name is allowed.
          type: boolean
        uploadAllowed:
          description: Indicates whether or not the permission to upload a document is allowed.
          type: boolean
x-api-evangelist-provenance:
  generated: '2026-09-06'
  method: searched
  source: https://developer.accela.com/api/v4/v4-records.json
  note: Harvested verbatim from the Accela Developer Portal API Reference, which renders these Swagger 2.0 documents via ReDoc (spec-url on developer.accela.com/docs/api_reference/api-*.html). The byte-identical original is kept at openapi/_original/. This copy is the same document serialized to YAML.