GET/api/v3/process/{identifier}

Get Bulk Operation Status

Get the current status and progress of a bulk operation, including any errors that may have occurred during processing.

Path Parameters

  • Name
    {identifier}
    Type
    string
    (mandatory)
    Description

    The unique identifier of the bulk operation process returned from bulk endpoints. Replace {identifier} in the URL with the actual process identifier.

Example URL

Request URL

https://app.passcreator.com/api/v3/process/627d21f7-e1a0-4085-84cb-130906cd097c


Authorization

For authorization you need to add a HTTP header to your request:

  • Name
    Authorization
    Type
    string
    (mandatory)
    Description

    HTTP Header that contains your API key. Replace yourApiKeyHere with your actual API key.

Example HTTP Header

HTTP header with authorization

    GET /api/v3/process/627d21f7-e1a0-4085-84cb-130906cd097c HTTP/1.1
    Host: app.passcreator.com
    Authorization: yourApiKeyHere
    Content-Type: application/json
    ...


Returned Values

The response follows the standard API V3 format:

Top-Level Response Properties:

  • Name
    statusCode
    Type
    integer
    (mandatory)
    Description

    HTTP status code. Returns 200 for successful requests or 404 if the process is not found.

  • Name
    success
    Type
    boolean
    (mandatory)
    Description

    Indicates whether the request was successful. true for successful requests, false for errors.

  • Name
    description
    Type
    string
    (mandatory)
    Description

    Human-readable description of the response status. Typically Success for successful requests.

  • Name
    errors
    Type
    array
    (mandatory)
    Description

    Array of error messages. Empty array [] for successful requests. Contains error strings for failed requests (e.g., ["Object not found"]).

  • Name
    count
    Type
    integer
    (mandatory)
    Description

    Number of items in the response data. 1 when a process is found, 0 when not found.

  • Name
    responseMetaData
    Type
    null
    (mandatory)
    Description

    Part of the standard API V3 response structure. Always null for this endpoint as metadata is not applicable to process tracking.

  • Name
    data
    Type
    object | array
    (mandatory)
    Description

    Contains the process tracking information when found (object), or empty array [] when process is not found.

Process Data Properties (nested in data):

  • Name
    data.current
    Type
    integer
    (mandatory)
    Description

    The number of items that have been processed so far in this bulk operation.

  • Name
    data.total
    Type
    integer
    (mandatory)
    Description

    The total number of items to be processed in this bulk operation.

  • Name
    data.createdOn
    Type
    string
    (mandatory)
    Description

    Timestamp in format Y-m-d H:i:s indicating when the bulk operation was initiated (e.g., 2024-01-15 10:30:00).

  • Name
    data.status
    Type
    string
    (mandatory)
    Description

    The current status of the operation. Possible values:

    • in progress: The bulk operation is currently being processed. Items are being created or updated. The data.current value will increment as items are processed.
    • finished: The bulk operation has finished processing all items successfully without any errors. The data.errors field will be null.
    • finished with errors: The bulk operation has completed processing all items, but some items failed. Check the data.errors object for details about which items failed and why.
  • Name
    data.errors
    Type
    object | null
    (mandatory)
    Description

    An object containing error messages keyed by the identifier of the failed item. Will be null if no errors occurred. Each key represents the identifier of a failed item (e.g., userProvidedId or array index), and the value is the error message explaining what went wrong.

Example Responses

Response Examples

{
    "statusCode": 200,
    "success": true,
    "description": "Success",
    "errors": [],
    "count": 1,
    "responseMetaData": null,
    "data": {
        "current": 250,
        "total": 1000,
        "createdOn": "2024-01-15 10:30:00",
        "status": "in progress",
        "errors": null
    }
}


Best Practices

Error Recovery: When errors occur, collect all error messages from the completed process and retry only the failed items in a new bulk operation.

Process Tracking: Store the process identifier immediately after initiating a bulk operation. This ensures you can track the operation even if your application restarts.

Code Examples

Here you can find examples of how to poll this endpoint to track the progress of your bulk operations. Each example shows a complete implementation for periodically checking the process status until completion.

The examples use a sample process identifier (627d21f7-e1a0-4085-84cb-130906cd097c). Replace it with the actual process identifier returned from your bulk operation and replace yourApiKeyHere with your actual API key.

Polling Examples

GET
/api/v3/process/{identifier}
#!/bin/bash
PROCESS_ID="627d21f7-e1a0-4085-84cb-130906cd097c"
API_KEY="yourApiKeyHere"

while true; do
  RESPONSE=$(curl -s -X GET \
    "https://app.passcreator.com/api/v3/process/$PROCESS_ID" \
    -H "Authorization: $API_KEY" \
    -H "Content-Type: application/json")

  STATUS=$(echo $RESPONSE | jq -r '.data.status')
  CURRENT=$(echo $RESPONSE | jq -r '.data.current')
  TOTAL=$(echo $RESPONSE | jq -r '.data.total')

  echo "Progress: $CURRENT/$TOTAL - Status: $STATUS"

  if [ "$STATUS" = "finished" ] || [ "$STATUS" = "finished with errors" ]; then
    echo "Process completed!"
    echo $RESPONSE | jq '.'
    break
  fi

  sleep 5
done