feat: implement Chatika account activation job for new club members

This commit is contained in:
masoodafar-web
2025-12-23 22:52:49 +03:30
parent 30144a07c8
commit 288b85a59b
10 changed files with 908 additions and 2 deletions
+421
View File
@@ -0,0 +1,421 @@
{
"info": {
"_postman_id": "a5404a90-7d5a-4e9f-a26b-bb2bc93f19a2",
"name": "hushyar",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
"_exporter_id": "12336342",
"_collection_link": "https://abbas-rahimzadeh-postman.postman.co/workspace/public-workspace~57c702f9-fed1-4b27-b507-0b0252812bf7/collection/12336342-a5404a90-7d5a-4e9f-a26b-bb2bc93f19a2?action=share&source=collection_link&creator=12336342"
},
"item": [
{
"name": "v1",
"item": [
{
"name": "organization",
"item": [
{
"name": "register-user",
"request": {
"method": "POST",
"header": [
{
"key": "X-API-Key",
"value": "{{organizationApiKey}}",
"description": "Organization API Key",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"09123456789\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
},
"description": "Register a new user or get existing user via organization API key. If user is new or has no organization, they will be assigned to this organization and their wallet will be charged with the organization's user_credit."
},
"response": [
{
"name": "success - new user",
"originalRequest": {
"method": "POST",
"header": [
{
"key": "X-API-Key",
"value": "{{organizationApiKey}}",
"description": "Organization API Key",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"09123456789\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "content-type",
"value": "application/json"
}
],
"cookie": [],
"body": "{\n \"id\": 1,\n \"mobile_number\": \"09123456789\",\n \"organization_id\": 1,\n \"organization_title\": \"Test Organization\",\n \"wallet_balance\": 100.0,\n \"is_new_user\": true,\n \"credit_charged\": 100.0\n}"
},
{
"name": "success - existing user",
"originalRequest": {
"method": "POST",
"header": [
{
"key": "X-API-Key",
"value": "{{organizationApiKey}}",
"description": "Organization API Key",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"09123456789\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "content-type",
"value": "application/json"
}
],
"cookie": [],
"body": "{\n \"id\": 1,\n \"mobile_number\": \"09123456789\",\n \"organization_id\": 1,\n \"organization_title\": \"Test Organization\",\n \"wallet_balance\": 100.0,\n \"is_new_user\": false,\n \"credit_charged\": 0.0\n}"
},
{
"name": "invalid api key",
"originalRequest": {
"method": "POST",
"header": [
{
"key": "X-API-Key",
"value": "invalid-api-key",
"description": "Organization API Key",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"09123456789\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "content-type",
"value": "application/json"
}
],
"cookie": [],
"body": "{\n \"error_code\": \"INVALID_API_KEY\",\n \"message\": \"Invalid API key\",\n \"context\": {\n \"api_key_prefix\": \"invalid-\"\n }\n}"
},
{
"name": "organization disabled",
"originalRequest": {
"method": "POST",
"header": [
{
"key": "X-API-Key",
"value": "{{organizationApiKey}}",
"description": "Organization API Key",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"09123456789\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
}
},
"status": "Forbidden",
"code": 403,
"_postman_previewlanguage": "json",
"header": [
{
"key": "content-type",
"value": "application/json"
}
],
"cookie": [],
"body": "{\n \"error_code\": \"ORGANIZATION_DISABLED\",\n \"message\": \"Organization is disabled\",\n \"context\": {\n \"organization_id\": 1\n }\n}"
},
{
"name": "organization expired",
"originalRequest": {
"method": "POST",
"header": [
{
"key": "X-API-Key",
"value": "{{organizationApiKey}}",
"description": "Organization API Key",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"09123456789\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
}
},
"status": "Forbidden",
"code": 403,
"_postman_previewlanguage": "json",
"header": [
{
"key": "content-type",
"value": "application/json"
}
],
"cookie": [],
"body": "{\n \"error_code\": \"ORGANIZATION_EXPIRED\",\n \"message\": \"Organization has expired\",\n \"context\": {\n \"organization_id\": 1,\n \"expires_at\": \"2024-01-01T00:00:00\"\n }\n}"
},
{
"name": "invalid mobile format",
"originalRequest": {
"method": "POST",
"header": [
{
"key": "X-API-Key",
"value": "{{organizationApiKey}}",
"description": "Organization API Key",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"01234567890\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
}
},
"status": "Unprocessable Entity",
"code": 422,
"_postman_previewlanguage": "json",
"header": [
{
"key": "content-type",
"value": "application/json"
}
],
"cookie": [],
"body": "{\n \"mobile_number\": \"String should match pattern '^09\\\\d{9}$'\"\n}"
},
{
"name": "missing api key header",
"originalRequest": {
"method": "POST",
"header": [],
"body": {
"mode": "raw",
"raw": "{\n \"mobile_number\": \"09123456789\"\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{baseURL}}/api/v1/organizations/register-user",
"host": [
"{{baseURL}}"
],
"path": [
"api",
"v1",
"organizations",
"register-user"
]
}
},
"status": "Unprocessable Entity",
"code": 422,
"_postman_previewlanguage": "json",
"header": [
{
"key": "content-type",
"value": "application/json"
}
],
"cookie": [],
"body": "{\n \"detail\": [\n {\n \"type\": \"missing\",\n \"loc\": [\"header\", \"x-api-key\"],\n \"msg\": \"Field required\",\n \"input\": null\n }\n ]\n}"
}
]
}
]
}
]
}
],
"event": [
{
"listen": "prerequest",
"script": {
"type": "text/javascript",
"packages": {},
"exec": [
""
]
}
},
{
"listen": "test",
"script": {
"type": "text/javascript",
"packages": {},
"exec": [
""
]
}
}
],
"variable": [
{
"key": "baseURL",
"value": "http://127.0.0.0:8000",
"type": "string"
},
{
"key": "access_token",
"value": "",
"type": "string"
},
{
"key": "accessToken",
"value": ""
},
{
"key": "refreshToken",
"value": ""
},
{
"key": "organizationApiKey",
"value": "",
"type": "string"
}
]
}