> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rallyuxr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Import people

> 
Internal properties are on the person object and custom properties can be specified either with the id of the property or an object that contains the name and property type. 
  If a property with that name already exists then it will be used with *no* modification, if it does not exist then then property will be created before the import begins.



## OpenAPI

````yaml https://api.rallyuxr.com/api/openapi post /people/import
openapi: 3.1.0
info:
  title: Rally UXR Developer Docs
  version: '1.0'
servers:
  - url: https://api.rallyuxr.com/api/public/v1
security:
  - bearerAuth: []
tags:
  - name: Forms
    description: Operations on Forms in your workspace
  - name: People
    description: Operations on Person's stored in your workspace
  - name: Person Properties
    description: Operations on workspace level Person Properties
  - name: Populations
    description: Operations on Populations in your workspace
  - name: Segments
    description: Operations on Segments in your workspace
  - name: Studies
    description: Operations on Studies in your workspace
  - name: Participants
    description: Operations on Participants in studies
  - name: Participant Status Events
    description: Poll participant status-change events across your workspace
  - name: Study Status Events
    description: Poll-based access to study status-change events in your workspace
  - name: Screener
    description: Operations on a study's screener
  - name: Consent Submissions
    description: Operations on Consent Submissions for studies
  - name: Incentives
    description: Operations on Incentives in your workspace
  - name: Messages
    description: Operations on Message activities in your workspace
  - name: Imports
    description: Operations on Imports in your workspace
  - name: Users
    description: Operations on Workspace Users
  - name: Teams
    description: Operations on Teams in your workspace
  - name: Backfills
    description: >-
      Routes that can be used to backfill data into Rally. If you'd like access
      to these apis, please reach out to your Customer Success rep
  - name: Person
    description: Deprecated, use People
paths:
  /people/import:
    post:
      tags:
        - People
      summary: Import people
      description: >-

        Internal properties are on the person object and custom properties can
        be specified either with the id of the property or an object that
        contains the name and property type. 
          If a property with that name already exists then it will be used with *no* modification, if it does not exist then then property will be created before the import begins.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImportPeopleBody'
      responses:
        '202':
          description: Successfully began importing people, with the total count returned
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  count:
                    type: number
                  importId:
                    type:
                      - string
                      - 'null'
                    description: >-
                      A unique identifier for the import, can be used to look up
                      status and will be included in the webhook
                required:
                  - message
                  - count
                  - importId
                description: Response for importing people
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestError'
        '401':
          description: Unauthorized
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
          content:
            text/plain:
              schema:
                type: string
                example: Unauthorized
        '403':
          description: Forbidden
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
          content:
            text/plain:
              schema:
                type: string
                example: Forbidden
        '429':
          description: Too Many Requests
          headers:
            Retry-After:
              $ref: '#/components/headers/Retry-After'
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
          content:
            text/plain:
              schema:
                type: string
                example: Too Many Requests
        '500':
          description: Internal Server Error
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
          content:
            text/plain:
              schema:
                type: string
                example: Internal Server Error
      security:
        - bearerAuth: []
components:
  schemas:
    ImportPeopleBody:
      type: object
      properties:
        identifierPropertyId:
          type: string
          description: >-
            By default, "email" is used as the identifier. You can also use
            "phone" or provide the ID of a unique custom property to use as the
            identifier instead
        people:
          type: array
          items:
            type: object
            properties:
              firstName:
                type:
                  - string
                  - 'null'
                description: The first name of the person
              lastName:
                type:
                  - string
                  - 'null'
                description: The last name of the person
              isOptedOut:
                type: boolean
                description: Whether the person is opted out of research
              lastContactDate:
                type: string
                format: date
                description: The last contact date of the person. In YYYY-MM-DD format
              additionalEmails:
                type: array
                items:
                  type: string
                description: The additional emails of the person
              additionalPhones:
                type: array
                items:
                  type: string
                description: Additional phone numbers of the person
              properties:
                type: array
                items:
                  anyOf:
                    - type: object
                      properties:
                        name:
                          type: string
                        propertyType:
                          $ref: '#/components/schemas/PropertyType'
                        isUnique:
                          type: boolean
                          description: >-
                            Whether the property is unique across all people.
                            Maximum of 10 across a workspace
                          maximum: 10
                        isPHI:
                          type: boolean
                          description: >-
                            Whether the property is PHI (Protected health
                            information)
                        isPII:
                          type: boolean
                          description: >-
                            Whether the property is PII (Personally Identifiable
                            Information)
                        value:
                          anyOf:
                            - type: string
                              format: date
                              description: A date value. Must be in YYYY-MM-DD format
                            - type: number
                              description: A number value
                            - type: boolean
                              description: A boolean value
                            - type: string
                              description: Any string value
                            - type: array
                              items:
                                type: string
                              description: An array of string values
                            - type: object
                              properties:
                                latitude:
                                  type: number
                                  minimum: -90
                                  maximum: 90
                                  description: The latitude of the location
                                longitude:
                                  type: number
                                  minimum: -180
                                  maximum: 180
                                  description: The longitude of the location
                                country:
                                  $ref: '#/components/schemas/CountryCode'
                                postalCode:
                                  type: string
                                  description: The postal code of the location
                                admin1:
                                  type: string
                                  description: >-
                                    The state/territory/administrative area
                                    level 1 of the location
                                admin2:
                                  type: string
                                  description: >-
                                    The county/parish/borough/administrative
                                    area level 2 of the location
                                admin3:
                                  type: string
                                  description: >-
                                    The city/municipality/administrative area
                                    level 3 of the location
                              required:
                                - latitude
                                - longitude
                                - country
                              description: The value of a location property
                              example:
                                latitude: 37.7749
                                longitude: -122.4194
                                country: US
                                postalCode: '94103'
                                admin1: CA
                                admin2: San Francisco
                                admin3: San Francisco
                          description: >-
                            The value of a person's property. Will be coerced to
                            the value type of the property. Dates must be in
                            YYYY-MM-DD
                          example: Blue
                          examples:
                            - '2025-01-01'
                            - 'true'
                            - '123'
                            - ''
                      required:
                        - name
                        - propertyType
                        - value
                    - type: object
                      properties:
                        propertyId:
                          type: string
                        value:
                          anyOf:
                            - type: string
                              format: date
                              description: A date value. Must be in YYYY-MM-DD format
                            - type: number
                              description: A number value
                            - type: boolean
                              description: A boolean value
                            - type: string
                              description: Any string value
                            - type: array
                              items:
                                type: string
                              description: An array of string values
                            - type: object
                              properties:
                                latitude:
                                  type: number
                                  minimum: -90
                                  maximum: 90
                                  description: The latitude of the location
                                longitude:
                                  type: number
                                  minimum: -180
                                  maximum: 180
                                  description: The longitude of the location
                                country:
                                  $ref: '#/components/schemas/CountryCode'
                                postalCode:
                                  type: string
                                  description: The postal code of the location
                                admin1:
                                  type: string
                                  description: >-
                                    The state/territory/administrative area
                                    level 1 of the location
                                admin2:
                                  type: string
                                  description: >-
                                    The county/parish/borough/administrative
                                    area level 2 of the location
                                admin3:
                                  type: string
                                  description: >-
                                    The city/municipality/administrative area
                                    level 3 of the location
                              required:
                                - latitude
                                - longitude
                                - country
                              description: The value of a location property
                              example:
                                latitude: 37.7749
                                longitude: -122.4194
                                country: US
                                postalCode: '94103'
                                admin1: CA
                                admin2: San Francisco
                                admin3: San Francisco
                          description: >-
                            The value of a person's property. Will be coerced to
                            the value type of the property. Dates must be in
                            YYYY-MM-DD
                          example: Blue
                          examples:
                            - '2025-01-01'
                            - 'true'
                            - '123'
                            - ''
                      required:
                        - propertyId
                        - value
                maxItems: 100
                description: The properties of the person
              identifier:
                type: string
                description: >-
                  A unique identifier for this person, can be used to insert or
                  update based on this property type instead of email. Must be
                  provided for all within a single request of people. Note:
                  Email and this value are *both* unique. If you provide an
                  identifier but the email provided already exists then we do
                  not update the email
              email:
                type: string
              phone:
                type: string
                description: >-
                  Phone number of the person, can be used as a primary
                  identifier
            required:
              - properties
          description: >-
            The people to import. If first/last name are null then they'll be
            overwritten. You can use email, phone, or a custom identifier
            property for matching existing people
        populationId:
          type: string
          description: >-
            The ID of the population the person should be created/updated in. If
            not provided, the person will be created/updated across the
            workspace
      required:
        - people
      description: >-
        Takes an object that contains an array of people to import. 

        Internal properties are on the person object and custom properties can
        be specified either with the id of the property or an object that
        contains the name and property type. 
          If a property with that name already exists then it will be used with *no* modification, if it does not exist then then property will be created before the import begins.
      example:
        people:
          - email: dev@rallyuxr.com
            phone: +1 415 777-7777
            firstName: Dev
            lastName: Rally
            isOptedOut: false
            lastContactDate: '2025-01-01'
            additionalEmails:
              - dev+1@rallyuxr.com
            additionalPhones:
              - +1-555-123-4568
            properties:
              - propertyId: cm0b4eokq000vbbsimwelll3u
                value: '2025-01-01'
              - name: Favorite Color
                propertyType: STRING
                value: Blue
    BadRequestError:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              message:
                type: string
              path:
                type: array
                items:
                  anyOf:
                    - type: string
                    - type: number
            required:
              - message
              - path
      required:
        - errors
      description: Error response for a bad request with details on what was invalid
    PropertyType:
      type: string
      enum:
        - STRING
        - NUMBER
        - DATETIME
        - BOOLEAN
        - SINGLE_SELECT
        - MULTI_SELECT
        - LOCATION
      description: The type of the property
      example: SINGLE_SELECT
    CountryCode:
      type: string
      enum:
        - AF
        - AX
        - AL
        - DZ
        - AS
        - AD
        - AO
        - AI
        - AQ
        - AG
        - AR
        - AM
        - AW
        - AU
        - AT
        - AZ
        - BS
        - BH
        - BD
        - BB
        - BY
        - BE
        - BZ
        - BJ
        - BM
        - BT
        - BO
        - BQ
        - BA
        - BW
        - BV
        - BR
        - IO
        - BN
        - BG
        - BF
        - BI
        - CV
        - KH
        - CM
        - CA
        - KY
        - CF
        - TD
        - CL
        - CN
        - CX
        - CC
        - CO
        - KM
        - CG
        - CD
        - CK
        - CR
        - CI
        - HR
        - CU
        - CW
        - CY
        - CZ
        - DK
        - DJ
        - DM
        - DO
        - EC
        - EG
        - SV
        - GQ
        - ER
        - EE
        - SZ
        - ET
        - FK
        - FO
        - FJ
        - FI
        - FR
        - GF
        - PF
        - TF
        - GA
        - GM
        - GE
        - DE
        - GH
        - GI
        - GR
        - GL
        - GD
        - GP
        - GU
        - GT
        - GG
        - GN
        - GW
        - GY
        - HT
        - HM
        - VA
        - HN
        - HK
        - HU
        - IS
        - IN
        - ID
        - IR
        - IQ
        - IE
        - IM
        - IL
        - IT
        - JM
        - JP
        - JE
        - JO
        - KZ
        - KE
        - KI
        - KP
        - KR
        - KW
        - KG
        - LA
        - LV
        - LB
        - LS
        - LR
        - LY
        - LI
        - LT
        - LU
        - MO
        - MG
        - MW
        - MY
        - MV
        - ML
        - MT
        - MH
        - MQ
        - MR
        - MU
        - YT
        - MX
        - FM
        - MD
        - MC
        - MN
        - ME
        - MS
        - MA
        - MZ
        - MM
        - NA
        - NR
        - NP
        - NL
        - NC
        - NZ
        - NI
        - NE
        - NG
        - NU
        - NF
        - MK
        - MP
        - 'NO'
        - OM
        - PK
        - PW
        - PS
        - PA
        - PG
        - PY
        - PE
        - PH
        - PN
        - PL
        - PT
        - PR
        - QA
        - RE
        - RO
        - RU
        - RW
        - BL
        - SH
        - KN
        - LC
        - MF
        - PM
        - VC
        - WS
        - SM
        - ST
        - SA
        - SN
        - RS
        - SC
        - SL
        - SG
        - SX
        - SK
        - SI
        - SB
        - SO
        - ZA
        - GS
        - SS
        - ES
        - LK
        - SD
        - SR
        - SJ
        - SE
        - CH
        - SY
        - TW
        - TJ
        - TZ
        - TH
        - TL
        - TG
        - TK
        - TO
        - TT
        - TN
        - TR
        - TM
        - TC
        - TV
        - UG
        - UA
        - AE
        - GB
        - US
        - UM
        - UY
        - UZ
        - VU
        - VE
        - VN
        - VG
        - VI
        - WF
        - EH
        - YE
        - ZM
        - ZW
      description: Alpha-2 country code
      example: US
  headers:
    X-RateLimit-Limit:
      description: The maximum number of requests the client is allowed to make.
      schema:
        type: integer
        format: int32
    X-RateLimit-Remaining:
      description: >-
        The number of requests remaining for the client in the current time
        window.
      schema:
        type: integer
        format: int32
    X-RateLimit-Reset:
      description: >-
        The time at which the current time window ends (in Unix timestamp
        format).
      schema:
        type: integer
        format: int32
    Retry-After:
      description: The number of seconds until the client should retry the request.
      schema:
        type: integer
        format: int32
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````