V7

V7 Classes API

Manage annotation classes (labeling taxonomy).

OpenAPI Specification

v7-labs-classes-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: V7 Darwin Annotations Classes API
  description: 'REST API for the V7 Darwin training-data platform. Manage datasets, register and upload items (images, video, documents), read and import annotations, orchestrate human-in-the-loop workflows and stages, manage annotation classes, and request dataset exports (releases). All requests are authenticated with an `Authorization: ApiKey {key}` header. Paths use the team slug as a path parameter; API keys are scoped to a team and their permissions determine which operations are allowed.'
  termsOfService: https://www.v7labs.com/terms
  contact:
    name: V7 Support
    url: https://docs.v7labs.com
  version: '2.0'
servers:
- url: https://darwin.v7labs.com/api
  description: V7 Darwin production API
security:
- ApiKeyAuth: []
tags:
- name: Classes
  description: Manage annotation classes (labeling taxonomy).
paths:
  /v2/teams/{team_slug}/annotation_classes:
    get:
      operationId: listAnnotationClasses
      tags:
      - Classes
      summary: List annotation classes
      description: Lists the annotation classes for the team.
      parameters:
      - $ref: '#/components/parameters/TeamSlug'
      responses:
        '200':
          description: A list of annotation classes.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/AnnotationClass'
  /v2/teams/{team_slug}/annotation_classes/{class_id}:
    put:
      operationId: updateAnnotationClass
      tags:
      - Classes
      summary: Update annotation class
      parameters:
      - $ref: '#/components/parameters/TeamSlug'
      - name: class_id
        in: path
        required: true
        schema:
          type: integer
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnnotationClass'
      responses:
        '200':
          description: The updated annotation class.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnnotationClass'
components:
  parameters:
    TeamSlug:
      name: team_slug
      in: path
      required: true
      description: The slug of the team that owns the resource.
      schema:
        type: string
  schemas:
    AnnotationClass:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        annotation_types:
          type: array
          items:
            type: string
            enum:
            - bounding_box
            - polygon
            - keypoint
            - line
            - tag
            - ellipse
            - cuboid
            - mask
        description:
          type: string
        metadata:
          type: object
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: 'Team-scoped API key sent as `Authorization: ApiKey {key}`. Generate keys at https://darwin.v7labs.com/?settings=api-keys. Key permissions determine which operations are allowed.'