Fulcrum Layers API

Layers and tile sources used by forms

OpenAPI Specification

fulcrum-layers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Fulcrum Audio Layers API
  description: The Fulcrum API is a RESTful HTTP API for the Fulcrum field data collection platform. It provides programmatic access to forms, records, media (photos, videos, audio, signatures), choice lists, classification sets, projects, layers, memberships, roles, webhooks, ad hoc query and SQL execution, and changesets. Requests and responses use JSON and authenticate with an X-ApiToken header issued from a Fulcrum account.
  version: 0.0.1
  contact:
    name: Fulcrum
    url: https://www.fulcrumapp.com/
servers:
- url: https://api.fulcrumapp.com/api/v2
  description: Fulcrum production API (v2)
security:
- ApiToken: []
tags:
- name: Layers
  description: Layers and tile sources used by forms
paths:
  /layers.json:
    get:
      tags:
      - Layers
      summary: List layers
      operationId: listLayers
      responses:
        '200':
          description: Layers
          content:
            application/json:
              schema:
                type: object
                properties:
                  layers:
                    type: array
                    items:
                      $ref: '#/components/schemas/Layer'
    post:
      tags:
      - Layers
      summary: Create layer
      operationId: createLayer
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                layer:
                  $ref: '#/components/schemas/Layer'
      responses:
        '200':
          description: Layer created
          content:
            application/json:
              schema:
                type: object
                properties:
                  layer:
                    $ref: '#/components/schemas/Layer'
  /layers/{id}.json:
    parameters:
    - $ref: '#/components/parameters/IdPath'
    get:
      tags:
      - Layers
      summary: Get layer
      operationId: getLayer
      responses:
        '200':
          description: Layer
          content:
            application/json:
              schema:
                type: object
                properties:
                  layer:
                    $ref: '#/components/schemas/Layer'
    put:
      tags:
      - Layers
      summary: Update layer
      operationId: updateLayer
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                layer:
                  $ref: '#/components/schemas/Layer'
      responses:
        '200':
          description: Layer updated
          content:
            application/json:
              schema:
                type: object
                properties:
                  layer:
                    $ref: '#/components/schemas/Layer'
    delete:
      tags:
      - Layers
      summary: Delete layer
      operationId: deleteLayer
      responses:
        '204':
          description: Layer deleted
components:
  parameters:
    IdPath:
      name: id
      in: path
      required: true
      description: Resource identifier (UUID)
      schema:
        type: string
        format: uuid
  schemas:
    Layer:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        type:
          type: string
        url:
          type: string
        attribution:
          type: string
  securitySchemes:
    ApiToken:
      type: apiKey
      in: header
      name: X-ApiToken
      description: Fulcrum API token issued from a Fulcrum account