openapi: 3.2.0
info:
description: Accela API for transactional records and related record resources
title: Records/Addresses/Custom Forms API
version: v4
servers:
- url: https://apis.accela.com/
tags:
- name: Records/Addresses/Custom Forms
paths:
/v4/records/{recordId}/addresses/{addressId}/customForms:
get:
summary: Get Record Address Custom Forms
description: 'Returns an array of custom form data associated with a given record address.
**API Endpoint**: GET /v4/records/{recordId}/addresses/{addressId}/customForms
**Scope**: records
**App Type**: All
**Authorization Type**: Access token
**Civic Platform version**: 9.2.0'
operationId: v4.get.records.recordId.addresses.addressId.customForms
tags:
- Records/Addresses/Custom Forms
parameters:
- description: Construct oAuth2 authentication token
in: header
name: Authorization
required: true
schema:
type: string
- description: The ID of the record to be fetched
in: path
name: recordId
required: true
schema:
type: string
- description: The ID of the address to be fetched
in: path
name: addressId
required: true
schema:
type: integer
format: int64
- description: Comma-delimited names of fields to be returned in the response. Note that field names are case-sensitive and only first-level fields are supported. Invalid field names are ignored.
in: query
name: fields
schema:
type: string
- description: Language parameter to support I18N. Default language is en_US
in: query
name: lang
required: false
schema:
type: string
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.
/v4/records/{recordId}/addresses/{addressId}/customForms/meta:
get:
summary: Get Record Address Custom Forms Metadata
description: 'Returns the field metadata for all custom forms associated with a given record address.
**API Endpoint**: GET /v4/records/{recordId}/addresses/{addressId}/customForms/meta
**Scope**: records
**App Type**: All
**Authorization Type**: Access token
**Civic Platform version**: 9.2.0'
tags:
- Records/Addresses/Custom Forms
operationId: v4.get.records.recordId.addresses.addressId.customForms.meta
parameters:
- description: Construct oAuth2 authentication token
in: header
name: Authorization
required: true
schema:
type: string
- description: ID of record to be fetched
in: path
name: recordId
required: true
schema:
type: string
- description: ID of record address to be fetched
in: path
name: addressId
required: true
schema:
type: integer
format: int64
- description: Comma-delimited names of fields to be returned in the response. Note that 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
- description: Language parameter to support I18N. Default language is en_US
in: query
name: lang
required: false
schema:
type: string
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_apo_customForms_metadata'
'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:
schemas:
apo_customForms_metadata:
description: "Contains metadata description of a custom form, including the custom fields metadata. \n\nAdded in Civic Platform version: 9.2.0"
type: object
properties:
name:
type: string
description: The name of the custom form
description:
type: string
description: Describes the usage or puporse of the custom form.
fields:
items:
$ref: '#/components/schemas/apo_customForms_metadata_fields'
type: array
description: Contains the field metadata.
id:
type: string
description: The unique string identifier of the custom form.
customFormType:
type: string
enum:
- address
- parcel
- owner
description: Indicates whether the custom form is for an address, parcel, or owner.
response_apo_customForms_metadata:
type: object
properties:
result:
items:
$ref: '#/components/schemas/apo_customForms_metadata'
type: array
status:
type: integer
description: The return status code.
apo_customForms_metadata_fields:
description: "Describes the metadata of a custom field. \n\nAdded in Civic Platform version: 9.2.0"
type: object
properties:
id:
type: integer
format: int64
description: The unique custom field id.
name:
type: string
description: The field name.
description:
type: string
description: Describes the usage or purpose of the custom field.
label:
type: object
description: The field label.
properties:
text:
description: The localized display value.
type: string
value:
description: The data value.
type: string
dataType:
type: string
enum:
- Number
- Text
- Date
- Radio
- DropdownList
description: The field data type. If the custom field is a DropdownList, the options[] array contains the list of possible values, or the sharedDropdownListName specifies the name of a shared dropdown list containing the possible values.
defaultValue:
type: string
description: Any default value for the custom field.
displayOrder:
format: int64
type: integer
description: The display order of the field on the custom form.
unit:
type: string
description: The unit of measure of a numeric custom field.
isRequired:
type: string
enum:
- Y
- N
description: Indicates whether or not the field is required.
isPublicVisible:
type: string
enum:
- Y
- N
description: Indicates whether or not a citizen user can see this field.
isRecordSearchable:
type: string
enum:
- Y
- N
description: Indicates whether or not the field is searchable.
maxLength:
format: int64
type: integer
description: The field maximum length.
options:
items:
type: object
description: A dropdown field value.
properties:
text:
description: The localized display value.
type: string
value:
description: The data value.
type: string
type: array
description: Contains possible field values, if the field is a dropdown field type.
sharedDropdownListName:
type: string
description: The name of the shared dropdown list, if the field is a dropdown field type.
customAttributeModel:
description: 'Contains a custom form consisting of the custom form id and custom field name and value pairs. 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:
**For a Text field**, the maximum length is 256.
**For a Number field**, any numeric form is allowed, including negative numbers.
**For a Date field**, the format is MM/dd/yyyy.
**For a Time field**, the format is hh:mm.
**For a TextArea field**, the maximum length is 4000 characters, and allows line return characters.
**For a DropdownList field**, the dropdown list values are in the options[] array.
**For a CheckBox field**, the (case-sensitive) valid values are "UNCHECKED" and "CHECKED".
**For a Radio(Y/N) field**, the (case-sensitive) valid values are "Yes" and "No".'
type: object
properties:
id:
description: The custom form id.
type: string
:
description: The name of a custom field.
type: string
:
description: The value of a custom field.
type: string
response_customAttributeModelArray:
type: object
properties:
result:
items:
$ref: '#/components/schemas/customAttributeModel'
type: array
status:
type: integer
description: The HTTP return status.
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.