| 1 |
"""
|
| 2 |
Relativity REST Auth Test - Cookie-Based (OIDC/SSO Instance)
|
| 3 |
"""
|
| 4 |
|
| 5 |
import requests
|
| 6 |
import json
|
| 7 |
|
| 8 |
ROOT_SITE = "https://relmtp003.consilio.com/"
|
| 9 |
|
| 10 |
# Paste values from Chrome DevTools > Application > Cookies
|
| 11 |
COOKIES = {
|
| 12 |
"RelativityAuth": "h7LVWeZIwrlrr6q_xs1p3Mgh6iHsbLkVRHecczI3y57YEGL0ODWoLv2_tyiorLqKGOpRUCKU60HJ7ImpT5VTdP3JWgV8mIRLcDRXnr59nHuOpzjjJ1ahALdAm18YapkP5lj52HszODn1kDiy8iZWP1rYOhGNGi54sBWUSLSZ4BhNS6WGiDEf5AWEGd97hP85POPrU2DNQKU-IAUys5PmEBPzA7Cl4CxvdCqCSazGRuW2mfA8jSwr9WBwE-eXBt-ESRF5lX8YdwP1j2CJDDPf_ESkhZQ9kavMOo6D6vQ80-1dkFbvBPhdLPoS89oI8ReyLkiKycoMHRmsI4X9NveUaUv2DyvABLH7J9O8RA1F9OdSXL63O6qnWuxX0dl2M_PmmE7k56xUVPb_AK0GQZJVMxVGeB10JfoCx3ui0qvPttJ_uzQgT8wRHdnDjeYiCD6tjsQRj0bl1XCW2Dyvd1tjfEe2zCgSoojDQXbHkLhOX322HNWFfpkxsETwPwODjXTIpJ3A5CuuvMRqxLUsl-lgZv_IHdVCURn5n1m6zSWic3OfhX_OSh6vlrRds0jZr9bLeWZA4jOBy8X-x6yH7U9GWAY-5WTl9Rf3eiNnyFsD-4SZOg9fBvrheckPeqlfqqTWZcF4RllzaGMRq6dXjMyvtbQrPn1N4EMqqcuxc1FReLSiTFEKZJ_SS8bHPmiynCYR7qvpGPhbsIdl52K6sSN7TODHT49_hzyS8Zf3zBZUrrSS_CyeZB2AA1gR8ePuEH7nYSNSaSm1p7hBH3wYXKhMNo8kTK0pEmMfXw8tLtpW1gu1MIfgB1iemkdBYiP91yp46l42nUJ1ZKI5IbdLJlvx8gWLlW5sMVU5XyLMWDolb0aUL0CDHzAhPeUMsycE-rNIW5oEj2R2YyUcGEuTxomHviSYovyusQsnt2k_9N0Nt7HateWy8J-0GfkNdRDUc-JhOmE1B6K7Op8YtLTHVQ42U_0fhu1_YvzVACAYGMHDb1a3AWvmhErq6bbCFkTl2Nq05rg5D_xohHuVbbqJxYuZiJwV3SZpRbggrigajwp4nFttDOtWPlKfY1ABU5SzkczDt9D8PICOB8W0aNDPZd-oNYL9sNeOrEof6FrQq-y44AKCHFRzBbjnqrPSd7olRArKoz9q11EWpX3utkkDUOjKcYVsccq31yuzbJz2qk_mVtaw5SNoyHj-Zj-HbIYTWqvlWU5lvx8P2pAlbpDeaXouJ-syX4XDGsxMeH_hQPxKgaW2_zEdlk6MABOHhpaJBdUNlSDUzsQ4dMGGVxq82A6UkCA6SUy19H-MbiB1sp4AfrYfNI7duB_UOX8zu17Gnf-Zbr6edQND3Kz0KkF3gVSvfMWHO7oVhDZpw04DSewVucmYIrB4Zyu_wz1840lqmPqOmn5Bar_G2ooUmpRRFVZSkloO1_EmCIOyRIPYcqJuQJ1MBPv1RSOee2bsbOLRZIdm64xnBf8dU2NUSv0-RXwG5v6HvC5P4RXml5McvY4q-9skNtmQAkLvXZ8Z9mg-58N1QrtYlgZw3Jy2EBqvENDjk79w2vgoFtqBjyG_N3yfqu2JGnciX7VMpsFhaLTJDOjxe0MPxgV9AHhmxSPXLyLSjd2IJ-syxJTXwW0LILZAABg5ZbKvtjS3fcdz3NCcoFO1zewj8Dah9WfLoNLZYbog7Q5-sbhlvzt4xl0o9L6HoPda04xya5kdAYd4hp-gX-YpJsAznrUQ0SSavDslTfPPu_vTBidiB37yV2GbhDzkq1WYESufVWpU2NwkNt8knpDvJXHuIKIbJ-vvAC4PMxeZpJ5PGmO2-bUZV-VQmHDvJqOejmXUcV_Y5DH1xt5HHtXaxjc8-p8mdXGXExiEOov9K4lX_QmEqS2dRN9AP4F_l0tsfu8s_iHabM8bF-QGQn1gJupgLhIkFYbNXgx0ShvHF6RefK7iLacT5vCVPN32kkzI3VAMSBrzbF0ftwV9zzuUXmk0UaXb1AdVRZX1NwPV1De8SCvUurnPcj0ReVmCGseTMZzNiaWP4ZCYlqSvbCQhkLgqmLetfpQGfguZDVzEmrFwlNhDdko1wCE7UkZi8pbgPUaNItEv_U8-WtaaicyNb3gH6pueEepIxH58r-09xKPoTwFmi5qKleFBCrPaafze2G2YrwL6Rz4F03DpvqMid7ACs2-b8yCSiMeB9K73yEVD65lM6gAKz4zJF763C2e4VJdUg3xiQrswHuhC2G_PICRcPNYJJzzl3_FsW92HThP-5AsCk5BaUQgjGbbwfl4hMLEAy9O7CbbZTOCyzXXN-1jCsfMb8egGQHTmXIH50IQsDKFfp9mPU_-8LNxfRSwrKq5UqkJmPpn6tnYjMMFy4ilEWGVo7TwX74rudxBj_1d-C7blU4g30WIYlJNixalLr-LPQpskIjr4jTG4uiidS6IFnB2PKab8yWK2ee4fQdGhwcDW8ft_iLyg8Wc5_kkBu1IA1mdkbubZVoD-mmIqQuZHd1bJSQni8skB50jZXTe2RWHOSoqHM1GQTXGrbQz74TlA-uCRdNx7c5x2IxRKiuKh1jgEe2kIq-QJk2lrCD1SadfDaCcksUYgyntZycjDx7ut7sLJqz0Y-Z57pgNiTY2TAmK_Y0bNtreJgAZTcYKh0V1bQhhpVWkXRbXr8lTibNrnPBmTRLSdYbeh58U_",
|
| 13 |
"RelativityIdToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlRrbkFRTWdmZS1KMmJDeE94OXNIZ2pBcVJxTSIsImtpZCI6IjRFNDlDMDQwQzgxRjdCRTI3NjZDMkM0RUM3REIwNzgyMzAyQTQ2QTMifQ.eyJpc3MiOiJSZWxhdGl2aXR5IiwiYXVkIjoiYmQxMGE2MGQtYjhlYy00OTI4LTg0ZWUtNmZjNGYzMGQ5NjEyIiwiZXhwIjoxNzczNzYzNjMwLCJuYmYiOjE3NzM3NjMzMzAsIm5vbmNlIjoiNjM5MDkzNjAxMjg2NjAyNDc4Lk5tVmpOREZqTVdRdE5tTTNaUzAwTlRnMkxXSTVaREV0WkRnNU1EVTFPVFF6TldFMVpUUmpabVF6WTJVdFpqazRZeTAwWVdVekxXSXpPR010T0RoaE9HRXhPRGxqWldaaiIsImlhdCI6MTc3Mzc2MzMzMCwic2lkIjoiOTYxOTcxNTM1NjkyZWRlZDBlMzVkY2Q0MjJmZWE4NzciLCJzdWIiOiJlYm9yZ2VzQHJlZGdyYXZlbGxwLmNvbSIsImF1dGhfdGltZSI6MTc3Mzc2MzMzMCwiaWRwIjoiaWRzcnYiLCJyZWxfdWFpIjoiMTQ5NzIyMjE5IiwicmVsX3VmbiI6IkVtYW51ZWwgTWFubnkiLCJyZWxfdWxuIjoiQm9yZ2VzIiwicmVsX3VuIjoiZWJvcmdlc0ByZWRncmF2ZWxscC5jb20iLCJyZWxfYWNjZXNzIjoiR3JhbnRBY2Nlc3MiLCJjYW5fY2hhbmdlX3Bhc3N3b3JkIjoiVHJ1ZSIsInJlbF9haWQiOiIxYjIyMWIxYi0yM2MzLTQ4MjYtYTc4YS1kMjRkZDk2ZWUzNmYiLCJvcl9sYiI6IkZhbHNlIiwicmVsX2lucyI6IkYzMTAxOEQyLUEzODItNDEyQS1COTFFLUYxMjcwQTVDODY0QSIsInJlbF9vcmlnaW4iOiI5Ni4yNTIuMTEuNjYiLCJhbXIiOlsiT3BlbklEIENvbm5lY3QiXX0.WDHKlqAz-q1vrYVrHlt8fnAs7PH55KncoAHtrdbIblx_IVgFfcxuPoabVZN6wSaroiBaQ5Fllyo6MRRxF96I1nwdQ7vlhiAc83N2GVXu8UMyQSsvcp5p3cnSKGOcOrkqxEMT79l45x9ZwgIINzBRO8-zPZ6VOyrhEhYxsFztj0FxyDDTYDdbXy_4DCM2evtv38mkAWmvVBg9hMEcaseROZ6WY3JuP0i0OGxZ8aShQHNIT2dpbzSeuaFeeyEd4wEatYcrxtg19iCkNCkHaRVcnmkzzr9Kd8SwHpMXdVz2W4dStyhSAF2yCYjeN50rIKSOAI8AJSia7Yldl0y_XDfZaw",
|
| 14 |
"CSRFHolder": "fd3862caf6f64d9fa72eec965da5395b639093421314526546",
|
| 15 |
"dRelativityId": "cquc330ayrdo4k15jtjwvn4y-hfi1cloglwbabcscv5tmg5ev",
|
| 16 |
"RULB": "1",
|
| 17 |
"a99fd71e-eb1b-4750-a391-5ad8cfe32068": "85969b73-2c1a-4055-860d-5052c0ceac24",
|
| 18 |
}
|
| 19 |
|
| 20 |
# The CSRF header value should match the CSRFHolder cookie value
|
| 21 |
CSRF_TOKEN = "paste_CSRFHolder_value_here"
|
| 22 |
|
| 23 |
headers = {
|
| 24 |
"X-CSRF-Header": CSRF_TOKEN,
|
| 25 |
"Content-Type": "application/json"
|
| 26 |
}
|
| 27 |
|
| 28 |
url = f"{ROOT_SITE}/Relativity.REST/api/Relativity.Objects/workspace/-1/object/query"
|
| 29 |
payload = {
|
| 30 |
"request": {
|
| 31 |
"objectType": {"artifactTypeID": 8},
|
| 32 |
"fields": [{"Name": "Name"}],
|
| 33 |
"rowCondition": ""
|
| 34 |
},
|
| 35 |
"start": 1,
|
| 36 |
"length": 5
|
| 37 |
}
|
| 38 |
|
| 39 |
r = requests.post(url, headers=headers, cookies=COOKIES,
|
| 40 |
data=json.dumps(payload), timeout=15)
|
| 41 |
|
| 42 |
print(f"Status: {r.status_code}")
|
| 43 |
if r.status_code == 200:
|
| 44 |
data = r.json()
|
| 45 |
print(f"Total workspaces visible: {data.get('TotalCount')}")
|
| 46 |
for obj in data.get("Objects", []):
|
| 47 |
artifact_id = obj.get("ArtifactID")
|
| 48 |
field_values = obj.get("FieldValues", [])
|
| 49 |
name = field_values[0].get("Value", "?") if field_values else "?"
|
| 50 |
print(f" - [{artifact_id}] {name}")
|
| 51 |
else:
|
| 52 |
print(r.text[:500]) |