CargoDocs Issuer API

The CargoDocs Issuer API enables container lines, NVOCCs, and bulk/tanker carriers to manage electronic straight and negotiable bills of lading and sea waybills at origin or destination from within their TMS. It supports sharing draft eBoL/SWB for shipper approval, signing and issuing original eBoL/SWB, receiving surrendered original electronic bills of lading, and managing amendment requests or splits of an eBoL.

OpenAPI Specification

cargodocs-issuer-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: CargoDocs Issuer API
  description: >-
    The CargoDocs Issuer API enables container lines or NVOCCs to manage
    relevant tasks relating to electronic straight and negotiable bills of
    lading at Origin or Destination from within their TMS. The API supports
    sharing draft eBoL/SWB for shipper approval, signing and issuing original
    eBoL/SWB, receiving surrendered original electronic bills of lading, and
    managing Amendment Requests or Splits of an eBoL.
  version: 3.0.0
  contact:
    name: ICE Digital Trade (essDOCS)
    url: https://www.essdocs.com
  license:
    name: Proprietary
    url: https://www.essdocs.com
servers:
  - url: https://api-test.cargodocs.com/v3
    description: Sandbox / Test Environment
  - url: https://api.uat.cargodocs.com/v3
    description: UAT Environment
  - url: https://api.cargodocs.com/v3
    description: Production Environment
security:
  - bearerAuth: []
paths:
  /issuer/draft:
    post:
      operationId: createDraft
      summary: CargoDocs Create Draft eBoL
      description: >-
        Shares a draft electronic Bill of Lading (eBoL) or Sea Waybill (SWB)
        for approval by the shipper before signing and issuing.
      tags:
        - Issuance
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DraftRequest'
      responses:
        '200':
          description: Draft created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DraftResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
  /issuer/issue:
    post:
      operationId: issueDocument
      summary: CargoDocs Issue eBoL
      description: >-
        Signs and issues the original electronic Bill of Lading (eBoL) or
        Sea Waybill (SWB) after the draft has been approved.
      tags:
        - Issuance
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IssueRequest'
      responses:
        '200':
          description: Document issued successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IssueResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
  /issuer/re-issue:
    post:
      operationId: reIssue
      summary: CargoDocs Re-Issue eBoL
      description: >-
        Allows the issuer to re-issue an electronic Bill of Lading, for
        example after an amendment request or when managing splits of an eBoL.
      tags:
        - Issuance
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReIssueRequest'
      responses:
        '200':
          description: Document re-issued successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReIssueResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
  /issuer/surrender:
    post:
      operationId: receiveSurrender
      summary: CargoDocs Receive Surrendered eBoL
      description: >-
        Receives the surrendered original electronic Bill of Lading from the
        holder, typically for cargo release at destination.
      tags:
        - Surrender
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SurrenderRequest'
      responses:
        '200':
          description: Surrender received successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SurrenderResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
  schemas:
    DraftRequest:
      type: object
      properties:
        transactionId:
          type: string
          description: The unique identifier for the transaction
        documentType:
          type: string
          description: Type of document (e.g., eBoL, SWB)
          enum:
            - eBoL
            - SWB
        shipperDetails:
          type: object
          description: Details of the shipper
        consigneeDetails:
          type: object
          description: Details of the consignee
        cargoDetails:
          type: object
          description: Details of the cargo
    DraftResponse:
      type: object
      properties:
        draftId:
          type: string
          description: The unique identifier for the draft
        status:
          type: string
          description: Status of the draft
        transactionId:
          type: string
          description: The associated transaction identifier
    IssueRequest:
      type: object
      properties:
        draftId:
          type: string
          description: The identifier of the approved draft to issue
        transactionId:
          type: string
          description: The unique identifier for the transaction
    IssueResponse:
      type: object
      properties:
        documentId:
          type: string
          description: The unique identifier for the issued document
        status:
          type: string
          description: Status of the issued document
        issuedAt:
          type: string
          format: date-time
          description: Timestamp when the document was issued
    ReIssueRequest:
      type: object
      properties:
        documentId:
          type: string
          description: The identifier of the document to re-issue
        reason:
          type: string
          description: Reason for re-issuance
    ReIssueResponse:
      type: object
      properties:
        documentId:
          type: string
          description: The identifier of the re-issued document
        status:
          type: string
          description: Status of the re-issued document
    SurrenderRequest:
      type: object
      properties:
        documentId:
          type: string
          description: The identifier of the document being surrendered
        transactionId:
          type: string
          description: The unique identifier for the transaction
    SurrenderResponse:
      type: object
      properties:
        documentId:
          type: string
          description: The identifier of the surrendered document
        status:
          type: string
          description: Status after surrender
tags:
  - name: Issuance
    description: Endpoints for drafting, issuing, and re-issuing electronic bills of lading
  - name: Surrender
    description: Endpoints for receiving surrendered electronic bills of lading