Accela Inspections/Checklists/Checklist Items/Custom Forms API

The Inspections/Checklists/Checklist Items/Custom Forms API from Accela — 3 operation(s) for inspections/checklists/checklist items/custom forms.

Operations 4

GET /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms Get All Custom Forms for Checklist Item #
PUT /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms Update Custom Forms for Checklist Item #
GET /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms/meta Get All Custom Forms Metadata for Checklist Item #
GET /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms/{formId}/meta Get Custom Form Metadata for Checklist Item #

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-inspections-checklists-checklist-items-custom-forms-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-inspections-checklists-checklist-items-custom-forms-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Use the Inspections API to manage inspection records during their complete lifecycle from application submittal to permit issuance or license issuance. Your agency may need to complete inspections on new property developments, homes, or complaints.
  title: Inspections/Checklists/Checklist Items/Custom Forms API
  version: v4
servers:
- url: https://apis.accela.com/
tags:
- name: Inspections/Checklists/Checklist Items/Custom Forms
paths:
  /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms:
    get:
      description: 'Returns an array of custom forms associated with the specified record contact. Each custom form consists of custom field name-and-value pairs.


        **API Endpoint**: GET /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms


        **Scope**: inspections


        **App Type**: Agency


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Get All Custom Forms for Checklist Item
      operationId: v4.get.inspections.id.checklists.checklistId.checklistItems.checklistItemId.customForms
      tags:
      - Inspections/Checklists/Checklist Items/Custom Forms
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/idInspection'
      - $ref: '#/components/parameters/checklistId'
      - $ref: '#/components/parameters/checklistItemId'
      - $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_customAttributeModelArray'
        '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.
    put:
      description: 'Updates custom forms for the requested checklist item.


        **API Endpoint**: PUT /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms


        **Scope**: inspections


        **App Type**: Agency


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Update Custom Forms for Checklist Item
      operationId: v4.put.inspections.id.checklists.checklistId.checklistItems.checklistItemId.customForms
      tags:
      - Inspections/Checklists/Checklist Items/Custom Forms
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/idInspection'
      - $ref: '#/components/parameters/checklistId'
      - $ref: '#/components/parameters/checklistItemId'
      - $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_customAttributeModelArray'
        '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:
          application/json:
            schema:
              items:
                $ref: '#/components/schemas/customAttributeModel'
              type: array
        description: Custom forms to be updated.
        required: true
  /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms/meta:
    get:
      description: 'Gets the custom forms metadata for the specified inspection checklist item.


        **API Endpoint**: GET /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms/meta


        **Scope**: inspections


        **App Type**: Agency


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Get All Custom Forms Metadata for Checklist Item
      operationId: v4.get.inspections.id.checklists.checklistId.checklistItems.checklistItemId.customForms.meta
      tags:
      - Inspections/Checklists/Checklist Items/Custom Forms
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/idInspection'
      - $ref: '#/components/parameters/checklistId'
      - $ref: '#/components/parameters/checklistItemId'
      - $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_customFormMetadataModelArray'
        '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/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms/{formId}/meta:
    get:
      description: 'Gets the custom form metadata for the specified inspection checklist item.


        **API Endpoint**: GET /v4/inspections/{id}/checklists/{checklistId}/checklistItems/{checklistItemId}/customForms/{formId}/meta


        **Scope**: inspections


        **App Type**: Agency


        **Authorization Type**: Access token


        **Civic Platform version**: 7.3.2'
      summary: Get Custom Form Metadata for Checklist Item
      operationId: v4.get.inspections.id.checklists.checklistId.checklistItems.checklistItemId.customForms.formId.meta
      tags:
      - Inspections/Checklists/Checklist Items/Custom Forms
      parameters:
      - $ref: '#/components/parameters/authHeaderParam'
      - $ref: '#/components/parameters/idInspection'
      - $ref: '#/components/parameters/checklistId'
      - $ref: '#/components/parameters/checklistItemId'
      - description: The ID of the custom form to fetch.
        in: path
        name: formId
        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_customFormMetadataModelArray'
        '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
    idInspection:
      description: The ID of the inspection to fetch. See [Get All Inspections](./api-inspections.html#operation/v4.get.inspections), [Search Inspections](./api-search.html#operation/v4.post.search.inspections).
      in: path
      name: id
      required: true
      schema:
        type: integer
        format: int64
    checklistItemId:
      description: The ID of the inspection checklist item to fetch. See [Get All Checklist Items for Checklist](./api-inspections.html#operation/v4.get.inspections.inspectionId.checklists.checklistId.checklistItems).
      in: path
      name: checklistItemId
      required: true
      schema:
        type: integer
        format: int64
    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
    checklistId:
      description: The ID of the inspection checklist to fetch. See [Get All Inspection Checklists](./api-settings.html#operation/v4.get.settings.inspections.checklists), [Get All Checklists for Inspection](./api-inspections.html#operation/v4.get.inspections.inspectionId.checklists).
      in: path
      name: checklistId
      required: true
      schema:
        type: integer
        format: int64
    authHeaderParam:
      description: Construct oAuth2 authentication token
      in: header
      name: Authorization
      required: true
      schema:
        type: string
  schemas:
    childDrill:
      type: object
      properties:
        drillId:
          description: The ID of the drilldown child record.
          format: int64
          type: integer
        id:
          description: The ID of the current record.
          type: string
    customFormField:
      type: object
      properties:
        displayOrder:
          description: ''
          format: int64
          type: integer
        drillDown:
          $ref: '#/components/schemas/aSITableDrill'
        fieldType:
          description: The custom field data type.
          type: string
        id:
          description: The custom field system id assigned by the Civic Platform server.
          type: string
        isReadonly:
          description: Indicates whether or not the custom field is read-only.
          enum:
          - Y
          - N
          type: string
        isRequired:
          description: Indicates whether or not the custom field is required.
          enum:
          - Y
          - N
          type: string
        maxLength:
          description: The custom field length
          format: int64
          type: integer
        options:
          items:
            type: object
            description: Contains dropdown option values.
            properties:
              text:
                description: The localized display value.
                type: string
              value:
                description: The data value.
                type: string
          type: array
        text:
          description: The custom field localized text.
          type: string
        value:
          description: The custom field stored value.
          type: string
    response_customAttributeModelArray:
      type: object
      properties:
        result:
          items:
            $ref: '#/components/schemas/customAttributeModel'
          type: array
        status:
          type: integer
          description: The HTTP return status.
    customFormMetadataModel:
      description: Contains the metadata for a custom table.
      type: object
      properties:
        displayOrder:
          description: The custom table's display order.
          format: int64
          type: integer
        fields:
          items:
            $ref: '#/components/schemas/customFormField'
          type: array
        id:
          description: The custom table id.
          type: string
        text:
          description: The custom table name.
          type: string
    customAttributeModel:
      description: 'A custom field name and value pair. For example in JSON, "My Custom Field": "My Custom Value". The custom field name and its data type are defined in Civic Platform custom forms or custom tables: <br/>**For a Text field**, the maximum length is 256.  <br/>**For a Number field**, any numeric form is allowed, including negative numbers.  <br/>**For a Date field**, the format is MM/dd/yyyy.  <br/>**For a Time field**, the format is hh:mm.  <br/>**For a TextArea field**, the maximum length is 4000 characters, and allows line return characters.  <br/>**For a DropdownList field**, the dropdown list values are in the options[] array.  <br/>**For a CheckBox field**, the (case-sensitive) valid values are "UNCHECKED" and "CHECKED".  <br/>**For a Radio(Y/N) field**, the (case-sensitive) valid values are "Yes" and "No".'
      type: object
      properties:
        <aCustomFieldName>:
          type: string
        <aCustomFieldValue>:
          type: string
    response_customFormMetadataModelArray:
      type: object
      properties:
        result:
          items:
            $ref: '#/components/schemas/customFormMetadataModel'
          type: array
        status:
          type: integer
          description: The HTTP return status.
    aSITableDrill:
      description: Contains drilldown field information.
      type: object
      properties:
        children:
          items:
            $ref: '#/components/schemas/childDrill'
          type: array
        isRoot:
          type: boolean
x-api-evangelist-provenance:
  generated: '2026-09-06'
  method: searched
  source: https://developer.accela.com/api/v4/v4-inspections.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.