Dotfile Custom properties API

The Custom properties API from Dotfile — 2 operation(s) for custom properties.

Operations 2

GET /v1/custom-properties/{target_entity} List custom properties per entity type #
GET /v1/custom-properties/{target_entity}/{key} Get a custom property detail for a given entity type #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/dotfile-custom-properties-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dotfile-custom-properties-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ⚙️ API specifications Custom properties API
  description: Dotfile public API documentation
  version: v1
  contact: {}
servers:
- url: https://api.dotfile.com
  description: Production environment
security:
- DotfileAPIKey: []
tags:
- name: Custom Properties
paths:
  /v1/custom-properties/{target_entity}:
    get:
      operationId: custom-property-get-custom-properties
      summary: List custom properties per entity type
      description: Returns a paginated list of custom properties for a given entity type. Options are not included in this list; use the detail endpoint to retrieve options.
      parameters:
      - name: target_entity
        required: true
        in: path
        description: Entity type to retrieve custom properties for.
        schema:
          enum:
          - case
          - company
          - individual
          type: string
      - name: label
        required: false
        in: query
        description: "Filter items by the `label.{operator}` field.  \nYou can use the `eq`, `not_eq`, `like` and `ilike` operators, the `eq` operator being the default."
        schema:
          type: string
      - name: key
        required: false
        in: query
        description: "Filter items by the `key.{operator}` field.  \nYou can use the `eq`, `not_eq`, `like` and `ilike` operators, the `eq` operator being the default."
        schema:
          type: string
      - name: include_archived
        required: false
        in: query
        description: "Include archived custom properties.  \nDefault is false"
        schema:
          type: boolean
      - name: created_at
        required: false
        in: query
        description: "Filter items by the `created_at.{operator}` field.  \nYou can use the `eq`, `not_eq`, `gt`, `gte`, `lt` and `lte` operators, the `eq` operator being the default."
        schema:
          type: string
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]{1,3})?(Z|([0-9]{2}:[0-9]{2}))?)?$
          example:
          - '2023-01-31'
          - '2023-01-31T13:30:00Z'
          - '2023-01-31T13:30:00.000Z'
          description: Date (`yyyy-MM-dd` eg `2023-01-31`) or date time (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`) in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
      - name: updated_at
        required: false
        in: query
        description: "Filter items by the `updated_at.{operator}` field.  \nYou can use the `eq`, `not_eq`, `gt`, `gte`, `lt` and `lte` operators, the `eq` operator being the default."
        schema:
          type: string
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}(T[0-9]{2}:[0-9]{2}:[0-9]{2}(\.[0-9]{1,3})?(Z|([0-9]{2}:[0-9]{2}))?)?$
          example:
          - '2023-01-31'
          - '2023-01-31T13:30:00Z'
          - '2023-01-31T13:30:00.000Z'
          description: Date (`yyyy-MM-dd` eg `2023-01-31`) or date time (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`) in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
      - name: sort
        required: false
        in: query
        description: "Use this parameter to sort query results.  \nIf not specified, sorted in _ascending_ order with values of field `created_at`.  \nAvailable fields are `created_at`, `key` and `label`."
        schema:
          default: created_at
          type: string
        examples:
          created_at:
            summary: Sort by values of the "created_at" field in ascending order
            value: created_at
          key:
            summary: Sort by values of the "key" field in descending order
            value: key.desc
          label:
            summary: Sort by values of the "label" field in ascending order
            value: label
          multiple:
            summary: Sort by values of multiple fields
            value: created_at,key.desc
      - name: page
        required: false
        in: query
        description: "Query response is paginated.  \nUse this parameter to choose which page you want to display.  \nPage index starts at 1 (the default)."
        schema:
          default: 1
          type: number
          minimum: 1
      - name: limit
        required: false
        in: query
        description: "Query response is paginated.  \nUse this parameter to choose the number of items per page.  \nLimit defaults to 20, maximum value is 100."
        schema:
          type: number
          default: 20
          minimum: 1
          maximum: 100
      responses:
        '200':
          description: 'List of custom properties for entity type


            **ℹ️ Click to see full payload**'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomPropertyList'
        '400':
          description: "The request is either malformed or contain invalid parameters.\n\n  - One or multiple filtering parameters might be malformed. Make sure to use a supported operator and value for each filter.\n  - If specified, make sure the value of the `page` or `limit` query parameter are valid.\n  - Value of the `sort` parameter is invalid. Make sure the field name is supported, the sorting order is correctly specified, and a same field is not used multiple times for sorting.\n  "
      tags:
      - Custom Properties
  /v1/custom-properties/{target_entity}/{key}:
    get:
      operationId: custom-property-get-custom-property
      summary: Get a custom property detail for a given entity type
      description: Returns a list of all custom properties in your dotfile workspace for a given entity type
      parameters:
      - name: target_entity
        required: true
        in: path
        description: Entity type to retrieve custom properties for.
        schema:
          enum:
          - case
          - company
          - individual
          type: string
      - name: key
        required: true
        in: path
        description: The custom property key
        schema:
          example: last_audit
          type: string
      responses:
        '200':
          description: 'Detailed custom property


            **ℹ️ Click to see full payload**'
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/CustomPropertyBoolean'
                  title: Boolean
                - $ref: '#/components/schemas/CustomPropertyChoicesWithOptions'
                  title: Choices
                - $ref: '#/components/schemas/CustomPropertyCountries'
                  title: Countries
                - $ref: '#/components/schemas/CustomPropertyDate'
                  title: Date
                - $ref: '#/components/schemas/CustomPropertyEmail'
                  title: Email
                - $ref: '#/components/schemas/CustomPropertyNumeric'
                  title: Numeric
                - $ref: '#/components/schemas/CustomPropertyPhoneNumber'
                  title: Phone number
                - $ref: '#/components/schemas/CustomPropertyText'
                  title: Text
                - $ref: '#/components/schemas/CustomPropertyUrl'
                  title: URL
                discriminator:
                  propertyName: type
                  mapping:
                    boolean: '#/components/schemas/CustomPropertyBoolean'
                    choices: '#/components/schemas/CustomPropertyChoicesWithOptions'
                    countries: '#/components/schemas/CustomPropertyCountries'
                    date: '#/components/schemas/CustomPropertyDate'
                    email: '#/components/schemas/CustomPropertyEmail'
                    numeric: '#/components/schemas/CustomPropertyNumeric'
                    phone_number: '#/components/schemas/CustomPropertyPhoneNumber'
                    text: '#/components/schemas/CustomPropertyText'
                    url: '#/components/schemas/CustomPropertyUrl'
        '404':
          description: No custom property can be found.
      tags:
      - Custom Properties
components:
  schemas:
    CustomPropertyText:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - text
        settings:
          $ref: '#/components/schemas/CustomPropertyTextSettings'
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
      - settings
    CustomPropertyPhoneNumber:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - phone_number
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
    CustomPropertyNumericSettings:
      type: object
      properties:
        format:
          type: string
          enum:
          - number
          - percent
          - currency
        min:
          type:
          - number
          - 'null'
          example: 0
          format: float
        max:
          type:
          - number
          - 'null'
          example: 100
          format: float
        currency_code:
          type:
          - string
          - 'null'
          description: "Only when format=currency.\nCurrency code in format ISO 4217.\n see https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes"
          example: EUR
      required:
      - format
      - min
      - max
      - currency_code
    CustomPropertyCountriesSettings:
      type: object
      properties:
        allow_multiple:
          type: boolean
      required:
      - allow_multiple
    Pagination:
      type: object
      properties:
        page:
          type: number
          description: Current page number (defined in query parameter)
          default: 1
        limit:
          type: number
          description: Item count per page (defined in query parameter)
          default: 20
        count:
          type: number
          description: Total items count
          example: 42
      required:
      - page
      - limit
      - count
    CustomPropertyNumeric:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - numeric
        settings:
          $ref: '#/components/schemas/CustomPropertyNumericSettings'
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
      - settings
    CustomPropertyList:
      type: object
      properties:
        data:
          discriminator:
            propertyName: type
            mapping:
              boolean: '#/components/schemas/CustomPropertyBoolean'
              choices: '#/components/schemas/CustomPropertyChoices'
              countries: '#/components/schemas/CustomPropertyCountries'
              date: '#/components/schemas/CustomPropertyDate'
              email: '#/components/schemas/CustomPropertyEmail'
              numeric: '#/components/schemas/CustomPropertyNumeric'
              phone_number: '#/components/schemas/CustomPropertyPhoneNumber'
              text: '#/components/schemas/CustomPropertyText'
              url: '#/components/schemas/CustomPropertyUrl'
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/CustomPropertyBoolean'
              title: Boolean
            - $ref: '#/components/schemas/CustomPropertyChoices'
              title: Choices
            - $ref: '#/components/schemas/CustomPropertyCountries'
              title: Countries
            - $ref: '#/components/schemas/CustomPropertyDate'
              title: Date
            - $ref: '#/components/schemas/CustomPropertyEmail'
              title: Email
            - $ref: '#/components/schemas/CustomPropertyNumeric'
              title: Numeric
            - $ref: '#/components/schemas/CustomPropertyPhoneNumber'
              title: Phone number
            - $ref: '#/components/schemas/CustomPropertyText'
              title: Text
            - $ref: '#/components/schemas/CustomPropertyUrl'
              title: URL
        pagination:
          example:
            page: 1
            limit: 20
            count: 42
          allOf:
          - $ref: '#/components/schemas/Pagination'
      required:
      - data
      - pagination
    CustomPropertyDate:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - date
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
    CustomPropertyTextSettings:
      type: object
      properties:
        is_multi_line:
          type: boolean
      required:
      - is_multi_line
    CustomPropertyChoicesSettings:
      type: object
      properties:
        allow_multiple:
          type: boolean
      required:
      - allow_multiple
    CustomPropertyUrl:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - url
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
    CustomPropertyBoolean:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - boolean
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
    CustomPropertyEmail:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - email
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
    CustomPropertyOption:
      type: object
      properties:
        label:
          type: string
        key:
          type: string
      required:
      - label
      - key
    CustomPropertyChoicesWithOptions:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - choices
        settings:
          $ref: '#/components/schemas/CustomPropertyChoicesSettings'
        options:
          type: array
          items:
            $ref: '#/components/schemas/CustomPropertyOption'
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
      - settings
      - options
    CustomPropertyChoices:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - choices
        settings:
          $ref: '#/components/schemas/CustomPropertyChoicesSettings'
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
      - settings
    CustomPropertyCountries:
      type: object
      properties:
        id:
          type: string
          format: uuid
        label:
          type: string
        key:
          type: string
        target_entity:
          type: string
          enum:
          - case
          - company
          - individual
        created_at:
          type: string
          format: date-time
          description: "Creation date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        updated_at:
          type: string
          format: date-time
          description: "Latest update date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        archived_at:
          type:
          - string
          - 'null'
          format: date-time
          description: "Archival date  \nDate time in format [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) (`yyyy-MM-ddTHH:mm:ss.S+X` eg `2023-01-31T13:30:00.000Z`)"
        type:
          type: string
          enum:
          - countries
        settings:
          $ref: '#/components/schemas/CustomPropertyCountriesSettings'
      required:
      - id
      - label
      - key
      - target_entity
      - created_at
      - updated_at
      - archived_at
      - type
      - settings
  securitySchemes:
    DotfileAPIKey:
      type: apiKey
      in: header
      name: X-DOTFILE-API-KEY
      description: Configure your api key in the Workspace settings
x-uploaded-at: '2026-08-14T14:05:07.336Z'
x-commit-sha: f460fa65a5cc33cf4211bbcee7818f93d5b9e8de