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

# Export statements

> Export every xAPI statement, 1,000 at a time. Requires the `xapi:read` scope.

Omit `cursor` to start, then send the `cursor` from each response until `isDone` is `true`. Filters support `verb.id`, `object.id` and `userId` only.



## OpenAPI

````yaml /api-reference/openapi.yaml post /api/v1/public-api/xapi/.scan
openapi: 3.1.0
info:
  title: Juno Journey API
  version: 1.0.0
  description: >-
    The Juno public API. See the [API
    overview](https://docs.junojourney.com/integrations/api-overview) for
    authentication, scopes and limits.
servers:
  - url: https://api.the-juno.com
security:
  - BearerAuth: []
paths:
  /api/v1/public-api/xapi/.scan:
    post:
      tags:
        - xAPI
      summary: Export statements
      description: >-
        Export every xAPI statement, 1,000 at a time. Requires the `xapi:read`
        scope.


        Omit `cursor` to start, then send the `cursor` from each response until
        `isDone` is `true`. Filters support `verb.id`, `object.id` and `userId`
        only.
      operationId: exportXapiStatements
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                filters:
                  type: object
                  description: Only these filters are supported.
                  properties:
                    verb.id:
                      type: string
                      description: xAPI verb ID.
                    object.id:
                      type: string
                      description: xAPI object (activity) ID.
                    userId:
                      type: string
                      description: Juno user ID.
                cursor:
                  type: string
                  description: The `cursor` from the previous response. Omit it to start.
                select:
                  type: object
                  description: >-
                    Fields to return, for example `{ "actor": 1, "verb": 1 }`.
                    Leave it out to get every field.
                  properties:
                    id:
                      enum:
                        - 1
                    actor:
                      enum:
                        - 1
                    verb:
                      enum:
                        - 1
                    object:
                      enum:
                        - 1
                    context:
                      enum:
                        - 1
                    result:
                      enum:
                        - 1
                    timestamp:
                      enum:
                        - 1
                    userId:
                      enum:
                        - 1
            example:
              filters:
                verb.id: http://activitystrea.ms/schema/1.0/complete
              select:
                actor: 1
                verb: 1
                object: 1
                timestamp: 1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                    description: xAPI statements.
                  dataLength:
                    type: integer
                    description: Statements in this chunk.
                  cursor:
                    type: string
                    description: >-
                      Send it back to get the next chunk. Missing once `isDone`
                      is `true`.
                  isDone:
                    type: boolean
                    description: '`true` when every statement has been returned.'
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Personal access token. Create one in Admin → Security → Developer
        Settings → Generate Personal Access Token.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.