openapi: 3.2.0 info: description: 'WARNING: This API is unstable and is meant for experimentation only. Do not use this API in production. The endpoints and schemas referenced in this documentation will be changed or removed without notice and without any backwards compatibility guarantee. Note that even though this API is unstable, it is still connected to production data, so use with caution.' title: Config Unstable Log Primary Key API version: UNSTABLE tags: - name: LogPrimaryKey paths: /api/unstable/config/log-primary-keys: get: operationId: ListLogPrimaryKeys parameters: - description: 'Sets the preferred number of items to return per page. If set to `0`, the server will use its default value. Regardless of the value specified, clients must never assume how many items will be returned.' in: query name: page.max_size schema: type: integer format: int64 - description: 'An opaque page token that identifies which page the client should request. An empty value indicates the first page.' in: query name: page.token schema: type: string - description: Filters results by slug, where any LogPrimaryKey with a matching slug in the given list (and matches all other filters) will be returned. in: query name: slugs style: form explode: true schema: type: array items: type: string - description: Filters results by name, where any LogPrimaryKey with a matching name in the given list (and matches all other filters) will be returned. in: query name: names style: form explode: true schema: type: array items: type: string responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/configunstableListLogPrimaryKeysResponse' '500': description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/apiError' default: description: An undefined error response. content: application/json: schema: $ref: '#/components/schemas/genericError' tags: - LogPrimaryKey summary: List log primary keys x-summary-source: derived post: operationId: CreateLogPrimaryKey responses: '200': description: A successful response containing the created LogPrimaryKey. content: application/json: schema: $ref: '#/components/schemas/configunstableCreateLogPrimaryKeyResponse' '400': description: Cannot create the LogPrimaryKey because the request is invalid. content: application/json: schema: $ref: '#/components/schemas/apiError' '409': description: Cannot create the LogPrimaryKey because there is a conflict with an existing LogPrimaryKey. content: application/json: schema: $ref: '#/components/schemas/apiError' '500': description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/apiError' default: description: An undefined error response. content: application/json: schema: $ref: '#/components/schemas/genericError' tags: - LogPrimaryKey requestBody: content: application/json: schema: $ref: '#/components/schemas/configunstableCreateLogPrimaryKeyRequest' required: true summary: Create log primary key x-summary-source: derived /api/unstable/config/log-primary-keys/{slug}: delete: operationId: DeleteLogPrimaryKey parameters: - in: path name: slug required: true schema: type: string responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/configunstableDeleteLogPrimaryKeyResponse' '400': description: Cannot delete the LogPrimaryKey because it is in use. content: application/json: schema: $ref: '#/components/schemas/apiError' '404': description: Cannot delete the LogPrimaryKey because the slug does not exist. content: application/json: schema: $ref: '#/components/schemas/apiError' '500': description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/apiError' default: description: An undefined error response. content: application/json: schema: $ref: '#/components/schemas/genericError' tags: - LogPrimaryKey summary: Delete log primary key x-summary-source: derived get: operationId: ReadLogPrimaryKey parameters: - in: path name: slug required: true schema: type: string responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/configunstableReadLogPrimaryKeyResponse' '404': description: Cannot read the LogPrimaryKey because the slug does not exist. content: application/json: schema: $ref: '#/components/schemas/apiError' '500': description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/apiError' default: description: An undefined error response. content: application/json: schema: $ref: '#/components/schemas/genericError' tags: - LogPrimaryKey summary: Read log primary key x-summary-source: derived components: schemas: configunstableDeleteLogPrimaryKeyResponse: type: object configunstableCreateLogPrimaryKeyResponse: properties: log_primary_key: $ref: '#/components/schemas/configunstableLogPrimaryKey' type: object configv1PageResult: properties: next_token: description: 'An opaque page token that identifies the next page of items that the client should request. An empty value indicates that there are no more items to return.' type: string type: object apiError: properties: code: description: An optional private error code whose values are undefined. format: int32 type: integer message: description: An error message describing what went wrong. type: string type: object configunstableCreateLogPrimaryKeyRequest: properties: log_primary_key: $ref: '#/components/schemas/configunstableLogPrimaryKey' dry_run: description: If `true`, validates the specified configuration without creating the LogPrimaryKey. If the specified configuration is valid, the endpoint returns a partial response without the LogPrimaryKey. If the specified configuration is invalid, the endpoint returns an error. type: boolean type: object configunstableListLogPrimaryKeysResponse: properties: page: $ref: '#/components/schemas/configv1PageResult' log_primary_keys: items: $ref: '#/components/schemas/configunstableLogPrimaryKey' type: array type: object configunstableLogPrimaryKey: properties: slug: description: The unique identifier of the LogPrimaryKey. If a `slug` isn't provided, one is generated based on the `name` field. You can't modify this field after the LogPrimaryKey is created. type: string name: description: The name of the LogPrimaryKey. You can modify this value after the LogPrimaryKey is created. type: string created_at: description: Timestamp of when the LogPrimaryKey was created. Cannot be set by clients. format: date-time readOnly: true type: string updated_at: description: Timestamp of when the LogPrimaryKey was last updated. Cannot be set by clients. format: date-time readOnly: true type: string version: format: int64 type: integer fields: items: $ref: '#/components/schemas/LogPrimaryKeyLogPrimaryKeyField' type: array type: object configunstableReadLogPrimaryKeyResponse: properties: log_primary_key: $ref: '#/components/schemas/configunstableLogPrimaryKey' type: object genericError: additionalProperties: true type: object LogPrimaryKeyLogPrimaryKeyField: properties: name: description: name of the field as it will be referred to in queries; could be omitted and targeted_field would be used as the PK name in that case type: string source: description: source is the name of the source field type: string type: object