Create a new title
POST /api/configuration/titles
- Products: Operator (
FOH) - Features: Front of House Generic Access (
FOHGENERIC)
Overview
Creates a title (Mr, Mrs, Dr etc) for use on member profile and registration forms. Titles are tenant-wide reference data, not per-site.
Each title is bound to exactly one gender, so a tenant that offers the same word for more than one gender needs a separate title for each — the pairing is what member forms filter on.
A successful call returns 201 with an empty body. The identifier is not returned. If you let the system generate the id for you by omitting it, the only way to discover the value is to list the titles afterwards and look for the new one. Supply your own id if you need to know it up front.
The call is not idempotent in the useful sense. Supplying an id that already exists returns 409 rather than overwriting, so a retry is safe. Omitting id is not safe to retry: each attempt generates a fresh TITL… identifier, so a retry after a timeout leaves you with two near-identical titles.
Endpoint
POST {base_url}/api/configuration/titles
{base_url} is the environment URL issued to your integration. See Authenticating with Gladstone APIs.
Request body
| Field | Type | Required | Description |
|---|---|---|---|
id | string | No | The title code, unique within your tenant, and the value member records refer to. Maximum 15 characters. Omit it and the system allocates the next free code with a TITL prefix — but the generated code is not returned, so supply your own if you need to know it. Supplied codes are compared case-insensitively and saved upper-cased. A code already in use returns 409 with The titleId {id} already exists. |
description | string | Yes | The title as it appears on forms, for example Mr. It may not be empty. Validation allows up to 255 characters, but only 25 can be saved — anything longer passes validation and then fails with 500 rather than 400. Treat 25 characters as the real limit. |
genderId | integer (int32) | Yes | The gender this title belongs to, taken from Get all gender options. A value between 0 and 255. It must match an existing gender or the call fails with 400 and The genderId {value} does not exist; genders are fixed reference data and are not created for you. |
Sample request
curl -X POST '{base_url}/api/configuration/titles' \
-H 'Authorization: Bearer {accessToken}' \
-H 'X-Use-SSO: true' \
-H 'Content-Type: application/json' \
-d '{
"id": "string",
"description": "string",
"genderId": 12345
}'Errors
| Status | Meaning | When |
|---|---|---|
400 | Bad request | description is empty or longer than 255 characters, or id is longer than 15 characters. The body is a validation error object keyed by field name. |
400 | Bad request | genderId does not match any configured gender — The genderId {value} does not exist. |
409 | Conflict | A title already exists with the id you supplied — The titleId {id} already exists. |
409 | Conflict | The entry clashes with one that already exists — This entry already exists in the database. |
500 | Internal server error | Any other failure, including a description longer than 25 characters. The body is empty. |