Portant Docs

Workflows

Workflow(ワークフロー)は、最もシンプルな形では、ソースデータを出力ドキュメントに変換するオートメーションのステージを表します。

Fields(フィールド)

FieldTypeEditableDescription
idStringfalseワークフローの一意のIDです。すべてのリクエストでワークフローを参照する際に使用します。
nameStringtrueワークフローの名前です。
colorStringtruePortant Workflow におけるワークフローアイコンの色を、# を先頭に付けた16進数文字列で表したものです。
iconStringtruePortant Workflow で使用されるアイコンの名前です。
statusStringfalseワークフローの現在のステータスです。以下のいずれかになります。
- "COMPLETE": ワークフローは実行可能な状態です。
- "INCOMPLETE": ワークフローを実行するには、さらに設定が必要です。
- "ARCHIVED": ワークフローは使用できない状態です。
autoCreateBooleanfalsetrue の場合、ワークフローはソースイベントを監視し、イベントが届くたびに新しいオートメーションを作成します。
ownerOwnerfalseこのワークフローのオーナーです。
teamTeamfalseこのワークフローが属するチームです。
sourceSourcefalseこのワークフローのデータソースです。
documentsDocumentfalseこのワークフローのテンプレートドキュメントです。
outgoingWebhook

Outgoing

Webhook

falseこのワークフローの Outgoing Webhook です。オートメーションイベントの監視に使用します。
createdByApiBooleanfalseワークフローが Developer API 経由で作成された場合に true になります。
createdAtStringfalseワークフローが作成された日時を示す ISO 8601 タイムスタンプです。
updatedAtStringfalseワークフローが最後に更新された日時を示す ISO 8601 タイムスタンプです。

Example(例)

```json
{
    "id": "wkf_kGQK9PBWDT1JCr",
    "name": "Invoice Workflow",
    "icon": "DocumentText",
    "color": "#cccccc",
    "status": "COMPLETE",
    "autoCreate": true,
    "owner": {
        "id": "usr_DsH4TGYXs4XPpB",
        "name": "Blake Lockley",
        "email": "blake@portant.co"
    },
    "team": null,
    "source": {
        "id": "src_NZHJYjlgrvklHb",
        "sourceType": "WEBHOOK",
        "sourceFields": [
            "Order Number",
            "LineItem.Name",
            "LineItem.Price",
        ],
        "webhookUrl": "https://webhooks.portant.co/50c7912b14c7acbe9df32521ec60a27c"
    },
    "documents": [
        {
            "id": "doc_5LGGqC5S78RNS0",
            "documentType": "GOOGLE_DOCS",
            "file": {
                "id": "1uNfBHAKhcgRsiftb7xRpTJRS0k9LY1iX1gUnTOE0zU4",
                "name": "Complete Workflow Please - [Template]",
                "url": "https://docs.google.com/document/d/1uNfBHAKhcgRsiftb7xRpTJRS0k9LY1iX1gUnTOE0zU4/edit?usp=drivesdk",
                "mimeType": "application/vnd.google-apps.document"
            },
            "outputName": "Document for {{First Name}}",
            "pdfPassword": "jeRe/\/\eyWaZH3re",
            "enablePdfPassword": true,
            "enablePdfPreventCopy": false,
            "previewUrl": "https://preview.portant.co/doc_5LGGqC5S78RNS0"
        }
    ],
    "outgoingWebhook": {
        "id": "owc_XY1Ys4gqrpX8cp",
        "webhookUrl": "https://webhook.site/d22c56ab-40ac-4f9a-93ef-02520235c0da"
    },
    "createdByApi": true,
    "createdAt": "2024-08-12T16:20:44.346666+10:00",
    "updatedAt": "2024-08-12T16:20:48.408357+10:00"
}
```

Endpoints(エンドポイント)

すべてのワークフローを一覧表示する

GET /workflows/

API ユーザーが所有する、またはそのチームと共有されているすべての Workflow を返します。

Responses(レスポンス)

Status Body
200 OK Array<Workflow>
403 Unauthorised Error

ワークフローを作成する

POST /workflows/

新しいワークフローを作成します。

Request(リクエスト)

JSON 形式の 部分的な Workflow オブジェクトを指定します。必須フィールドは name のみです。

{
    name: "A simple workflow"
}

オプションのサブコンポーネントとその必須フィールドを含めることで、1 回の POST でワークフロー全体を作成することもできます。

? が付いたフィールドはオプションです。

{
    name: "A complete Workflow from Scratch",
    color?: "#...",
    icon?: "...",
    source?: {
        "sourceFields": ["Field Name 1", "Field Name 2"]
    },
    document?: {
        fileId: "<google file id>"
    },
    outgoingWebhook?: {
        webhookUrl: "<webhook url for event listening>"
    }
}

レスポンス

ステータス ボディ
201 Created Workflow
400 Bad Request Error
403 Unauthorised Error

ワークフローの取得

GET /workflows/<wkf_id>/

IDを指定して特定のワークフローを取得します。

レスポンス

ステータス ボディ
200 OK Workflow
403 Unauthorised Error
404 Not Found Error

ワークフローの更新

PATCH /workflows/<wkf_id>/

IDを指定して特定のワークフローを更新します。

リクエスト

JSON形式の部分的な Workflowオブジェクトです。?が付いたフィールドは省略可能です。

{
    name?: "...",
    color?: "#...",
    icon?: "..."
 }

レスポンス

ステータス ボディ
200 OK Workflow
400 Bad Request Error
403 Unauthorised Error
404 Not Found Error

ワークフローの削除

DELETE /workflows/<wkf_id>/

IDを指定して特定のワークフローを削除します。ワークフローは実際には削除されず、ステータスが"ARCHIVED"に設定されます。アーカイブされたワークフローは、カスタマーサクセスチームに連絡することで復元できます。

レスポンス

ステータス ボディ
204 No Content
400 Bad Request Error
403 Unauthorised Error
404 Not Found Error