openapi: 3.2.0 info: description: The Contacts and Professionals APIs enable apps to manage reference contacts and licensed professionals. title: Professionals Contacts API version: v4 servers: - url: https://apis.accela.com/ tags: - name: Contacts description: A reference contact captures information about people or organizations involved in a business process. paths: /v4/contacts: get: description: 'Gets all contacts available in the system. **API Endpoint**: GET /v4/contacts **Scope**: contacts **App Type**: All **Authorization Type**: Access token **Civic Platform version**: 7.3.2' summary: Get All Contacts operationId: v4.get.contacts tags: - Contacts parameters: - $ref: '#/components/parameters/authHeaderParam' - description: Filter by contact's address state. in: query name: state required: false schema: type: string - description: Filter by contact's address country. in: query name: country required: false schema: type: string - description: Filter by contact's first name. in: query name: firstName required: false schema: type: string - description: Filter by contact's middle name. in: query name: middleName required: false schema: type: string - description: Filter by contact's last name. in: query name: lastName required: false schema: type: string - description: Filter by contact's email address. in: query name: email required: false schema: type: string - description: Filter by contact's first line of address. in: query name: addressLine1 required: false schema: type: string - description: Filter by contact's second line of address. in: query name: addressLine2 required: false schema: type: string - description: Filter by contact's third line of address. in: query name: addressLine3 required: false schema: type: string - description: Filter by contact's business name. in: query name: businessName required: false schema: type: string - description: Filter by contact's address city. in: query name: city required: false schema: type: string - description: Filter by contact's title. in: query name: title required: false schema: type: string - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/limit' - $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_contactModelArray' '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 new reference contacts. **API Endpoint**: POST /v4/contacts **Scope**: contacts **App Type**: All **Authorization Type**: Access token **Civic Platform version**: 7.3.2' summary: Create Contacts operationId: v4.post.contacts tags: - Contacts parameters: - $ref: '#/components/parameters/authHeaderParam' - $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: application/json: schema: items: $ref: '#/components/schemas/contactModel' type: array description: Reference contact information to add. required: true /v4/contacts/{ids}: get: description: 'Gets information for requested reference contacts. **API Endpoint**: GET /v4/contacts/{ids} **Scope**: contacts **App Type**: All **Authorization Type**: Access token **Civic Platform version**: 7.3.2' summary: Get Contacts operationId: v4.get.contacts.ids tags: - Contacts parameters: - $ref: '#/components/parameters/authHeaderParam' - description: Comma-delimited IDs of reference contacts to fetch. in: path name: ids required: true schema: type: string - $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_contactModelArray' '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. delete: description: 'Deletes contacts. **API Endpoint**: DELETE /v4/contacts/{ids} **Scope**: contacts **App Type**: All **Authorization Type**: Access token **Civic Platform version**: 7.3.2' summary: Delete Contacts operationId: v4.delete.contacts.ids tags: - Contacts parameters: - $ref: '#/components/parameters/authHeaderParam' - description: Comma-delimited IDs of contacts to delete. in: path name: ids 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. /v4/contacts/{id}: put: description: 'Updates contact information. **API Endpoint**: PUT /v4/contacts/{id} **Scope**: contacts **App Type**: Agency **Authorization Type**: Access token **Civic Platform version**: 7.3.2' summary: Update Contact operationId: v4.put.contacts.id tags: - Contacts parameters: - $ref: '#/components/parameters/authHeaderParam' - $ref: '#/components/parameters/idContactString' - $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_contactModel' '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: $ref: '#/components/schemas/request_contactModel' description: The contact information to be updated required: true components: schemas: response_contactModel: type: object properties: result: $ref: '#/components/schemas/request_contactModel' status: type: integer description: The HTTP return status. response_resultModelArray: type: object properties: result: items: $ref: '#/components/schemas/resultModel' type: array status: type: integer description: The HTTP return status. contactModel: type: object properties: address: $ref: '#/components/schemas/compactAddressModel' birthCity: type: object description: The city of birth for an individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string birthDate: description: The birth date. format: date-time type: string birthRegion: type: object description: The country of birth or region of birth for an individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string birthState: type: object description: The state of birth for an individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string businessName: description: A secondary business name for the applicable individual. type: string comment: description: A comment about the inspection contact. type: string deceasedDate: description: The deceased date. format: date-time type: string driverLicenseNumber: description: The driver's license number of the contact. This field is active only when the Contact Type selected is Individual. type: string driverLicenseState: type: object description: The state that issued the driver's license. properties: text: description: The localized display value. type: string value: description: The data value. type: string email: description: The contact's email address. type: string endDate: description: The date when the contact address ceases to be active. format: date-time type: string fax: description: The fax number for the contact. type: string faxCountryCode: description: Fax Number Country Code type: string federalEmployerId: description: The Federal Employer Identification Number. It is used to identify a business for tax purposes. type: string firstName: description: The contact's first name. type: string fullName: description: 'The contact''s full name. ' type: string gender: type: object description: The gender (male or female) of the individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string id: description: The contact system id assigned by the Civic Platform server. type: string individualOrOrganization: description: The organization to which the contact belongs. This field is only active when the Contact Type selected is Organization. type: string lastName: description: The last name (surname). type: string middleName: description: "The middle name.\t" type: string organizationName: description: The organization to which the contact belongs. This field is only active when the Contact Type selected is Organization. type: string passportNumber: description: The contact's passport number. This field is only active when the Contact Type selected is Individual. type: string phone1: description: The primary telephone number of the contact. type: string phone1CountryCode: description: Phone Number 1 Country Code type: string phone2: description: The secondary telephone number of the contact. type: string phone2CountryCode: description: Phone Number 2 Country Code type: string phone3: description: The tertiary telephone number for the contact. type: string phone3CountryCode: description: Phone Number 3 Country Code type: string postOfficeBox: description: The post office box number. type: string preferredChannel: type: object description: The method by which the contact prefers to be notified, by phone for example. See [Get All Contact Preferred Channels](./api-settings.html#operation/v4.get.settings.contacts.preferredChannels). properties: text: description: The localized display value. type: string value: description: The data value. type: string race: type: object description: The contact's race or ethnicity. See [Get All Contact Races](./api-settings.html#operation/v4.get.settings.contacts.races). properties: text: description: The localized display value. type: string value: description: The data value. type: string relation: type: object description: The contact's relationship to the application or service request. properties: text: description: The localized display value. type: string value: description: The data value. type: string salutation: type: object description: The salutation to be used when addressing the contact; for example Mr. oar Ms. This field is active only when Contact Type = Individual. See [Get All Contact Salutations](./api-settings.html#operation/v4.get.settings.contacts.salutations). properties: text: description: The localized display value. type: string value: description: The data value. type: string serviceProviderCode: description: The unique agency identifier. type: string socialSecurityNumber: description: The individual's social security number. This field is only active when the Contact Type selected is Individual. type: string stateIdNumber: description: The contact's state ID number. This field is only active when the Contact Type selected is Individual. type: string status: type: object description: The contact status. properties: text: description: The localized display value. type: string value: description: The data value. type: string suffix: description: The contact name suffix. type: string title: description: The individual's business title. type: string tradeName: description: The contact's preferred business or trade name. This field is active only when the Contact Type selected is Organization. type: string type: type: object description: The contact type. See [Get All Contact Types](./api-settings.html#operation/v4.get.settings.contacts.types). properties: text: description: The localized display value. type: string value: description: The data value. type: string response_contactModelArray: type: object properties: result: items: $ref: '#/components/schemas/contactModel' type: array status: type: integer description: The HTTP return status. 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 compactAddressModel: type: object properties: addressLine1: description: The first line of the address. type: string addressLine2: description: The second line of the address. type: string addressLine3: description: The third line of the address. type: string city: description: The name of the city. type: string country: type: object description: The name of the country. properties: text: description: The localized display value. type: string value: description: The data value. type: string postalCode: description: The postal ZIP code for the address. type: string state: type: object description: The address state. properties: text: description: The localized display value. type: string value: description: The data value. type: string request_contactModel: type: object properties: address: $ref: '#/components/schemas/compactAddressModel' birthCity: type: object description: The city of birth for an individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string birthDate: description: The birth date. format: date-time type: string birthRegion: type: object description: The country of birth or region of birth for an individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string birthState: type: object description: The state of birth for an individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string businessName: description: A secondary business name for the applicable individual. type: string comment: description: A comment about the inspection contact. type: string deceasedDate: description: The deceased date. format: date-time type: string driverLicenseNumber: description: The driver's license number of the contact. This field is active only when the Contact Type selected is Individual. type: string driverLicenseState: type: object description: The state that issued the driver's license. properties: text: description: The localized display value. type: string value: description: The data value. type: string email: description: The contact's email address. type: string fax: description: The fax number for the contact. type: string faxCountryCode: description: Fax Number Country Code type: string federalEmployerId: description: The Federal Employer Identification Number. It is used to identify a business for tax purposes. type: string firstName: description: The contact's first name. type: string fullName: description: 'The contact''s full name. ' type: string gender: type: object description: The gender (male or female) of the individual. properties: text: description: The localized display value. type: string value: description: The data value. type: string id: description: The contact system id assigned by the Civic Platform server. type: string individualOrOrganization: description: The organization to which the contact belongs. This field is only active when the Contact Type selected is Organization. type: string lastName: description: The last name (surname). type: string middleName: description: "The middle name.\t" type: string organizationName: description: The organization to which the contact belongs. This field is only active when the Contact Type selected is Organization. type: string passportNumber: description: The contact's passport number. This field is only active when the Contact Type selected is Individual. type: string phone1: description: The primary telephone number of the contact. type: string phone1CountryCode: description: Phone Number 1 Country Code type: string phone2: description: The secondary telephone number of the contact. type: string phone2CountryCode: description: Phone Number 2 Country Code type: string phone3: description: The tertiary telephone number for the contact. type: string phone3CountryCode: description: Phone Number 3 Country Code type: string postOfficeBox: description: The post office box number. type: string preferredChannel: type: object description: The method by which the contact prefers to be notified, by phone for example. See [Get All Contact Preferred Channels](./api-settings.html#operation/v4.get.settings.contacts.preferredChannels). properties: text: description: The localized display value. type: string value: description: The data value. type: string race: type: object description: The contact's race or ethnicity. See [Get All Contact Races](./api-settings.html#operation/v4.get.settings.contacts.races). properties: text: description: The localized display value. type: string value: description: The data value. type: string relation: type: object description: The contact's relationship to the application or service request. properties: text: description: The localized display value. type: string value: description: The data value. type: string salutation: type: object description: The salutation to be used when addressing the contact; for example Mr. oar Ms. This field is active only when Contact Type = Individual. See [Get All Contact Salutations](./api-settings.html#operation/v4.get.settings.contacts.salutations). properties: text: description: The localized display value. type: string value: description: The data value. type: string serviceProviderCode: description: The unique agency identifier. type: string socialSecurityNumber: description: The individual's social security number. This field is only active when the Contact Type selected is Individual. type: string stateIdNumber: description: The contact's state ID number. This field is only active when the Contact Type selected is Individual. type: string status: type: object description: The contact status. properties: text: description: The localized display value. type: string value: description: The data value. type: string suffix: description: The contact name suffix. type: string title: description: The individual's business title. type: string tradeName: description: The contact's preferred business or trade name. This field is active only when the Contact Type selected is Organization. type: string type: type: object description: The contact type. See [Get All Contact Types](./api-settings.html#operation/v4.get.settings.contacts.types). properties: text: description: The localized display value. type: string value: description: The data value. type: string parameters: 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 offset: description: The offset position of the first record in the results response array. For example, if offset is 100, the first item in the results array in the response is the 100th record in the search result list. in: query name: offset required: false schema: type: integer format: int64 lang: description: Language parameter to support I18N. Default language is en_US. in: query name: lang required: false schema: type: string idContactString: description: The ID of the contact to fetch. in: path name: id required: true schema: type: string limit: description: Search result size limit. in: query name: limit required: false schema: type: integer format: int64 enum: - range[1,1000] x-api-evangelist-provenance: generated: '2026-09-06' method: searched source: https://developer.accela.com/api/v4/v4-contacts-professionals.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.