DealFields

Deal fields represent the near-complete schema for a deal in the context of the company of the authorized user. Each company can have a different schema for their deals, with various custom fields. In the context of using deal fields as a schema for defining the data fields of a deal, it must be kept in mind that some types of custom fields can have additional data fields which are not separate deal fields per se. Such is the case with monetary, daterange and timerange fields – each of these fields will have one additional data field in addition to the one presented in the context of deal fields. For example, if there is a monetary field with the key ffk9s9 stored on the account, ffk9s9 would hold the numeric value of the field, and ffk9s9_currency would hold the ISO currency code that goes along with the numeric value. To find out which data fields are available, fetch one deal and list its keys.

Get all deal fields

Copy link

Returns data about all deal fields.

API v1
Request
GET

/v1/dealFields

Query parameters

start

integer

Pagination start

Default

0

limit

integer

Items shown per page

Response
200

OK

Expand all
Copy code
    • true
    • [ ... ]
      • { ... }

      Get one deal field

      Copy link

      Returns data about a specific deal field.

      API v1
      Request
      GET

      /v1/dealFields/{id}

      Path parameters

      id

      integer

      required

      The ID of the field

      Response
      200

      OK

      Expand all
      Copy code
        • true
        • { ... }

        Add a new deal field

        Copy link

        Adds a new deal field. For more information, see the tutorial for adding a new custom field.

        API v1
        Request
        POST

        /v1/dealFields

        Body parameters

        application/json

        name

        string

        required

        The name of the field

        options

        array

        When field_type is either set or enum, possible options must be supplied as a JSON-encoded sequential array of objects. Example: [{"label":"New Item"}]

        add_visible_flag

        boolean

        Whether the field is available in the 'add new' modal or not (both in the web and mobile app)

        Default

        true

        field_type

        string

        required

        The type of the field

        ValueDescription
        addressAddress field
        dateDate (format YYYY-MM-DD)
        daterangeDate-range field (has a start date and end date value, both YYYY-MM-DD)
        doubleNumeric value
        enumOptions field with a single possible chosen option
        monetaryMonetary field (has a numeric value and a currency value)
        orgOrganization field (contains an organization ID which is stored on the same account)
        peoplePerson field (contains a person ID which is stored on the same account)
        phonePhone field (up to 255 numbers and/or characters)
        setOptions field with a possibility of having multiple chosen options
        textLong text (up to 65k characters)
        timeTime field (format HH:MM:SS)
        timerangeTime-range field (has a start time and end time value, both HH:MM:SS)
        userUser field (contains a user ID of another Pipedrive user)
        varcharText (up to 255 characters)
        varchar_autoAutocomplete text (up to 255 characters)
        visible_toSystem field that keeps item's visibility setting

        Values

        address

        date

        daterange

        double

        enum

        monetary

        org

        people

        phone

        set

        text

        time

        timerange

        user

        varchar

        varchar_auto

        visible_to

        Response
        200

        OK

        Expand all
        Copy code
          • true
          • { ... }

          Update a deal field

          Copy link

          Updates a deal field. For more information, see the tutorial for updating custom fields' values.

          API v1
          Request
          PUT

          /v1/dealFields/{id}

          Path parameters

          id

          integer

          required

          The ID of the field

          Body parameters

          application/json

          name

          string

          The name of the field

          options

          array

          When field_type is either set or enum, possible options must be supplied as a JSON-encoded sequential array of objects. All active items must be supplied and already existing items must have their ID supplied. New items only require a label. Example: [{"id":123,"label":"Existing Item"},{"label":"New Item"}]

          add_visible_flag

          boolean

          Whether the field is available in 'add new' modal or not (both in web and mobile app)

          Default

          true

          Response
          200

          OK

          Expand all
          Copy code
            • true
            • { ... }

            Delete multiple deal fields in bulk

            Copy link

            Marks multiple deal fields as deleted.

            API v1
            Request
            DELETE

            /v1/dealFields

            Query parameters

            ids

            string

            required

            The comma-separated field IDs to delete

            Response
            200

            OK

            Expand all
            Copy code
              • true
              • { ... }

              Delete a deal field

              Copy link

              Marks a field as deleted. For more information, see the tutorial for deleting a custom field.

              API v1
              Request
              DELETE

              /v1/dealFields/{id}

              Path parameters

              id

              integer

              required

              The ID of the field

              Response
              200

              OK

              Expand all
              Copy code
                • true
                • { ... }

                Subscribe to Pipedrive’s Developer Newsletter