Amazon Personalize Personalize Dataset Import Job API

The Personalize Dataset Import Job API from Amazon Personalize — 3 operation(s) for personalize dataset import job.

Business capability
Model Training & Data AE-110.70

Operations 3

POST /#CreateDatasetImportJob Create Dataset Import Job #
POST /#DescribeDatasetImportJob Describe Dataset Import Job #
POST /#ListDatasetImportJobs List Dataset Import Jobs #

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/amazon-personalize:amazon-personalize-dataset-import-job-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

amazon-personalize-dataset-import-job-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Amazon Personalize Dataset Import Job API
  version: '2018-05-22'
  description: Generated from AWS's published Smithy model for Amazon Personalize. 3 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://personalize.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
tags:
- name: Dataset Import Job
paths:
  /#CreateDatasetImportJob:
    post:
      operationId: CreateDatasetImportJob
      summary: Create Dataset Import Job
      description: 'Creates a job that imports training data from your data source (an Amazon S3 bucket) to an Amazon Personalize dataset. To allow Amazon Personalize to import the training data, you must specify an IAM service role that has permission to read from the data source, as Amazon Personalize makes a copy of your data and processes it internally. For information on granting access to your Amazon S3 bucket, see Giving Amazon Personalize Access to Amazon S3 Resources. If you already created a recommender or deployed a custom solution version with a campaign, how new bulk records influence recommendations depends on the domain use case or recipe that you use. For more information, see How new data influences real-time recommendations. By default, a dataset import job replaces any existing data in the dataset that you imported in bulk. To add new records without replacing existing data, specify INCREMENTAL for the import mode in the CreateDatasetImportJob operation. Status A dataset import job can be in one of the following states: CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED To get the status of the import job, call DescribeDatasetImportJob, providing the Amazon Resource Nam'
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/CreateDatasetImportJobResponse'
        '400':
          description: InvalidInputException; TooManyTagsException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidInputException'
        '409':
          description: LimitExceededException; ResourceInUseException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/LimitExceededException'
        '403':
          description: ResourceAlreadyExistsException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceAlreadyExistsException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonPersonalize.CreateDatasetImportJob
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreateDatasetImportJobRequest'
      tags:
      - Dataset Import Job
  /#DescribeDatasetImportJob:
    post:
      operationId: DescribeDatasetImportJob
      summary: Describe Dataset Import Job
      description: Describes the dataset import job created by CreateDatasetImportJob, including the import job status.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DescribeDatasetImportJobResponse'
        '400':
          description: InvalidInputException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidInputException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonPersonalize.DescribeDatasetImportJob
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DescribeDatasetImportJobRequest'
      tags:
      - Dataset Import Job
  /#ListDatasetImportJobs:
    post:
      operationId: ListDatasetImportJobs
      summary: List Dataset Import Jobs
      description: Returns a list of dataset import jobs that use the given dataset. When a dataset is not specified, all the dataset import jobs associated with the account are listed. The response provides the properties for each dataset import job, including the Amazon Resource Name (ARN). For more information on dataset import jobs, see CreateDatasetImportJob. For more information on datasets, see CreateDataset.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ListDatasetImportJobsResponse'
        '400':
          description: InvalidInputException; InvalidNextTokenException
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/InvalidInputException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AmazonPersonalize.ListDatasetImportJobs
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/ListDatasetImportJobsRequest'
      tags:
      - Dataset Import Job
components:
  schemas:
    InvalidInputException:
      type: object
      properties:
        message:
          type: string
    LimitExceededException:
      type: object
      properties:
        message:
          type: string
    ListDatasetImportJobsRequest:
      type: object
      properties:
        datasetArn:
          type: string
          description: The Amazon Resource Name (ARN) of the dataset to list the dataset import jobs for.
        nextToken:
          type: string
          description: A token returned from the previous call to ListDatasetImportJobs for getting the next set of dataset import jobs (if they exist).
        maxResults:
          type: integer
          description: The maximum number of dataset import jobs to return.
    ResourceAlreadyExistsException:
      type: object
      properties:
        message:
          type: string
    ResourceNotFoundException:
      type: object
      properties:
        message:
          type: string
    ListDatasetImportJobsResponse:
      type: object
      properties:
        datasetImportJobs:
          type: array
          items:
            $ref: '#/components/schemas/DatasetImportJobSummary'
          description: The list of dataset import jobs.
        nextToken:
          type: string
          description: A token for getting the next set of dataset import jobs (if they exist).
    DescribeDatasetImportJobResponse:
      type: object
      properties:
        datasetImportJob:
          $ref: '#/components/schemas/DatasetImportJob'
    Tag:
      type: object
      properties:
        tagKey:
          type: string
          description: One part of a key-value pair that makes up a tag. A key is a general label that acts like a category for more specific tag values.
        tagValue:
          type: string
          description: The optional part of a key-value pair that makes up a tag. A value acts as a descriptor within a tag category (key).
      required:
      - tagKey
      - tagValue
    DescribeDatasetImportJobRequest:
      type: object
      properties:
        datasetImportJobArn:
          type: string
          description: The Amazon Resource Name (ARN) of the dataset import job to describe.
      required:
      - datasetImportJobArn
    DataSource:
      type: object
      properties:
        dataLocation:
          type: string
          description: 'For dataset import jobs, the path to the Amazon S3 bucket where the data that you want to upload to your dataset is stored. For data deletion jobs, the path to the Amazon S3 bucket that stores the list of records to delete. For example: s3://bucket-name/folder-name/fileName.csv If your CSV files are in a folder in your Amazon S3 bucket and you want your import job or data deletion job to consider multiple files, you can specify the path to the folder. With a data deletion job, Amazon Personalize uses all files in the folder and any sub folder. Use the following syntax with a / after the folder'
    DatasetImportJob:
      type: object
      properties:
        jobName:
          type: string
          description: The name of the import job.
        datasetImportJobArn:
          type: string
          description: The ARN of the dataset import job.
        datasetArn:
          type: string
          description: The Amazon Resource Name (ARN) of the dataset that receives the imported data.
        dataSource:
          $ref: '#/components/schemas/DataSource'
        roleArn:
          type: string
          description: The ARN of the IAM role that has permissions to read from the Amazon S3 data source.
        status:
          type: string
          description: 'The status of the dataset import job. A dataset import job can be in one of the following states: CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED'
        creationDateTime:
          type: string
          format: date-time
          description: The creation date and time (in Unix time) of the dataset import job.
        lastUpdatedDateTime:
          type: string
          format: date-time
          description: The date and time (in Unix time) the dataset was last updated.
        failureReason:
          type: string
          description: If a dataset import job fails, provides the reason why.
        importMode:
          type: string
          enum:
          - FULL
          - INCREMENTAL
          description: The import mode used by the dataset import job to import new records.
        publishAttributionMetricsToS3:
          type: boolean
          description: Whether the job publishes metrics to Amazon S3 for a metric attribution.
    CreateDatasetImportJobRequest:
      type: object
      properties:
        jobName:
          type: string
          description: The name for the dataset import job.
        datasetArn:
          type: string
          description: The ARN of the dataset that receives the imported data.
        dataSource:
          $ref: '#/components/schemas/DataSource'
        roleArn:
          type: string
          description: The ARN of the IAM role that has permissions to read from the Amazon S3 data source.
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: A list of tags to apply to the dataset import job.
        importMode:
          type: string
          enum:
          - FULL
          - INCREMENTAL
          description: Specify how to add the new records to an existing dataset. The default import mode is FULL. If you haven't imported bulk records into the dataset previously, you can only specify FULL. Specify FULL to overwrite all existing bulk data in your dataset. Data you imported individually is not replaced. Specify INCREMENTAL to append the new records to the existing data in your dataset. Amazon Personalize replaces any record with the same ID with the new one.
        publishAttributionMetricsToS3:
          type: boolean
          description: If you created a metric attribution, specify whether to publish metrics for this import job to Amazon S3
      required:
      - jobName
      - datasetArn
      - dataSource
    CreateDatasetImportJobResponse:
      type: object
      properties:
        datasetImportJobArn:
          type: string
          description: The ARN of the dataset import job.
    DatasetImportJobSummary:
      type: object
      properties:
        datasetImportJobArn:
          type: string
          description: The Amazon Resource Name (ARN) of the dataset import job.
        jobName:
          type: string
          description: The name of the dataset import job.
        status:
          type: string
          description: 'The status of the dataset import job. A dataset import job can be in one of the following states: CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED'
        creationDateTime:
          type: string
          format: date-time
          description: The date and time (in Unix time) that the dataset import job was created.
        lastUpdatedDateTime:
          type: string
          format: date-time
          description: The date and time (in Unix time) that the dataset import job status was last updated.
        failureReason:
          type: string
          description: If a dataset import job fails, the reason behind the failure.
        importMode:
          type: string
          enum:
          - FULL
          - INCREMENTAL
          description: The import mode the dataset import job used to update the data in the dataset. For more information see Updating existing bulk data.
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: personalize
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/personalize/service/2018-05-22/personalize-2018-05-22.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)