openapi: 3.1.0 info: title: FullStory Segments Export Batch Import API description: 'The FullStory Segments Export API provides an asynchronous workflow for downloading captured event data from FullStory. Developers can initiate export jobs to aggregate segment data, query for the status of running jobs, and retrieve download URLs for completed exports. Two types of segment data are available for export: individuals matching a segment and events performed by those individuals. This API is useful for integrating FullStory behavioral data into external analytics pipelines and data warehouses.' version: '1.0' contact: name: FullStory Support url: https://help.fullstory.com/ termsOfService: https://www.fullstory.com/legal/terms-and-conditions/ servers: - url: https://api.fullstory.com description: FullStory Production API Server security: - basicAuth: [] tags: - name: Batch Import description: Import large volumes of users and events asynchronously using batch import jobs that support up to 50,000 records per request. paths: /v2/users/batch: post: operationId: createBatchUserImport summary: Create a batch user import job description: Imports up to 50,000 users in a single asynchronous request. Returns a job object with an ID and status that can be polled for completion. Users can be anonymous or identified with a uid. tags: - Batch Import requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BatchUserImportRequest' responses: '200': description: Batch import job created successfully content: application/json: schema: $ref: '#/components/schemas/BatchJob' '400': description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized - invalid or missing API key content: application/json: schema: $ref: '#/components/schemas/Error' '429': description: Rate limit exceeded content: application/json: schema: $ref: '#/components/schemas/Error' /v2/events/batch: post: operationId: createBatchEventsImport summary: Create a batch events import job description: Imports a large number of events in a single asynchronous request. Returns a job object with an ID and status that can be polled for completion. Each event in the batch can include custom properties and session associations. tags: - Batch Import requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BatchEventsImportRequest' responses: '200': description: Batch events import job created successfully content: application/json: schema: $ref: '#/components/schemas/BatchJob' '400': description: Invalid input provided content: application/json: schema: $ref: '#/components/schemas/Error' '401': description: Unauthorized - invalid or missing API key content: application/json: schema: $ref: '#/components/schemas/Error' '429': description: Rate limit exceeded content: application/json: schema: $ref: '#/components/schemas/Error' components: schemas: BatchEventsImportRequest: type: object required: - requests description: Request body for batch importing events into FullStory properties: requests: type: array description: Array of event objects to import items: $ref: '#/components/schemas/CreateEventRequest' BatchUserImportRequest: type: object required: - requests description: Request body for batch importing users into FullStory properties: requests: type: array description: Array of user objects to import, up to 50,000 per request maxItems: 50000 items: $ref: '#/components/schemas/CreateUserRequest' Error: type: object description: Standard error response from the FullStory API properties: code: type: integer description: HTTP status code message: type: string description: Human-readable error message BatchJob: type: object description: Represents an asynchronous batch import job properties: id: type: string description: The unique identifier for the batch import job status: type: string description: Current status of the batch import job enum: - PENDING - PROCESSING - COMPLETED - FAILED created: type: string format: date-time description: Timestamp when the batch import job was accepted CreateUserRequest: type: object description: Request body for creating or updating a user in FullStory properties: uid: type: string description: External user identifier. Omit to create an anonymous user. display_name: type: string description: The display name for the user email: type: string format: email description: The email address for the user properties: type: object description: Custom key-value properties to attach to the user. Type suffixes are not required in v2 as types are inferred automatically. additionalProperties: true schema: type: object description: Optional explicit type declarations for custom properties to override the default type inference additionalProperties: true CreateEventRequest: type: object required: - name description: Request body for creating a custom event in FullStory properties: name: type: string description: The name of the custom event timestamp: type: string format: date-time description: ISO 8601 timestamp for when the event occurred session: type: object description: Session association for the event properties: id: type: string description: The session identifier to associate the event with use_most_recent: type: boolean description: If true, the most recent session within 30 minutes will be used. If no recent session is found, the event is created without a session association. user: type: object description: User association for the event. Not accepted if session.id is provided since the session already identifies the user. properties: id: type: string description: The FullStory-assigned user ID uid: type: string description: The external user identifier properties: type: object description: Custom key-value properties for the event. Supports string, real, integer, boolean, array, and object types. additionalProperties: true schema: type: object description: Optional explicit type declarations for custom event properties additionalProperties: true securitySchemes: basicAuth: type: http scheme: basic description: API key passed in the Authorization header using Basic authentication. Admin or Architect level keys are required. externalDocs: description: FullStory Segments Export API Documentation url: https://developer.fullstory.com/server/v1/segments/create-segment-export/