{
  "ab_internal": {
    "isEnterprise": false,
    "ql": 300,
    "requireVersionIncrementsInPullRequests": true,
    "sl": 100
  },
  "allowedHosts": {
    "hosts": []
  },
  "connectorBuildOptions": {
    "baseImage": "docker.io/airbyte/python-connector-base:4.0.2@sha256:9fdb1888c4264cf6fee473649ecb593f56f58e5d0096a87ee0b231777e2e3e73"
  },
  "connectorTestSuitesOptions": [
    {
      "suite": "liveTests",
      "testConnections": [
        {
          "id": "73abc3a9-3fea-4e7c-b58d-2c8236464a95",
          "name": "faker_config_dev_null"
        }
      ]
    },
    {
      "suite": "unitTests"
    },
    {
      "suite": "acceptanceTests",
      "testSecrets": [
        {
          "fileName": "config.json",
          "name": "SECRET_SOURCE-FAKER_CREDS",
          "secretStore": {
            "alias": "airbyte-connector-testing-secret-store",
            "type": "GSM"
          }
        }
      ]
    }
  ],
  "custom": false,
  "dockerImageTag": "7.0.4-preview.7101641",
  "dockerRepository": "airbyte/source-faker",
  "documentationUrl": "https://docs.airbyte.com/integrations/sources/faker",
  "externalDocumentationUrls": [
    {
      "title": "Python Faker Library Documentation",
      "type": "api_reference",
      "url": "https://faker.readthedocs.io/en/master/"
    },
    {
      "title": "Faker Changelog",
      "type": "api_release_history",
      "url": "https://github.com/joke2k/faker/blob/master/CHANGELOG.md"
    }
  ],
  "generated": {
    "git": {
      "commit_author": "Devin AI",
      "commit_author_email": "158243242+devin-ai-integration[bot]@users.noreply.github.com",
      "commit_sha": "2bf9af43f7eede3b1a1b096b25bb0545a98ddd10",
      "commit_timestamp": "2026-03-30T20:49:55+00:00"
    },
    "sbomUrl": "https://connectors.airbyte.com/files/sbom/airbyte/source-faker/7.0.4-preview.7101641.spdx.json",
    "source_file_info": {
      "metadata_bucket_name": "prod-airbyte-cloud-connector-metadata-service",
      "metadata_file_path": "metadata/airbyte/source-faker/7.0.4-preview.7101641/metadata.yaml",
      "metadata_last_modified": "2026-03-30T23:33:36.322667+00:00",
      "registry_entry_generated_at": "2026-03-30T23:33:36.322667+00:00"
    }
  },
  "githubIssueLabel": "source-faker",
  "icon": "icon.svg",
  "iconUrl": "https://connectors.airbyte.com/files/metadata/airbyte/source-faker/latest/icon.svg",
  "language": "python",
  "license": "ELv2",
  "name": "Sample Data",
  "packageInfo": {
    "cdk_version": "python:7.13.0.post12.dev23757371941"
  },
  "public": true,
  "releaseStage": "beta",
  "releases": {
    "breakingChanges": {
      "4.0.0": {
        "message": "This is a breaking change message",
        "migrationDocumentationUrl": "https://docs.airbyte.com/integrations/sources/faker-migrations#4.0.0",
        "upgradeDeadline": "2023-07-19"
      },
      "5.0.0": {
        "message": "ID and products.year fields are changing to be integers instead of floats.",
        "migrationDocumentationUrl": "https://docs.airbyte.com/integrations/sources/faker-migrations#5.0.0",
        "upgradeDeadline": "2023-08-31"
      },
      "6.0.0": {
        "message": "Declare 'id' columns as primary keys.",
        "migrationDocumentationUrl": "https://docs.airbyte.com/integrations/sources/faker-migrations#6.0.0",
        "upgradeDeadline": "2024-04-01"
      },
      "7.0.0": {
        "deadlineAction": "disable",
        "message": "This is a test breaking change to validate breaking change infrastructure.",
        "migrationDocumentationUrl": "https://docs.airbyte.com/integrations/sources/faker-migrations#7.0.0",
        "scopedImpact": [
          {
            "impactedScopes": [
              "users",
              "products",
              "purchases"
            ],
            "scopeType": "stream"
          }
        ],
        "upgradeDeadline": "2026-03-19"
      }
    },
    "migrationDocumentationUrl": "https://docs.airbyte.com/integrations/sources/faker-migrations",
    "rolloutConfiguration": {
      "advanceDelayMinutes": 10,
      "enableProgressiveRollout": false,
      "initialPercentage": 0,
      "maxPercentage": 50
    }
  },
  "remoteRegistries": {
    "pypi": {
      "enabled": true,
      "packageName": "airbyte-source-faker"
    }
  },
  "resourceRequirements": {
    "jobSpecific": [
      {
        "jobType": "sync",
        "resourceRequirements": {
          "cpu_limit": "4.0",
          "cpu_request": "1.0"
        }
      }
    ]
  },
  "sourceDefinitionId": "dfd88b22-b603-4c3d-aad7-3701784586b1",
  "sourceType": "api",
  "spec": {
    "connectionSpecification": {
      "$schema": "http://json-schema.org/draft-07/schema#",
      "additionalProperties": true,
      "properties": {
        "always_updated": {
          "default": true,
          "description": "Should the updated_at values for every record be new each sync?  Setting this to false will case the source to stop emitting records after COUNT records have been emitted.",
          "title": "Always Updated",
          "type": "boolean"
        },
        "count": {
          "default": 1000,
          "description": "How many users should be generated in total. The purchases table will be scaled to match, with 10 purchases created per 10 users. This setting does not apply to the products stream.",
          "minimum": 1,
          "order": 0,
          "title": "Count",
          "type": "integer"
        },
        "parallelism": {
          "default": 4,
          "description": "How many parallel workers should we use to generate fake data?  Choose a value equal to the number of CPUs you will allocate to this source.",
          "minimum": 1,
          "order": 4,
          "title": "Parallelism",
          "type": "integer"
        },
        "records_per_slice": {
          "default": 1000,
          "description": "How many fake records will be in each page (stream slice), before a state message is emitted?",
          "minimum": 1,
          "order": 2,
          "title": "Records Per Stream Slice",
          "type": "integer"
        },
        "seed": {
          "default": -1,
          "description": "Manually control the faker random seed to return the same values on subsequent runs (leave -1 for random)",
          "order": 1,
          "title": "Seed",
          "type": "integer"
        }
      },
      "required": [],
      "title": "Faker Source Spec",
      "type": "object"
    },
    "documentationUrl": "https://docs.airbyte.com/integrations/sources/faker",
    "supportsDBT": false,
    "supportsNormalization": false
  },
  "suggestedStreams": {
    "streams": [
      "users",
      "products",
      "purchases"
    ]
  },
  "supportLevel": "community",
  "supportsDataActivation": false,
  "supportsFileTransfer": false,
  "tags": [
    "language:python",
    "cdk:python"
  ],
  "tombstone": false
}
