---
title: "Resolve a Sendinel project for Synchronex reconciliation"
method: GET
path: "/service/projects/{projectId}"
---

# Resolve a Sendinel project for Synchronex reconciliation

`GET /service/projects/{projectId}`

## Request

- Base URL: `https://sendinel.ai/api/v1`
- URL: `https://sendinel.ai/api/v1/service/projects/{projectId}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://sendinel.ai/oauth/authorize`, token URL `https://sendinel.ai/oauth/token`)

Read-only first-party lookup for existing Sendinel projects. Requires the Synchronex shared service token, or a first-party service key / scoped JWT carrying `service:provision`. Returns project, org, site, and Synchronex crosswalk fields only. Excludes credentials, encrypted keys, and billing data.

## Path parameters

- `projectId` string, uuid, required

## Response `200`

Project reconciliation payload

- ServiceProjectLookupResponse
  - `project_id` string, uuid, required
  - `org_id` string, uuid, required
  - `project_name` string, required
  - `plan` string, required
  - `sites` object[], required
    - `site_id` string, uuid, required
    - `site_name` string, required
    - `sending_domain` string, nullable
    - `website_url` string, uri, nullable
  - `synchronex_team_id` string, nullable
  - `synchronex_workspace_id` string, nullable
  - `synchronex_workspace_name` string, nullable
  - `synchronex_brand_id` string, nullable
  - `synchronex_brand_name` string, nullable

## Other responses

- `403`: Missing first-party service access
- `404`: Project not found

---

[API](https://skmtc.dev/sendinel/apis/sendinel-api.md) · [All operations](https://skmtc.dev/sendinel/apis/sendinel-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sendinel/apis/sendinel-api/revisions/20b2c6d5616d?raw)
