---
title: "Get Pipeline Job For Society"
method: GET
path: "/v1/societies/pipeline-job"
tags: ["societies"]
---

# Get Pipeline Job For Society

`GET /v1/societies/pipeline-job`

## Request

- Base URL: `https://api.evidenso.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.evidenso.com/v1/societies/pipeline-job`
- Auth: HTTP bearer

Resolve the most recent pipeline job_id for a Mode 2 society.

The Mode 2 flow goes:
  1. UI → POST /v1/societies/create-from-integrations
     → returns society_uuid + society_key synchronously, but the
     pipeline job_id doesn't exist yet (the orchestrator hasn't
     called digital-twin-api /pipelines/full yet).
  2. Orchestrator (background) does Bronze pushes, then triggers
     /pipelines/full, gets job_id back, stashes it on every
     `society_source_connections` row for that society.
  3. UI polls THIS endpoint with (market, name) until job_id
     appears (could take a few seconds for fast Mode 2 / many
     minutes for heavy Bronze pushes), then switches to polling
     `/api/societies/pipelines/jobs/{job_id}` for live progress.

Returns `{job_id: <uuid>}` once stashed, `{job_id: null}` while the
orchestrator is still pre-pipeline. Mode 1 societies have no
`society_source_connections` row, so this endpoint will keep
returning null for them — Mode 1 callers receive job_id directly
from `/api/societies/pipelines/full` and don't need to dereference.

## Query parameters

- `market` string, required: Slugified market (matches societies.market).
- `name` string, required: Slugified name (matches societies.name).

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/evidenso/apis/persona-rag-api.md) - [All operations](https://skmtc.dev/evidenso/apis/persona-rag-api/llms.txt) - [OpenAPI document](https://skmtc.dev/evidenso/apis/persona-rag-api/revisions/86408c178d4f?raw)
