openapi: 3.0.1
info:
  title: Well Barrier API
  version: 1.0.0
  x-product-id: DrillPlan-WellBarrier-API
  description: |
    Provides access to DrillPlan's well barrier schematics.  
    ```plain {% title="Client ID" %}
    fwk-drillplan.slbservice.com
    ```
tags:
  - name: Well Barriers
    description: Get the well barrier illustrations and their associated activities
security:
  - bearer: []
    appkey: []
paths:
  /activity-associations/by-plan/{planId}:
    get:
      tags:
        - Well Barriers
      summary: Get Well Barrier illustrations and associated activities
      parameters:
        - name: planId
          in: path
          description: The ID of the plan
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/dataPartitionHeader'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/Slb.DrillPlan.WellBarrier.Shared.Model.DTO.ActivityAssociationsResultDto
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails'
  /by-plan/{planId}/illustrations/{illustrationId}:
    get:
      tags:
        - Well Barriers
      summary: Get Well Barrier illustration
      parameters:
        - name: illustrationId
          in: path
          description: The ID of the Well Barrier Illustration
          required: true
          schema:
            type: string
        - name: planId
          in: path
          description: The ID of the plan
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/dataPartitionHeader'
      responses:
        '200':
          description: Success
          content:
            application/pdf:
              schema:
                type: string
                format: binary
components:
  parameters:
    dataPartitionHeader:
      name: slb-partition-id
      in: header
      description: The SLB data partition id.
      required: true
      schema:
        type: string
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: User Token from SLB Authenticator Service
    appkey:
      type: apiKey
      description: App key generated in the Delfi Developer Portal
      name: appkey
      in: header
  schemas:
    Microsoft.AspNetCore.Mvc.ProblemDetails:
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
      additionalProperties: true
    Slb.DrillPlan.WellBarrier.Shared.Model.DTO.ActivityAssociationsDto:
      type: object
      properties:
        l3ActivityId:
          type: string
          nullable: true
        l6ActivityId:
          type: string
          nullable: true
        illustrationName:
          type: string
          nullable: true
        illustrationId:
          type: string
          nullable: true
      additionalProperties: false
    Slb.DrillPlan.WellBarrier.Shared.Model.DTO.ActivityAssociationsResultDto:
      type: object
      properties:
        planId:
          type: string
          nullable: true
        wellBarrierId:
          type: string
          nullable: true
        activityAssociations:
          type: array
          items:
            $ref: >-
              #/components/schemas/Slb.DrillPlan.WellBarrier.Shared.Model.DTO.ActivityAssociationsDto
          nullable: true
      additionalProperties: false
servers:
  - url: https://eu-api.delfi.slb.com/drillplan/wellbarrier/v1
    description: ProdEU
  - url: https://api.delfi.slb.com/drillplan/wellbarrier/v1
    description: ProdUS
