1
0
mirror of synced 2026-01-01 18:02:53 -05:00
Files
airbyte/docusaurus/platform_versioned_docs/version-2.0/connector-development/schema-reference.md
devin-ai-integration[bot] 34282926a1 docs: Generate version 2.0 of platform documentation (#68102)
## What

Generates version 2.0 of the Airbyte platform documentation using
Docusaurus's built-in versioning system. This creates a frozen snapshot
of the current documentation that users can reference.

Requested by ian.alton@airbyte.io via [Slack
thread](https://airbytehq-team.slack.com/archives/D08FX8EC9L0/p1760490197805979?thread_ts=1760490197.805979).

Link to Devin run:
https://app.devin.ai/sessions/689693593bac44f4903f476aa17b872e

## How

- Ran `pnpm run docusaurus docs:version:platform 2.0` in the docusaurus
directory
- This automatically:
- Created `platform_versioned_docs/version-2.0/` containing a snapshot
of all current platform docs
- Created `platform_versioned_sidebars/version-2.0-sidebars.json` with
the sidebar navigation structure
  - Updated `platform_versions.json` to add "2.0" to the version list
- Ran prettier to format the JSON files
- Verified the documentation builds successfully locally (build
completed in ~3 minutes with only pre-existing broken anchor warnings)

## Review guide

1. **Verify timing**: Confirm this is the correct time to release
version 2.0 of the documentation
2. **Version order**: Check `docusaurus/platform_versions.json` - verify
"2.0" is first in the array (newest version first)
3. **Build verification**: Ensure CI/Vercel builds pass without errors
4. **Spot check**: Optionally review 2-3 files in
`docusaurus/platform_versioned_docs/version-2.0/` to ensure content
looks reasonable

Note: This is a standard Docusaurus versioning operation that creates a
frozen snapshot of the current "next" documentation. The generated files
are extensive (500+ files) but follow Docusaurus conventions.

## User Impact

Users will see version 2.0 available in the version dropdown on
docs.airbyte.com. This provides a stable reference point for platform
documentation at this point in time. Existing versions (1.6, 1.7, 1.8)
remain unchanged.

## Can this PR be safely reverted and rolled back?

- [x] YES 💚

This is an additive change that doesn't modify existing versioned docs.
Reverting would simply remove version 2.0 from the version list and
delete the associated documentation files.

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: ian.alton@airbyte.io <ian.alton@airbyte.io>
2025-10-14 18:27:24 -07:00

2.1 KiB

Schema Reference

:::note You only need this if you're building a connector with Python or Java CDKs. If you're using Connector Builder, you can use declared schemas instead. :::

This document provides instructions on how to create a static schema for your Airbyte stream, which is necessary for integrating data from various sources. You can check out all the supported data types and examples at this link.

For instance, the example record response for the schema is shown below:

{
  "id": "hashidstring",
  "date_created": "2022-11-22T01:23:45",
  "date_updated": "2023-12-22T01:12:00",
  "total": 1000,
  "status": "published",
  "example_obj": {
    "steps": "walking",
    "count_steps": 30
  },
  "example_string_array": ["first_string", "second_string"]
}

The schema is then translated into the following JSON format. Please note that it's essential to include $schema, type, and additionalProperties: true fields in your schema. Typically, Airbyte schemas require null values for each field to make the stream more reliable if the field doesn't receive any data.

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "additionalProperties": true,
  "properties": {
    "id": {
      "type": ["null", "string"]
    },
    "date_created": {
      "format": "date-time",
      "type": ["null", "string"]
    },
    "date_updated": {
      "format": "date-time",
      "type": ["null", "string"]
    },
    "total": {
      "type": ["null", "integer"]
    },
    "status": {
      "type": ["string", "null"],
      "enum": ["published", "draft"]
    },
    "example_obj": {
      "type": ["null", "object"],
      "additionalProperties": true,
      "properties": {
        "steps": {
          "type": ["null", "string"]
        },
        "count_steps": {
          "type": ["null", "integer"]
        }
      }
    },
    "example_string_array": {
      "items": {
        "type": ["null", "string"]
      }
    }
  }
}