Create a directory entry

posthttps://api.expiryedge.com/v1/createDirectoryEntry
editor or admin60/minAny method
Request
curl -X POST 'https://api.expiryedge.com/v1/createDirectoryEntry' \
  -H "Authorization: Bearer $EXPIRYEDGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Contoso Legal",
  "type": "Vendor",
  "email": "billing@contosolegal.example",
  "phone": "+15550198765",
  "address": "400 Market St, Springfield",
  "notes": "Outside counsel for licensing.",
  "typedFields": {
    "website": "https://contosolegal.example"
  },
  "customFields": [
    {
      "label": "Account number",
      "value": "CL-2231"
    }
  ]
}'
Response
{
  "message": "Directory entry created successfully.",
  "entry": {
    "id": "dir_6Hv3",
    "name": "Contoso Legal",
    "type": "Vendor",
    "customType": "",
    "phone": "+15550198765",
    "email": "billing@contosolegal.example",
    "address": "400 Market St, Springfield",
    "notes": "Outside counsel for licensing.",
    "typedFields": {
      "website": "https://contosolegal.example"
    },
    "customFields": [
      {
        "label": "Account number",
        "value": "CL-2231"
      }
    ],
    "organization_id": "org_northwind",
    "user_id": "u_71bXq",
    "createdAt": "2026-09-27T14:05:00.000Z",
    "updatedAt": "2026-09-27T14:05:00.000Z"
  }
}

name is required; type defaults to Person. customType is kept only when type is Other. customFields items without a label are dropped.

Body parameters

application/json
  • namestring
    Required on create.
  • typestring
    One of Person, Company, Vendor, Client, Partner, Asset, Property, Other. Defaults to Person.
  • customTypestring
    Custom type label; kept only when type is Other.
  • phonestring
  • emailstring
  • addressstring
  • notesstring
  • typedFieldsobject
    Type-specific fields as key -> value (e.g. website).
  • customFieldsarray of objects
    Free-form label/value pairs; items without a label are dropped.

Returns

201
Entry created.
  • messagestringrequired
  • entryobjectrequired
    A directory record (vendor, location, asset, person, ...) that expiries reference via directory_entry_ids.

Errors

400
The request is missing required fields or contains invalid values.
401
Missing, expired or invalid bearer token.
403
Authenticated, but your role or organization does not allow this action.
429
Too many requests for this endpoint from your IP. Wait Retry-After seconds.
500
Unexpected server error. Retry later; quote requestId to support.