API CodeGroups

See API Specification

A codegroup is used in Benefit Frequencies. For more information, see Code Groups and Frequency Limitations.

Anyone using the API should also become very familiar with our schema documentation which contains important details about individual database table columns.
See CodeGroup Database Schema.

CodeGroups GET (single)

Version Added: 25.3.10

Gets a single codegroup.

CodeGroupNum: Required in URL.

Example Request:
GET /codegroups/9

Example Response:
{
"CodeGroupNum": 9,
"GroupName": "SRP",
"ProcCodes": "D4341,D4342",
"ItemOrder": 6,
"CodeGroupFixed": "SRP",
"IsHidden": "false",
"ShowInAgeLimit": "false",
"ShowInFrequency": "true",
"ShowInOther": "false",
"ShowInHistory": "true",
"HistProcCode": "D4341",
"IsPerioFourQuads": "true"
}

200 OK
404 NotFound (with explanation)

CodeGroups GET (multiple)

Version Added: 23.2.62

Gets a list of codegroups.

Parameters: All optional. For all of the following parameters, omit the parameter to return all codegroups where the value is either "true" or "false".

IsHidden: (Added in version 26.2.19) Either "true" or "false". Default no filter.
ShowInAgeLimit: (Added in version 26.2.19) Either "true" or "false". Default no filter.
ShowInFrequency: (Added in version 26.2.19) Either "true" or "false". Default no filter.
ShowInOther: (Added in version 26.2.19) Either "true" or "false". Default no filter.
ShowInHistory: (Added in version 26.2.19) Either "true" or "false". Default no filter.

Example Requests:
GET /codegroups
GET /codegroups?IsHidden=false&ShowInHistory=true

Example Response:
[
{
"CodeGroupNum": 1,
"GroupName": "Fluoride",
"ProcCodes": "D1206",
"ItemOrder": 0,
"CodeGroupFixed": "Fluoride",
"IsHidden": "false",
"ShowInAgeLimit": "true",
"ShowInFrequency": "true",
"ShowInOther": "true",
"ShowInHistory": "false",
"HistProcCode": "",
"IsPerioFourQuads": "false"
},
{
"CodeGroupNum": 2,
"GroupName": "Sealant",
"ProcCodes": "D1351",
"ItemOrder": 1,
"CodeGroupFixed": "Sealant",
"IsHidden": "false",
"ShowInAgeLimit": "true",
"ShowInFrequency": "true",
"ShowInOther": "false",
"ShowInHistory": "false",
"HistProcCode": "",
"IsPerioFourQuads": "false"
},
etc...
]

200 OK
400 BadRequest (with explanation)

CodeGroups POST (create)

Version Added: 24.1.29

Creates a codegroup.

GroupName: Required. Name of the codegroup.

ProcCodes: Optional. Comma delimited list of procedure codes.
CodeGroupFixed: Optional. Either "None", "BW", "PanoFMX", "Exam", "Perio", "Prophy", "SRP", "FMDebride", "Fluoride", or "Sealant". Default "None".
IsHidden: Optional. Either "true" or "false". If "true", this codegroup will be hidden. Cannot be set "true" if ShowInAgeLimit, ShowInFrequency, ShowInOther, or ShowInHistory are "true". Default "false".
ShowInAgeLimit: Optional. Either "true" or "false". If "true", this codegroup will show in Age Limitations grid in the Edit Benefits window. Default "false".
ShowInFrequency: (Added in version 25.3.10) Optional. Either "true" or "false". If "true", this codegroup will show in the Frequency Limitations grid in the Edit Benefits window. Default "false".
ShowInOther: (Added in version 25.3.10) Optional. Either "true" or "false". If "true", this codegroup will show in the Other Benefits grid in the Edit Benefits window. Default "false".
ShowInHistory: (Added in version 26.2.19) Optional. Either "true" or "false". If "true", this codegroup will be used for the InsuranceHistory feature. For more information, see API ProcedureLogs. Default "false".
HistProcCode: (Added in version 26.2.19) Required when ShowInHistory is "true". Otherwise, not allowed. FK to procedurecode.ProcCode. The ProcCode specified for this field must also be in ProcCodes. Default empty string.
IsPerioFourQuads: (Added in version 26.2.19) Optional. Either "true" or "false". Only one codegroup may have this set to "true". When "true", this codegroup represents SRP codes. When ShowInHistory is "true" alongside this field, the 4 quadrants will be exposed individually for the InsuranceHistory feature. Default "false".

Example Request:
POST /codegroups

{
"GroupName": "SRP",
"ProcCodes": "D4341,D4342",
"CodeGroupFixed": "SRP",
"IsHidden": "false",
"ShowInAgeLimit": "true",
"ShowInHistory": "true",
"HistProcCode": "D4341",
"IsPerioFourQuads": "true"
}

Example Response:
{
"CodeGroupNum": 23,
"GroupName": "SRP",
"ProcCodes": "D4341,D4342",
"ItemOrder": 1,
"CodeGroupFixed": "SRP",
"IsHidden": "false",
"ShowInAgeLimit": "true",
"ShowInFrequency": "false",
"ShowInOther": "false",
"ShowInHistory": "true",
"HistProcCode": "D4341",
"IsPerioFourQuads": "true"
}

201 Created
400 BadRequest (with explanation)
404 NotFound (with explanation)

CodeGroups PUT (update)

Version Added: 24.1.29

Updates a codegroup. All fields are optional except as noted.

CodeGroupNum: Required in the URL.

GroupName: Name of the codegroup.
ItemOrder: (Added in version 26.2.19) Numeric order of the codegroup. 0-indexed.
ProcCodes: Comma delimited list of procedure codes. Overwrites existing value.
CodeGroupFixed: Either "None", "BW", "PanoFMX", "Exam", "Perio", "Prophy", "SRP", "FMDebride", "Fluoride", or "Sealant".
IsHidden: Either "true" or "false". If "true", this codegroup will be hidden. Hiding a codegroup will automatically set ShowInAgeLimit, ShowInFrequency, ShowInOther, and ShowInHistory to "false", along with clearing HistProcCode when populated.
ShowInAgeLimit: Either "true" or "false". If "true", this codegroup will show in the Age Limitations grid in the Edit Benefits window.
ShowInFrequency: (Added in version 25.3.10) Either "true" or "false". If "true", this codegroup will show in the Frequency Limitations grid in the Edit Benefits window.
ShowInOther: (Added in version 25.3.10) Either "true" or "false". If "true", this codegroup will show in the Other Benefits grid in the Edit Benefits window.
ShowInHistory: (Added in version 26.2.19) Either "true" or "false". If "true", this codegroup will be used for the InsuranceHistory feature. For more information, see API ProcedureLogs.
HistProcCode: (Added in version 26.2.19) Required when ShowInHistory is "true". Otherwise, not allowed. FK to procedurecode.ProcCode. The ProcCode specified for this field must also be in ProcCodes.
IsPerioFourQuads: (Added in version 26.2.19) Either "true" or "false". Only one codegroup may have this set to "true". When "true", this codegroup represents SRP codes. When ShowInHistory is "true" alongside this field, the 4 quadrants will be exposed individually for the InsuranceHistory feature.

Example Request:
PUT /codegroups/23

{
"IsHidden": "true",
"ShowInAgeLimit": "false"
}

Example Response:
{
"CodeGroupNum": 23,
"GroupName": "Perio Maintenance",
"ProcCodes": "D4910",
"ItemOrder": 9,
"CodeGroupFixed": "Perio",
"IsHidden": "true",
"ShowInAgeLimit": "false",
"ShowInFrequency": "false",
"ShowInOther": "false",
"ShowInHistory": "false",
"HistProcCode": "",
"IsPerioFourQuads": "false"
}

200 OK
400 BadRequest (with explanation)
404 NotFound (with explanation)

CodeGroups DELETE

Version Added: 26.2.19

Deletes an existing codegroup by CodeGroupNum. Codegroups cannot be deleted if they are attached to a benefit.

CodeGroupNum: Required in the URL.

Example Request:
DELETE /codegroups/44

Example Response:
200 OK
400 BadRequest (with explanation)
404 NotFound (with explanation)