MasterList V2 API
MasterList V2 API
Health Check
The health-check will show return status 200 with text body:
URL: /master-list/health-check
Method: GET
Example Response:
This is Master List V2 API!
Service Description
The service-description will show following information for an API:
Gives the Python Version the API using
Gives the list of all installed Python packages
Gives the name of API
Gives all the available versions
Gives a list of middleware being used
Gives all available routes for each versions.
URL: /master-list/service-description
Method: GET
Example Response:
{
"user_id": "1",
"request_from": "dev testing the GET data",
"request_id": "master_list-request-id-4a7f8742-a5cb-4f2f-82f9-1c1e45792c36",
"trace_id": "master_list-trace-id-35e9d517-2efb-4185-a8af-2d836a34f0f9",
"data": {
"python_version": "3.9.5",
"installed_packages": [
"falcon==3.1.0",
...
],
"name": "master_list",
"versions": [
"v2"
],
"middleware": [
"FalconHealthCheckMiddleware",
"FalconLoggerSetupMiddleware",
"FalconResponseGeneratorMiddleware"
],
"routes": {
"v2": {
"brief-category": [
"delete",
"get",
"get_filter",
"post",
"put"
],
...
}
}
}
}
GIDPrefix Resource
- class v2.resources.gid_prefix.GIDPrefixResource
GID Prefix Resource Class
# note:: Allowed Methods: GET / POST / PUT / DELETE
GET Method
- GIDPrefixResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
GID Prefix GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/gid-prefix/<:id>
Response Object:
"data": [ { "id": 1, "short_name": "rane_subject", "name": "Rane Subject", "display_name": "Rane Subject", "status": "active", "slug": "rane-subject" } ]
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/gid-prefix
Response Object:
"data": [ { "id": 1, "short_name": "rane_subject", "name": "Rane Subject", "display_name": "Rane Subject", "status": "active", "slug": "rane-subject" }, { "id": 2, "short_name": "product_and_service", "name": "Product & Service", "display_name": "Product & Service", "status": "active", "slug": "product-and-service" }, ]
BriefCategory Resource
- class v2.resources.brief_category.BriefCategoryResource
Brief Category Resource Class
# note:: Allowed Methods: GET / POST / PUT / DELETE
- on_delete_domain(req: Request, resp: Response)
Brief Category DELETE domain Method
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category-domain
Request Object:
# attributes / values description { "category": list of category ids that need to be updated "excluded_domain": list of domains to add } # Example { "category": [1, 3, 4], "excluded_domain": ["domain_1.com", "abc.net"] }
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "NBC", "name": "New Brief Category", "display_name": "New Brief Category", "status": "active", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "domain_2.com", ] }, "gid": "13-1", "slug": "brief-category+new-brief-category", } ], ... }
- on_get_with_deleted(req: Request, resp: Response)
Sends all records including status deleted
- on_post_domain(req: Request, resp: Response)
Brief Category POST domain Method
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category-domain
Request Object:
# attributes / values description { "category": list of category ids that need to be updated "excluded_domain": list of domains to add } # Example { "category": [1, 3, 4], "excluded_domain": ["domain_3.com", "domain_4.com"] }
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "NBC", "name": "New Brief Category", "display_name": "New Brief Category", "status": "active", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "domain_1.com", "domain_2.com", "abc.net" ] }, "gid": "13-1", "slug": "brief-category+updated-new-brief-category", } ], ... }
- on_post_filter_by_gid(request: Request, resp: Response)
Filter brief categories based on received category gid/id
- on_put_order(req: Request, resp: Response, primary_key: int)
Save subcategory order for the given category
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category/order/<:category-id>
Request Object:
# attributes / values description [ <subcategory-id>, <subcategory-id>, <subcategory-id>, ] # Example [ 1321 1280 1282 ]
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ <subcat-id>, <subcat-id>, <subcat-id>, <subcat-id> ] }
- table
alias of
BriefCategoryTable
GET Method
- BriefCategoryResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Brief Category GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "BC1", "name": "Brief Category One", "display_name": "Brief Category One", "status": "active", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "slug": "brief-category+brief-category-one", "topics": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1", "slug": "brief-topic+brief-topic-one", } ] } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category
- query_string parameter:
- with_domain:
URL: https://stag.api.ranenetwork.com/master-list/v2/brief-category?with_domain by default this is false and won’t return the excluded domain of categories to improve performances
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "BC1", "name": "Brief Category One", "display_name": "Brief Category One", "status": "active", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "slug": "brief-category+brief-category-one", "topics": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1", "slug": "brief-topic+brief-topic-one", } ] }, { "id": 2, "short_name": "BC2", "name": "Brief Category Two", "display_name": "Brief Category Two", "status": "active", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "bbc.com" ] }, "gid": "13-2", "topics": [], "slug": "brief-category+brief-category-two" }, { "id": 3, "short_name": "BC3", "name": "Brief Category Three", "display_name": "Brief Category Three", "status": "active", "parent_id": 1, "legacy_id": null, "domain": { "exclude": [ "mheecha.com" ] }, "gid": "13-3", "topics": [], "slug": "brief-category+brief-category-three" } ] }
POST Method
- BriefCategoryResource.on_post(req: Request, resp: Response)
Brief Category POST Method
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category
Request Object:
# attributes / values description [ { "name": name of the brief-category, [required] "short_name": short name for the brief-category, [required] "display_name": display name for the brief-category, [required] "parent_id": foreign key int value of parent id, [optional] "topics": foreign key int value topic table, [optional] "legacy_id": publishing v1 category/subcategory id, [optional] "domain": json data for domain, [optional] } ] # Example [ { "name": "New Brief Category", "short_name": "NBC", "display_name": "New Brief Category", "topics": [1], "domain": { "exclude": ["bbc.com"] } } ]
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 91, "short_name": "NBC", "name": "New Brief Category", "display_name": "New Brief Category", "status": "active", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "bbc.com" ] }, "gid": "13-91", "slug": "brief-category+new-brief-category", "topics": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1", "slug": "brief-topic+brief-topic-one" } ] } ] }
PUT Method
- BriefCategoryResource.on_put(req: Request, resp: Response, primary_key: int = None)
Brief Category PUT Method
To update single object:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category/<:id>
Request Object:
# attributes / values description { "name": name of the brief-category, [optional] "short_name": short name for the brief-category, [optional] "display_name": display name for the brief-category, [optional] "parent_id": foreign key int value of parent id, [optional] "legacy_id": publishing v1 category/subcategory id, [optional] "topics": foreign key int value topic table, [required] "domain": json data for domain, [optional] } # Example { "name": "Updated New Brief Category", "topics": [1], "legacy_id": 1, }
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 91, "short_name": "NBC", "name": "Updated New Brief Category", "display_name": "New Brief Category", "status": "active", "parent_id": null, "legacy_id": 1, "domain": { "exclude": [ "bbc.com" ] }, "gid": "13-91", "slug": "brief-category+updated-new-brief-category", "topics": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1", "slug": "brief-topic+brief-topic-one", } ] } ] }
To update bulk objects:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category
Request Object:
# attributes / values description [ { "id": id of the brief-category, [required] "name": name of the brief-category, [optional] "short_name": short name for the brief-category, [optional] "display_name": display name for the brief-category, [optional] "parent_id": foreign key int value of parent id, [optional] "legacy_id": publishing v1 category/subcategory id, [optional] "topics": foreign key int value topic table, [required] "domain": json data for domain, [optional] } ] # Example [ { "id": 1, "name": "Update Brief Category One", "legacy_id": 1, "topics: [] }, { "id": 2, "name": "Updated Brief Category Two", "topics": [1], "domain" : { "exclude": ["apple.com". "microsoft.com"] } } ]
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "active", "parent_id": null, "legacy_id": 1, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "slug": "brief-category+updated-new-brief-category-one", "topics": [] }, { "id": 2, "short_name": "BC2", "name": "Updated New Brief Category Two", "display_name": "Brief Category Two", "status": "active", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "apple.com", "microsoft.com" ] }, "gid": "13-2", "slug": "brief-category+updated-new-brief-category-two", "topics": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1", "slug": "brief-topic+brief-topic-one", } ] } ] }
When
<:id>on url is sent along with payload on bulk, the process will be similar to bulk process, the url<:id>will also be added to list of ids received from payload.
DELETE Method
- BriefCategoryResource.on_delete(req: Request, resp: Response, primary_key: Optional[int] = None)
Brief Category DELETE Method
To delete single object:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "topics": [], "slug": "brief-category+updated-new-brief-category-one", } ] }
To delete multiple objects:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category
Request Object:
# attributes / values description { "ids": [<:ids>] list of comma separated ids } # Example { "ids": [1,2] }
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "slug": "brief-category+updated-new-brief-category-one", "topics": [] }, { "id": 2, "short_name": "BC2", "name": "Updated New Brief Category Two", "display_name": "Brief Category Two", "status": "deleted", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "apple.com", "microsoft.com" ] }, "gid": "13-2", "slug": "brief-category+updated-new-brief-category-two", "topics": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1", "slug": "brief-topic+brief-topic-one", } ] } ] }
When
<:id>on url is sent along with payload on bulk, the process will be similar to bulk process, the url<:id>will also be added to list of ids received from payload.
FILTER Method
- BriefCategoryResource.on_get_filter(req: Request, resp: Response, primary_key: Optional[int] = None)
Brief Category filter Method
To filter single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category/filter/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "slug": "brief-category+updated-new-brief-category-one", "topics": [], "sub_categories": [ { "id": 3, "short_name": "BC3", "name": "Brief Category Three", "display_name": "Brief Category Three", "status": "active", "parent_id": 1, "legacy_id": null, "domain": { "exclude": [ "mheecha.com" ] }, "gid": "13-3", slug="brief-category+brief-category-three", "topics": [] } ] } ] }
To filter multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category/filter
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "topics": [], "sub_categories": [ { "id": 3, "short_name": "BC3", "name": "Brief Category Three", "display_name": "Brief Category Three", "status": "active", "parent_id": 1, "legacy_id": null, "domain": { "exclude": [ "mheecha.com" ] }, "gid": "13-3", "topics": [], "slug": "brief-category+brief-category-three" } ] }, { "id": 2, "short_name": "BC2", "name": "Updated New Brief Category Two", "display_name": "Brief Category Two", "status": "deleted", "parent_id": null, "legacy_id": null, "domain": { "exclude": [ "apple.com", "microsoft.com" ] }, "gid": "13-2", "topics": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1" } ], "sub_categories": [] } ] }
BriefTopic Resource
- class v2.resources.brief_topic.BriefTopicResource
Brief Topic Resource Class
# note:: Allowed Methods: GET / POST / PUT / DELETE
- on_get_query_expression(req: Request, resp: Response)
Sends all records having query_expression and status active
- on_get_with_deleted(req: Request, resp: Response)
Sends all records including status deleted
GET Method
- BriefTopicResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Brief Topic GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/brief-topic/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "name": "topic1", "short_name": "t1", "display_name": "Topic 1", "status": "active", "type": "standard", "query_expression": null, "gid": "14-1", "legacy_id": null, "slug": "brief-topic+topic1", "categories": [ { "id": 54, "short_name": "NBC", "name": "Updated New Brief Category", "display_name": "New Brief Category", "status": "deleted", "parent_id": null, "gid": "13-54", "slug": "brief-category+updated-new-brief-category", } ] } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/brief-topic
- query_string parameter :
- with_domain :
URL: https://stag.api.ranenetwork.com/master-list/v2/brief-category?with_domain by default this is false and won’t return the excluded domain of categories to improve performances
- with_query_expression:
URL: https://stag.api.ranenetwork.com/master-list/v2/brief-category?with_query_expression by default this is false and won’t return the query expression of topics to improve performances
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "name": "Brief Topic One", "short_name": "BT1", "display_name": "Brief Topic One", "status": "active", "type": "standard", "query_expression": null, "legacy_id": null, "gid": "14-1", "slug": "brief-topic+brief-topic-one", "categories": [ { "id": 1, "short_name": "BC1", "name": "Brief Category One", "display_name": "Brief Category One", "status": "active", "parent_id": null, "legacy_id": 1, "slug": "brief-category+brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" } ] }, { "id": 2, "name": "Brief Topic Two", "short_name": "BT2", "display_name": "Brief Topic Two", "status": "active", "type": "standard", "query_expression": null, "legacy_id": null, "gid": "14-2", "slug": "brief-topic+brief-topic-two", "categories": [ { "id": 1, "short_name": "BC1", "name": "Brief Category One", "display_name": "Brief Category One", "status": "active", "parent_id": null, "legacy_id": 1, "slug": "brief-category+brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" } ] } ] }
POST Method
- BriefTopicResource.on_post(req: Request, resp: Response)
Brief Topic POST Method
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-topic
Request Object:
# attributes / values description [ { "name": name of the brief-topic, [required] "short_name": short name for the brief-topic, [required] "display_name": display name for the brief-topic, [required] "type": type of the topic (standard / company) default to standard, [optional] "query_expression": query expression for the topic, [optional] "categories": list of BriefCategoryTable ids [optional] "legacy_id": "legacy_id": publishing v1 topic id, [optional] } ] # Example [ { "name":"New Brief Topic", "display_name":"New Brief Topic", "short_name":"NBT", "query_expression": {"expression": ["apple"]}, "categories": [1,2] } ]
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 55, "name": "New Brief Topic", "short_name": "NBT", "display_name": "New Brief Topic", "status": "active", "type": "standard", "query_expression": { "expression": [ "apple" ] }, "legacy_id": null, "gid": "14-55", "slug": "brief-topic+new-brief-topic", "categories": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "slug": "brief-category+updated-new-brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" }, { "id": 2, "short_name": "BC2", "name": "Updated New Brief Category Two", "display_name": "Brief Category Two", "status": "deleted", "parent_id": null, "legacy_id": null, "slug": "brief-category+updated-new-brief-category-two", "domain": { "exclude": [ "apple.com", "microsoft.com" ] }, "gid": "13-2" } ] } ] }
PUT Method
- BriefTopicResource.on_put(req: Request, resp: Response, primary_key: int = None)
Brief Topic PUT Method
To update single object:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-topic/<:id>
Request Object:
# attributes / values description { "name": name of the brief-topic, [optional] "short_name": short name for the brief-topic, [optional] "display_name": display name for the brief-topic, [optional] "type": type of the topic (standard / company) default to standard, [optional] "query_expression": query expression for the topic, [optional] "categories": categories for the topic, [required] "legacy_id": "legacy_id": publishing v1 topic id, [optional] } # Example { "name":"New Topic", "categories": [1] }
Response Object:
{ "id": 55, "name": "New Topic", "short_name": "NBT", "display_name": "New Brief Topic", "status": "active", "type": "standard", "query_expression": { "expression": [ "apple" ] }, "legacy_id": null, "gid": "14-55", "slug": "brief-topic+new-brief-topic", "categories": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "slug": "brief-category+updated-new-brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" } ] }
To update bulk objects:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/brief-topic
Request Object:
# attributes / values description [ { "id": id of the topic, [required] "name": name of the brief-topic, [required] "short_name": short name for the brief-topic, [required] "display_name": display name for the brief-topic, [required] "type": type of the topic (standard / company) default to standard, [optional] "query_expression": query expression for the topic, [optional] "categories": categories for the topic, [required] "legacy_id": "legacy_id": publishing v1 topic id, [optional] } ] # Example [ { "id": 1, "name":"Update Topic 1", "display_name":"New Topic 1", "short_name":"NT1", "categories":[1] }, { "id": 2, "name":"Update Topic 2", "display_name":"New Topic 2", "short_name":"NT2", "categories":[1] } ]
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "name": "Update Topic 1", "short_name": "NT1", "display_name": "New Topic 1", "status": "active", "type": "standard", "query_expression": null, "legacy_id": null, "gid": "14-1", "slug": "brief-topic+update-topic-1", "categories": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "slug": "brief-category+updated-new-brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" } ] }, { "id": 2, "name": "Update Topic 2", "short_name": "NT2", "display_name": "New Topic 2", "status": "active", "type": "standard", "query_expression": null, "legacy_id": null, "gid": "14-2", "slug": "brief-topic+update-topic-2", "categories": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "slug": "brief-category+updated-new-brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" } ] } ] }
When
<:id>on url is sent along with payload on bulk, the process will be similar to bulk process, the url<:id>will also be added to list of ids received from payload.
DELETE Method
- BriefTopicResource.on_delete(req: Request, resp: Response, primary_key: Optional[int] = None)
Brief Topic DELETE Method
To delete single object:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/brief-topic/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 55, "name": "New Topic", "short_name": "NBT", "display_name": "New Brief Topic", "status": "deleted", "type": "standard", "query_expression": { "expression": [ "apple" ] }, "legacy_id": null, "gid": "14-55", "slug": "brief-topic+new-topic", "categories": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1", "slug": "brief-category+updated-new-brief-category-one", } ] } ] }
To delete multiple objects:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/brief-category
Request Object:
# attributes / values description { "ids": [<:ids>] list of comma separated ids } # Example { "ids": [1,2] }
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "name": "Update Topic 1", "short_name": "NT1", "display_name": "New Topic 1", "status": "deleted", "type": "standard", "query_expression": null, "legacy_id": null, "gid": "14-1", "slug": "brief-topic+update-topic-1", "categories": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "slug": "brief-category+updated-new-brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" } ] }, { "id": 2, "name": "Update Topic 2", "short_name": "NT2", "display_name": "New Topic 2", "status": "deleted", "type": "standard", "query_expression": null, "legacy_id": null, "gid": "14-2", "slug": "brief-topic+update-topic-2", "categories": [ { "id": 1, "short_name": "BC1", "name": "Updated New Brief Category One", "display_name": "Brief Category One", "status": "deleted", "parent_id": null, "legacy_id": 1, "slug": "brief-category+updated-new-brief-category-one", "domain": { "exclude": [ "cnn.com" ] }, "gid": "13-1" } ] } ] }
When
<:id>on url is sent along with payload on bulk, the process will be similar to bulk process, the url<:id>will also be added to list of ids received from payload.
Source Resource
- class v2.resources.source.SourceResource
Source Resource Class
# note:: Allowed Methods: GET, POST, PUT, DELETE, POST (sync), POST (details-from-url)
This resource handles HTTP requests for source management operations. Sources represent websites, publications, and other content sources that can be referenced in content.
- on_post_details_from_url(req: Request, resp: Response)
Source Details from URL Method
Creates source or returns existing one if there’s a match.
We will use registered_domain if we have to create a source automatically.
- Parameters:
req – Falcon Request object
resp – Falcon Response object
- Returns:
None (sets resp.text directly)
- Raises:
MalformedDataError – If article_url is missing or invalid
- on_post_sync(req: Request, resp: Response)
Source Sync Method
Syncs sources from external system (e.g., pubv1).
Expected payload:
[ { 'uri': registered_domain, 'name': name, 'display_name': display_name, 'legacy_id': 1, } ]
- Parameters:
req – Falcon Request object
resp – Falcon Response object
- Returns:
None (sets resp.text directly)
- Raises:
MalformedDataError – If sync payload is invalid or sync fails
GET Method
- SourceResource.on_get(req: Request, resp: Response, identifier: Optional[str] = None)
Source GET Method
Retrieves a single source or list of sources. Supports lookup by ID (integer) or slug (string).
- Query Parameters:
- source_type: Optional string to filter by source_type (e.g., ‘gcri’).
Only applies to list queries (when identifier is None). Default behavior: only returns sources where source_type IS NULL.
- include_gcri_categories: Optional boolean parameter. If true, includes
related GCRI categories in the response for each source.
- search_string: Optional string to search for in display_name and
short_name (case-insensitive substring match). Only applies to list queries (when identifier is None).
- gcri_categories: Optional comma-separated list of GCRI category slugs or IDs
to filter sources by. Returns sources that have any of the specified categories. Only applies to list queries (when identifier is None). Example: ‘economic,politics’ or ‘1,2’ or ‘gcri-category+economic,gcri-category+politics’
- status: Optional status to filter by (‘active’, ‘inactive’, ‘deleted’).
If not provided, excludes deleted records (status != ‘deleted’). Only applies to list queries (when identifier is None).
- sort_by: Optional comma-separated list of fields to sort by
(e.g., ‘name,created_on’). Only applies to list queries.
- sort_order: Optional sort order - ‘asc’ or ‘desc’ (default: ‘asc’).
Only applies to list queries.
- page: Optional page number for pagination (1-indexed).
Only applies to list queries.
- page_size: Optional number of items per page (default: 20).
Only applies to list queries.
- Parameters:
req – Falcon Request object
resp – Falcon Response object
identifier – Optional string identifier (ID or slug) for single source lookup
- Returns:
None (sets resp.text directly)
- Raises:
IDNotFoundError – When identifier is provided but source not found
POST Method
- SourceResource.on_post(req: Request, resp: Response)
Source POST Method
Creates a new source or multiple sources.
- Request Body can include:
Standard source fields (uri, name, display_name, etc.)
- gcri_categories: Optional list of GCRI category slugs or IDs to assign to the source
Example: [“economic”, “politics”] or [1, 2] or [“gcri-category+economic”]
- Parameters:
req – Falcon Request object
resp – Falcon Response object
- Returns:
None (sets resp.text directly)
- Raises:
MalformedDataError – If payload validation fails or GCRI categories cannot be resolved
PUT Method
- SourceResource.on_put(req: Request, resp: Response, identifier: Optional[str] = None)
Source PUT Method
Updates an existing source or multiple sources. Supports lookup by ID (integer) or slug (string).
- Request Body can include:
Standard source fields to update
- gcri_categories: Optional list of GCRI category slugs or IDs to assign to the source.
Replaces all existing category mappings. Example: [“economic”, “politics”] or [1, 2] or [“gcri-category+economic”] Use empty list [] to remove all category mappings.
- Parameters:
req – Falcon Request object
resp – Falcon Response object
identifier – Optional string identifier (ID or slug) for single source update
- Returns:
None (sets resp.text directly)
- Raises:
IDNotFoundError – When identifier is provided but source not found
DELETE Method
- SourceResource.on_delete(req: Request, resp: Response, identifier: Optional[str] = None)
Source DELETE Method
Deletes a source or multiple sources. Supports lookup by ID (integer) or slug (string).
Request Body (optional):
{ "delete_permanently": false, # If true, permanently deletes "ids": [1, 2, 3], # For bulk deletion by ID (when identifier is None) "slugs": ["example-com", "another-source"] # For bulk deletion by slug (when identifier is None) }
- Parameters:
req – Falcon Request object
resp – Falcon Response object
identifier – Optional string identifier (ID or slug) for single source deletion
- Returns:
None (sets resp.text directly)
GCRICategory Resource
- class v2.resources.gcri_category.GCRICategoryResource
GCRI Category Resource Class
# note:: Allowed Methods: GET, POST, PUT, DELETE
This resource handles HTTP requests for GCRI category management operations. GCRI categories represent risk categories that map to RANE subjects and sources for content classification.
GET Method
- GCRICategoryResource.on_get(req: Request, resp: Response, slug: Optional[str] = None)
GCRI Category GET Method
Retrieves a single GCRI category or list of GCRI categories. Supports lookup by slug only. Excludes deleted records.
- Query Parameters:
- include_sources: Optional boolean parameter. If true, includes
related sources in the response for each category.
- search_string: Optional string to search for in display_name
(case-insensitive substring match). Only applies to list queries (when slug is None).
- status: Optional status to filter by (‘active’, ‘inactive’, ‘deleted’).
If not provided, excludes deleted records (status != ‘deleted’). Only applies to list queries (when slug is None).
- sort_by: Optional comma-separated list of fields to sort by
(e.g., ‘name,created_on’). Only applies to list queries.
- sort_order: Optional sort order - ‘asc’ or ‘desc’ (default: ‘asc’).
Only applies to list queries.
- page: Optional page number for pagination (1-indexed).
Only applies to list queries.
- page_size: Optional number of items per page (default: 20).
Only applies to list queries.
- Parameters:
req – Falcon Request object
resp – Falcon Response object
slug – Optional slug for single category lookup
- Returns:
None (sets resp.text directly)
- Raises:
IDNotFoundError – When slug is provided but category not found
POST Method
- GCRICategoryResource.on_post(req: Request, resp: Response)
GCRI Category POST Method
Creates a new GCRI category or multiple GCRI categories. Automatically generates slugs from name if not provided.
- Parameters:
req – Falcon Request object
resp – Falcon Response object
- Returns:
None (sets resp.text directly)
PUT Method
- GCRICategoryResource.on_put(req: Request, resp: Response, slug: Optional[str] = None)
GCRI Category PUT Method
Updates an existing GCRI category or multiple GCRI categories.
- Parameters:
req – Falcon Request object
resp – Falcon Response object
slug – Optional slug for single category update
- Returns:
None (sets resp.text directly)
- Raises:
IDNotFoundError – When slug is provided but category not found
DELETE Method
- GCRICategoryResource.on_delete(req: Request, resp: Response, slug: Optional[str] = None)
GCRI Category DELETE Method
Deletes a GCRI category or multiple GCRI categories. Supports both soft delete (default) and permanent delete.
Request Body (optional):
{ "delete_permanently": false, # If true, permanently deletes "slugs": ["economic", "politics"] # For bulk deletion (when slug is None) }
- Parameters:
req – Falcon Request object
resp – Falcon Response object
slug – Optional slug for single category deletion
- Returns:
None (sets resp.text directly)
Region Resource
- class v2.resources.region.RegionResource
Region Resource Class
# note:: Allowed Methods: GET
GET Method
- RegionResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Region GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/region/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "short_name": "", "name": "East Asia & the Pacific", "display_name": "East Asia & the Pacific", "status": "active", "slug": "region+east-asia-the-pacific", "gid": "5-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/region
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "short_name": "", "name": "East Asia & the Pacific", "display_name": "East Asia & the Pacific", "status": "active", "slug": "region+east-asia-the-pacific", "gid": "5-1" }, { "id": 2, "short_name": "", "name": "Europe & Eurasia", "display_name": "Europe & Eurasia", "status": "active", "slug": "region+europe-eurasia", "gid": "5-2" }, { "id": 3, "short_name": "", "name": "Near East & North Africa", "display_name": "Near East & North Africa", "status": "active", "slug": "region+near-east-north-africa", "gid": "5-3" } ] }
Key Term Resource
- class v2.resources.key_term.KeyTermResource
Key Term Resource Class
# note:: Allowed Methods: GET
GET Method
- KeyTermResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Key Term GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/key-term/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "name": "Accounting", "slug": "key-term+accounting", "description": null, "short_name": "", "display_name": "Accounting", "status": "active", "gid": "3-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/key-term
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "name": "Accounting", "slug": "key-term+accounting", "description": null, "short_name": "", "display_name": "Accounting", "status": "active", "gid": "3-1" }, { "id": 2, "name": "Alcohol", "slug": "key-term+alcohol", "description": null, "short_name": "", "display_name": "Alcohol", "status": "active", "gid": "3-2" }, { "id": 3, "name": "Anti-Boycott", "slug": "key-term+anti-boycott", "description": null, "short_name": "", "display_name": "Anti-Boycott", "status": "active", "gid": "3-3" } ] }
Country Resource
- class v2.resources.country.CountryResource
Country Resource Class
# note:: Allowed Methods: GET
GET Method
- CountryResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Country GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/country/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-05c3101d-8702-4941-ae7d-9e4b46cff10e", "trace_id": "master_list-trace-id-fb45443e-6b42-4386-8fb4-04d691ffb130", "data": [ { "region_id": null, "aliases": [], "id": 3, "short_name": "", "name": "Palestinian Territories", "display_name": "Palestinian Territories", "status": "active", "slug": "country+palestinian-territories", "capital": "Jerusalem", "alpha_2": "PS", "alpha_3": "PSE", "gid": "4-3" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/country
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-564d94f3-90ff-41a9-b8a8-ec4591777b86", "trace_id": "master_list-trace-id-c331828c-1ad4-4dfd-99d0-7c90de757ec9", "data": [ { "region_id": null, "aliases": [], "id": 3, "short_name": "", "name": "Palestinian Territories", "display_name": "Palestinian Territories", "status": "active", "slug": "country+palestinian-territories", "capital": "Jerusalem", "alpha_2": "PS", "alpha_3": "PSE", "gid": "4-3" }, { "region_id": 1, "aliases": [], "id": 4, "short_name": "", "name": "Nauru", "display_name": "Nauru", "status": "active", "slug": "country+nauru", "capital": "Yaren", "alpha_2": "NR", "alpha_3": "NRU", "gid": "4-4" }, { "region_id": 3, "aliases": [], "id": 7, "short_name": "", "name": "Western Sahara", "display_name": "Western Sahara", "status": "active", "slug": "country+western-sahara", "capital": "El-Aaiun", "alpha_2": "EH", "alpha_3": "ESH", "gid": "4-7" } ] }
Language Resource
- class v2.resources.language.LanguageResource
Language Resource Class
# note:: Allowed Methods: GET
GET Method
- LanguageResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Language GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/language/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "name": "Armenian", "slug": "language+armenian", "short_name": "", "display_name": "Armenian", "status": "active", "alpha_2": "hy", "alpha_3": "arm", "rtl": 0, "gid": "6-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/language
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "name": "Armenian", "slug": "language+armenian", "short_name": "", "display_name": "Armenian", "status": "active", "alpha_2": "hy", "alpha_3": "arm", "rtl": 0, "gid": "6-1" }, { "id": 2, "name": "Spanish", "slug": "language+spanish", "short_name": "", "display_name": "Spanish", "status": "active", "alpha_2": "es", "alpha_3": "spa", "rtl": 0, "gid": "6-2" }, { "id": 3, "name": "English", "slug": "language+english", "short_name": "", "display_name": "English", "status": "active", "alpha_2": "en", "alpha_3": "eng", "rtl": 0, "gid": "6-3" } ] }
Product And Service Resource
- class v2.resources.product_and_service.ProductAndServiceResource
Product and Service Resource Class
# note:: Allowed Methods: GET
GET Method
- ProductAndServiceResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Product and Service GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/product-and-service/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "name": "Academic / Public Sector / Practitioner Advisory", "slug": "product-and-service+academic-public-sector-practitioner-advisory", "parent_id": null, "description": null, "short_name": "", "display_name": "Academic / Public Sector / Practitioner Advisory", "status": "active", "gid": "2-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/product-and-service
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "name": "Academic / Public Sector / Practitioner Advisory", "slug": "product-and-service+academic-public-sector-practitioner-advisory", "parent_id": null, "description": null, "short_name": "", "display_name": "Academic / Public Sector / Practitioner Advisory", "status": "active", "gid": "2-1" }, { "id": 2, "name": "Consulting", "slug": "product-and-service+consulting", "parent_id": null, "description": null, "short_name": "", "display_name": "Consulting", "status": "active", "gid": "2-2" }, { "id": 3, "name": "Managed Services", "slug": "product-and-service+managed-services", "parent_id": null, "description": null, "short_name": "", "display_name": "Managed Services", "status": "active", "gid": "2-3" } ] }
FILTER Method
- ProductAndServiceResource.on_get_filter(req: Request, resp: Response, primary_key: Optional[int] = None)
Product and Service filter GET Method
To filter single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/product-and-service/filter/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-166b7c04-3240-4795-90eb-0400e173c592", "trace_id": "master_list-trace-id-8d936e13-5780-433c-aa1f-3bed17533e68", "data": [ { "id": 1, "name": "Academic / Public Sector / Practitioner Advisory", "slug": "product-and-service+academic-public-sector-practitioner-advisory", "parent_id": null, "description": null, "short_name": "", "display_name": "Academic / Public Sector / Practitioner Advisory", "status": "active", "gid": "2-1", "children": [ { "id": 5, "name": "Event Participation", "slug": "product-and-service+event-participation", "parent_id": 1, "description": null, "short_name": "", "display_name": "Event Participation", "status": "active", "gid": "2-5", "children": [] }, { "id": 6, "name": "Insights and Information", "slug": "product-and-service+insights-and-information", "parent_id": 1, "description": null, "short_name": "", "display_name": "Insights and Information", "status": "active", "gid": "2-6", "children": [ { "id": 28, "name": "Benchmarking", "slug": "product-and-service+benchmarking", "parent_id": 6, "description": null, "short_name": "", "display_name": "Benchmarking", "status": "active", "gid": "2-28", "children": [] }, { "id": 29, "name": "Best Practices", "slug": "product-and-service+best-practices", "parent_id": 6, "description": null, "short_name": "", "display_name": "Best Practices", "status": "active", "gid": "2-29", "children": [] }, { "id": 30, "name": "Buy-Side Insights", "slug": "product-and-service+buy-side-insights", "parent_id": 6, "description": null, "short_name": "", "display_name": "Buy-Side Insights", "status": "active", "gid": "2-30", "children": [] }, { "id": 31, "name": "Market Trends", "slug": "product-and-service+market-trends", "parent_id": 6, "description": null, "short_name": "", "display_name": "Market Trends", "status": "active", "gid": "2-31", "children": [] } ] } ] } ] }
To filter all objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/product-and-service/filter
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-166b7c04-3240-4795-90eb-0400e173c592", "trace_id": "master_list-trace-id-8d936e13-5780-433c-aa1f-3bed17533e68", "data": [ { "id": 1, "name": "Academic / Public Sector / Practitioner Advisory", "slug": "product-and-service+academic-public-sector-practitioner-advisory", "parent_id": null, "description": null, "short_name": "", "display_name": "Academic / Public Sector / Practitioner Advisory", "status": "active", "gid": "2-1", "children": [ { "id": 5, "name": "Event Participation", "slug": "product-and-service+event-participation", "parent_id": 1, "description": null, "short_name": "", "display_name": "Event Participation", "status": "active", "gid": "2-5", "children": [] }, { "id": 6, "name": "Insights and Information", "slug": "product-and-service+insights-and-information", "parent_id": 1, "description": null, "short_name": "", "display_name": "Insights and Information", "status": "active", "gid": "2-6", "children": [ { "id": 28, "name": "Benchmarking", "slug": "product-and-service+benchmarking", "parent_id": 6, "description": null, "short_name": "", "display_name": "Benchmarking", "status": "active", "gid": "2-28", "children": [] }, { "id": 29, "name": "Best Practices", "slug": "product-and-service+best-practices", "parent_id": 6, "description": null, "short_name": "", "display_name": "Best Practices", "status": "active", "gid": "2-29", "children": [] }, { "id": 30, "name": "Buy-Side Insights", "slug": "product-and-service+buy-side-insights", "parent_id": 6, "description": null, "short_name": "", "display_name": "Buy-Side Insights", "status": "active", "gid": "2-30", "children": [] }, { "id": 31, "name": "Market Trends", "slug": "product-and-service+market-trends", "parent_id": 6, "description": null, "short_name": "", "display_name": "Market Trends", "status": "active", "gid": "2-31", "children": [] } ] } ] } ] }
Industry Resource
- class v2.resources.industry.IndustryResource
Industry Resource Class
# note:: Allowed Methods: GET
GET Method
- IndustryResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Industry GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/industry/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "gid": "7-1", "name": "Energy", "short_name": "ENE", "display_name": "Energy", "slug": "industry+energy", "status": "active", "parent_id": null, "alternate_id": { "gics": "10" } } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/industry
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 2, "gid": "7-2", "name": "Energy", "short_name": "ENE", "display_name": "Energy", "slug": "industry+energy+energy", "status": "active", "parent_id": 1, "alternate_id": { "gics": "1010" } } ] }
To get all industry, and it’s parent including inactive ones:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/industry?with-inactive-parent
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "gid": "7-1", "name": "Energy", "short_name": "ENE", "display_name": "Energy", "slug": "industry+energy", "status": "inactive", "parent_id": null, "alternate_id": { "gics": "10" } }, { "id": 2, "gid": "7-2", "name": "Energy", "short_name": "ENE", "display_name": "Energy", "slug": "industry+energy+energy", "status": "active", "parent_id": 1, "alternate_id": { "gics": "1010" } } ] }
Worldview Theme Resource
- class v2.resources.worldview_theme.WorldViewThemeResource
WorldView Resource Class
# note:: Allowed Methods: GET
GET Method
- WorldViewThemeResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Worldview Theme GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/worldview-theme/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "name": "Economics", "slug": "worldview-theme+economics", "short_name": "", "display_name": "Economics", "description": null, "status": "active", "taxonomy_id": 1663, "vocabulary_id": 33, "gid": "9-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/worldview-theme
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "name": "Economics", "slug": "worldview-theme+economics", "short_name": "", "display_name": "Economics", "description": null, "status": "active", "taxonomy_id": 1663, "vocabulary_id": 33, "gid": "9-1" }, { "id": 2, "name": "Energy", "slug": "worldview-theme+energy", "short_name": "", "display_name": "Energy", "description": null, "status": "active", "taxonomy_id": 1664, "vocabulary_id": 33, "gid": "9-2" }, { "id": 3, "name": "Military & Security", "slug": "worldview-theme+military-and-security", "short_name": "", "display_name": "Military & Security", "description": null, "status": "active", "taxonomy_id": 1665, "vocabulary_id": 33, "gid": "9-3" } ] }
Worldview Topic Resource
- class v2.resources.worldview_topic.WorldViewTopicResource
WorldView Topic Resource Class
# note:: Allowed Methods: GET
GET Method
- WorldViewTopicResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Worldview Topic GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/worldview-topic/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "name": "COVID-19", "slug": "worldview-topic+covid-19", "short_name": "", "display_name": "COVID-19", "description": null, "status": "active", "taxonomy_id": 1668, "vocabulary_id": 34, "gid": "6-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/worldview-topic
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "name": "COVID-19", "slug": "worldview-topic+covid-19", "short_name": "", "display_name": "COVID-19", "description": null, "status": "active", "taxonomy_id": 1668, "vocabulary_id": 34, "gid": "6-1" }, { "id": 2, "name": "U.S.-China Relations", "slug": "worldview-topic+us-china-relations", "short_name": "", "display_name": "U.S.-China Relations", "description": null, "status": "active", "taxonomy_id": 1669, "vocabulary_id": 34, "gid": "6-2" }, { "id": 3, "name": "U.S.-Iran Relations", "slug": "worldview-topic+us-iran-relations", "short_name": "", "display_name": "U.S.-Iran Relations", "description": null, "status": "active", "taxonomy_id": 1670, "vocabulary_id": 34, "gid": "6-3" } ] }
Taxonomy Threat Lens Resource
- class v2.resources.taxonomy_threat_lens.TaxonomyThreatLensResource
Taxonomy Threat Lens Resource Class
# note:: Allowed Methods: GET
GET Method
- TaxonomyThreatLensResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Taxonomy Threat lens GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/taxonomy-threat-lens/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "name": "Criminal Activity", "slug": "threat-lens-taxonomy+criminal-activity", "parent_id": null, "description": null, "short_name": "", "display_name": "Criminal Activity", "status": "active", "gid": "11-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/taxonomy-threat-lens
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "name": "Criminal Activity", "slug": "threat-lens-taxonomy+criminal-activity", "parent_id": null, "description": null, "short_name": "", "display_name": "Criminal Activity", "status": "active", "gid": "11-1" }, { "id": 2, "name": "Cyber & Information Threats", "slug": "threat-lens-taxonomy+cyber-and-information-threats", "parent_id": null, "description": null, "short_name": "", "display_name": "Cyber & Information Threats", "status": "active", "gid": "11-2" }, { "id": 3, "name": "Environmental, Health & Infrastructure Hazards", "slug": "threat-lens-taxonomy+environmental-health-and-infrastructure-hazards", "parent_id": null, "description": null, "short_name": "", "display_name": "Environmental, Health & Infrastructure Hazards", "status": "active", "gid": "11-3" } ] }
FILTER Method
- TaxonomyThreatLensResource.on_get_filter(req: Request, resp: Response, primary_key: Optional[int] = None)
Taxonomy Threat lens filter GET Method
To filter single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/taxonomy-threat-lens/filter/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-166b7c04-3240-4795-90eb-0400e173c592", "trace_id": "master_list-trace-id-8d936e13-5780-433c-aa1f-3bed17533e68", "data": [ { "id": 3, "name": "Environmental, Health & Infrastructure Hazards", "slug": "threat-lens-taxonomy+environmental-health-and-infrastructure-hazards", "parent_id": null, "description": null, "short_name": "", "display_name": "Environmental, Health & Infrastructure Hazards", "status": "active", "gid": "11-3", "children": [ { "id": 22, "name": "Extreme Weather & Natural Disasters", "slug": "threat-lens-taxonomy+extreme-weather-and-natural-disasters", "parent_id": 3, "description": null, "short_name": "", "display_name": "Extreme Weather & Natural Disasters", "status": "active", "gid": "11-22", "children": [] }, { "id": 23, "name": "Environmental ", "slug": "threat-lens-taxonomy+environmental", "parent_id": 3, "description": null, "short_name": "", "display_name": "Environmental ", "status": "active", "gid": "11-23", "children": [] }, { "id": 24, "name": "Health ", "slug": "threat-lens-taxonomy+health", "parent_id": 3, "description": null, "short_name": "", "display_name": "Health ", "status": "active", "gid": "11-24", "children": [] }, { "id": 26, "name": "Infrastructure & Logistics Threats", "slug": "threat-lens-taxonomy+infrastructure-and-logistics-threats", "parent_id": 3, "description": null, "short_name": "", "display_name": "Infrastructure & Logistics Threats", "status": "active", "gid": "11-26", "children": [] } ] } ] }
To filter all objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/taxonomy-threat-lens/filter
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-166b7c04-3240-4795-90eb-0400e173c592", "trace_id": "master_list-trace-id-8d936e13-5780-433c-aa1f-3bed17533e68", "data": [ { "id": 2, "name": "Cyber & Information Threats", "slug": "threat-lens-taxonomy+cyber-and-information-threats", "parent_id": null, "description": null, "short_name": "", "display_name": "Cyber & Information Threats", "status": "active", "gid": "11-2", "children": [ { "id": 18, "name": "Cyber Espionage", "slug": "threat-lens-taxonomy+cyber-espionage", "parent_id": 2, "description": null, "short_name": "", "display_name": "Cyber Espionage", "status": "active", "gid": "11-18", "children": [] }, { "id": 19, "name": "Cyber Attack", "slug": "threat-lens-taxonomy+cyber-attack", "parent_id": 2, "description": null, "short_name": "", "display_name": "Cyber Attack", "status": "active", "gid": "11-19", "children": [] }, { "id": 20, "name": "Emerging Technology", "slug": "threat-lens-taxonomy+emerging-technology", "parent_id": 2, "description": null, "short_name": "", "display_name": "Emerging Technology", "status": "active", "gid": "11-20", "children": [] }, { "id": 21, "name": "Hacktivism", "slug": "threat-lens-taxonomy+hacktivism", "parent_id": 2, "description": null, "short_name": "", "display_name": "Hacktivism", "status": "active", "gid": "11-21", "children": [] } ] }, { "id": 3, "name": "Environmental, Health & Infrastructure Hazards", "slug": "threat-lens-taxonomy+environmental-health-and-infrastructure-hazards", "parent_id": null, "description": null, "short_name": "", "display_name": "Environmental, Health & Infrastructure Hazards", "status": "active", "gid": "11-3", "children": [ { "id": 22, "name": "Extreme Weather & Natural Disasters", "slug": "threat-lens-taxonomy+extreme-weather-and-natural-disasters", "parent_id": 3, "description": null, "short_name": "", "display_name": "Extreme Weather & Natural Disasters", "status": "active", "gid": "11-22", "children": [] }, { "id": 23, "name": "Environmental ", "slug": "threat-lens-taxonomy+environmental", "parent_id": 3, "description": null, "short_name": "", "display_name": "Environmental ", "status": "active", "gid": "11-23", "children": [] }, { "id": 24, "name": "Health ", "slug": "threat-lens-taxonomy+health", "parent_id": 3, "description": null, "short_name": "", "display_name": "Health ", "status": "active", "gid": "11-24", "children": [] }, { "id": 26, "name": "Infrastructure & Logistics Threats", "slug": "threat-lens-taxonomy+infrastructure-and-logistics-threats", "parent_id": 3, "description": null, "short_name": "", "display_name": "Infrastructure & Logistics Threats", "status": "active", "gid": "11-26", "children": [] } ] } ] }
Intel Fusion Taxonomy ThreatLens Mapping Resource
- class v2.resources.intel_fusion_taxonomy_threat_lens_mapping.IntelFusionTaxonomyThreatLensMappingResource
Intel Fusion Taxonomy Threat lens Mapping Resource Class
# note:: Allowed Methods: GET
GET Method
- IntelFusionTaxonomyThreatLensMappingResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Intel Fusion Taxonomy Threat Lens Resource GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/intel-fusion-taxonomy-threat-lens-mapping/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "intel_fusion_label": "Attack Helicopter", "taxonomy_threat_lens_id": 41, "status": "active" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/intel-fusion-taxonomy-threat-lens-mapping
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "intel_fusion_label": "Attack Helicopter", "taxonomy_threat_lens_id": 41, "status": "active" }, { "id": 2, "intel_fusion_label": "Attack Helicopter", "taxonomy_threat_lens_id": 39, "status": "active" }, { "id": 3, "intel_fusion_label": "Bomber", "taxonomy_threat_lens_id": 42, "status": "active" } ] }
Threat Lens Old New Mapping Resource
- class v2.resources.threat_lens_old_new_mapping.ThreatLensOldNewMappingResource
Threat lens old new mapping Resource Class
# note:: Allowed Methods: GET
GET Method
- ThreatLensOldNewMappingResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Threat Lens Old New Mapping Resource GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/threat-lens-old-new-mapping/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "old_threat_lens_label": "Armed Assault", "new_threat_lens_id": 15, "status": "active" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/threat-lens-old-new-mapping
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "old_threat_lens_label": "Armed Assault", "new_threat_lens_id": 15, "status": "active" }, { "id": 2, "old_threat_lens_label": "Arson", "new_threat_lens_id": 7, "status": "active" }, { "id": 3, "old_threat_lens_label": "Assassination or Attempted Assassination", "new_threat_lens_id": 11, "status": "active" } ] }
Intel Fusion Impact Rating Resource
- class v2.resources.intel_fusion_impact_rating.IntelFusionImpactRatingResource
Intel Fusion Impact Rating Resource Class
# note:: Allowed Methods: GET
GET Method
- IntelFusionImpactRatingResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
Intel Fusion Impact Rating GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/intel-fusion-impact-rating/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-107101e2-d012-4945-8567-b368b4c379c0", "trace_id": "master_list-trace-id-c84e56bc-76b8-4ae8-8103-6fc485384583", "data": [ { "id": 1, "name": "Unknown", "slug": "intel-fusion-impact-rating+unknown", "external_id": -1, "description": "Impact has not been assessed or is unknown.", "short_name": "", "display_name": "Unknown", "status": "active", "gid": "12-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/intel-fusion-impact-rating
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-ded1180a-7e3c-449b-ad51-072cedb5eb1f", "trace_id": "master_list-trace-id-c1a5146c-d3cf-46b0-87bc-e4f8903dfa0b", "data": [ { "id": 1, "name": "Unknown", "slug": "intel-fusion-impact-rating+unknown", "external_id": -1, "description": "Impact has not been assessed or is unknown.", "short_name": "", "display_name": "Unknown", "status": "active", "gid": "12-1" }, { "id": 2, "name": "Insignificant", "slug": "intel-fusion-impact-rating+insignificant", "external_id": 1, "description": "No injuries or health effects. Financial loss less than $1,000 USD. No lost time workdays. No impact on reputation. Fully reversible impacts.", "short_name": "", "display_name": "Insignificant", "status": "active", "gid": "12-2" }, { "id": 3, "name": "Limited", "slug": "intel-fusion-impact-rating+limited", "external_id": 2, "description": "Minimal injuries or health effects. Financial loss more than $1,000 USD but less than $5,000 USD. Limited business interruption, less than 1 lost time workday. Limited negative reputational exposure. Mostly reversible impacts.", "short_name": "", "display_name": "Limited", "status": "active", "gid": "12-3" } ] }
Generic Mapping Resource
- class v2.resources.generic_mapping.GenericMappingResource
Generic mapping Resource Class
# note:: Allowed Methods: GET, POST, PUT, DELETE
GET Method
- GenericMappingResource.on_get(req: Request, resp: Response, gid: Optional[str] = None)
Generic Mapping GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/generic-mapping/<:gid>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "gid": "1-1-1", "mapping": [ "2-1-1", "2-1-2" ] } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/generic-mapping
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "gid": "1-1-1", "mapping": [ "2-1-1", "2-1-2" ] }, { "gid": "1-1-2", "mapping": [ "3-1-1", "3-1-2" ] } ] }
POST Method
- GenericMappingResource.on_post(req: Request, resp: Response)
Generic Mapping POST Method
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/generic-mapping
Request Object:
# attributes / values description [ { "gid": Unique GID, [required] "mapping": List of GIDs, [required] } ] # Example [ { "gid": "1-1-5", "mapping": ["1-1-11"] }, { "gid": "1-1-4", "mapping" :[] } ]
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "gid": "1-1-5", "mapping": [ "1-1-11" ] }, { "gid": "1-1-4", "mapping": [] } ] }
PUT Method
- GenericMappingResource.on_put(req: Request, resp: Response, gid: str = None)
Generic Mapping PUT Method
To update single object:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/generic-mapping/<:gid>
Request Object:
# attributes / values description { "mapping": List of GIDs, [required] } # Example { "mapping": ["5-5-5", "6-6-6"] }
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "gid": "1-1-1", "mapping": [ "5-5-5", "6-6-6" ] } ] }
To update bulk objects:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/generic-mapping
Request Object:
# attributes / values description [ { "gid": Unique GID, [required] "mapping": List of GIDs, [required] } ] # Example [ { "gid": "1-1-2", "mapping": [] }, { "gid": "1-1-5", "mapping": [] } ]
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "gid": "1-1-2", "mapping": [] }, { "gid": "1-1-5", "mapping": [] } ] }
When
<:gid>on url is sent along with payload on bulk, the process will be similar to bulk process, the url<:gid>will also be added to list of ids received from payload.
DELETE Method
- GenericMappingResource.on_delete(req: Request, resp: Response, gid: Optional[str] = None)
Generic Mapping DELETE Method
To delete single object:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/generic-mapping/<:gid>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "gid": "1-1-1", "mapping": [ "5-5-5", "6-6-6" ] } ] }
To delete multiple objects:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/generic-mapping
Request Object:
# attributes / values description { "gid": [<:gids>] list of comma separated gids } # Example { "gids": ["1-1-2", "1-1-5"] }
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "gid": "1-1-2", "mapping": [] }, { "gid": "1-1-5", "mapping": [] } ] }
When
<:id>on url is sent along with payload on bulk, the process will be similar to bulk process, the url<:id>will also be added to list of ids received from payload.
International Organization Resource
- class v2.resources.international_organization.InternationalOrganizationResource
International Organization Resource Class
# note:: Allowed Methods: GET
GET Method
- InternationalOrganizationResource.on_get(req: Request, resp: Response, primary_key: Optional[int] = None)
International Organization GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/international-organization/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "UN", "name": "UN", "display_name": "United Nation", "status": "active", "slug": "international-organization+un", "gid": "5-1" } ] }
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/international-organization
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "UN", "name": "UN", "display_name": "United Nation", "status": "active", "slug": "international-organization+un", "gid": "5-1" }, { "id": 2, "short_name": "NATO", "name": "NATO", "display_name": "NATO", "status": "active", "slug": "international-organization+nato", "gid": "5-2" } ] }
FILTER Method
- InternationalOrganizationResource.on_get_filter(req: Request, resp: Response, primary_key: Optional[int] = None)
International Organization filter Method
To filter single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/international-organization/filter/<:id>
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "UN", "name": "UN", "display_name": "United Nation", "status": "active", "slug": "international-organization+un", "gid": "5-1", "countries": [ { "region_id": null, "aliases": [], "id": 1, "short_name": "", "name": "South Georgia and South Sandwich Islands", "display_name": "South Georgia and South Sandwich Islands", "status": "inactive", "slug": "international-organization+south-georgia-and-south-sandwich-islands", "capital": "King Edward Point", "alpha_2": "GS", "alpha_3": "SGS", "gid": "4-1" }, { "region_id": null, "aliases": [], "id": 2, "short_name": "", "name": "French Southern and Antarctic Lands", "display_name": "French Southern and Antarctic Lands", "status": "inactive", "slug": "international-organization+french-southern-and-antarctic-lands", "capital": "Saint-Pierre on Reunion Island", "alpha_2": "TF", "alpha_3": "ATF", "gid": "4-2" } ] } ] }
To filter multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/international-organization/filter
Response Object:
{ "user_id": "1", "request_from": "user", "request_id": "master_list-request-id-59088054-0b51-40ff-ad2b-dec973db777e", "trace_id": "master_list-trace-id-185ae128-d55f-4571-bc3f-b3916fa6d039", "data": [ { "id": 1, "short_name": "UN", "name": "UN", "display_name": "United Nation", "status": "active", "slug": "international-organization+un", "gid": "5-1", "countries": [ { "region_id": null, "aliases": [], "id": 1, "short_name": "", "name": "South Georgia and South Sandwich Islands", "display_name": "South Georgia and South Sandwich Islands", "status": "inactive", "slug": "international-organization+south-georgia-and-south-sandwich-islands", "capital": "King Edward Point", "alpha_2": "GS", "alpha_3": "SGS", "gid": "4-1" }, { "region_id": null, "aliases": [], "id": 2, "short_name": "", "name": "French Southern and Antarctic Lands", "display_name": "French Southern and Antarctic Lands", "status": "inactive", "slug": "international-organization+french-southern-and-antarctic-lands", "capital": "Saint-Pierre on Reunion Island", "alpha_2": "TF", "alpha_3": "ATF", "gid": "4-2" } ] }, { "id": 2, "short_name": "NATO", "name": "NATO", "display_name": "NATO", "status": "active", "slug": "international-organization+nato", "gid": "5-2", "countries": [ { "region_id": null, "aliases": [], "id": 1, "short_name": "", "name": "South Georgia and South Sandwich Islands", "display_name": "South Georgia and South Sandwich Islands", "status": "inactive", "slug": "international-organization+south-georgia-and-south-sandwich-islands", "capital": "King Edward Point", "alpha_2": "GS", "alpha_3": "SGS", "gid": "4-1" }, { "region_id": 3, "aliases": [], "id": 3, "short_name": "", "name": "Palestinian Territories", "display_name": "Palestinian Territories", "status": "active", "slug": "international-organization+palestinian-territories", "capital": "Jerusalem", "alpha_2": "PS", "alpha_3": "PSE", "gid": "4-3" } ] } ] }
Content Type Group Resource
Class : v2.resources.content_type_group.ContentTypeGroupResource
Note
Allowed Methods:
GET
POST
PUT
DELETE
The Content Type Group API provides functionality to manage content type groups, which are logical groupings of related content types. A content type group, such as “Analysis,” serves as a container or collection that brings together multiple content types, including “Explainer,” “Advisory,” and “Insights.”
By organizing content types into groups, the system gains the ability to easily access all the content related to a specific group.
Let’s focus on the example of articles within the “Analysis” group. Each article has a field called “type_slug” that specifies its content type. For instance, an article within the “Analysis” group could have its “type_slug” set as “Advisory,” indicating that it belongs to the advisory category of analysis-related content.
By logically grouping content types within a content type group, the system can effectively organize and manage related content together. This facilitates easier retrieval of content based on the specific group it belongs to. For example, by querying the “Analysis” group, the system can retrieve all articles classified as analysis-related content, including those with the “Advisory” type_slug.
In summary, the Content Type Group API enables the logical grouping of content types into collections or units, such as the “Analysis” group. This grouping simplifies the management and retrieval of related content, allowing the system to efficiently access and present content based on specific content type groups, such as retrieving analysis-related articles based on their type_slug, like “Advisory.”
GET Method
Content Type Group GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group/<:id>
URL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group/<:slug>
Response Object:
"data": [
{
"id": 7,
"short_name": "analysis",
"name": "analysis",
"display_name": "Analysis",
"status": "active",
"slug": "analysis",
"content_type_slug": [
"explainer",
"advisory",
"insights"
]
}
]
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group
Response Object:
"data": [
{
"id": 7,
"short_name": "analysis",
"name": "analysis",
"display_name": "Analysis",
"status": "active",
"slug": "analysis",
"content_type_slug": [
"explainer",
"advisory",
"insights"
]
},
{
"id": 8,
"short_name": "forecasts",
"name": "forecasts",
"display_name": "Forecasts",
"status": "active",
"slug": "forecasts",
"content_type_slug": [
"grm_forecast",
"forecast_monthly"
]
}
]
POST Method
Content Type Group POST Method
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group
Request Object:
# attributes / values description [ { "name": name of the content-type-group, [required] "short_name": short name for the content-type-group, [required] "display_name": display name for the content-type-group, [required] "content_type_slug": content type slug for the content-type-group, [required] } ] # Example [ { "name": "forecasts", "short_name": "forecasts", "display_name": "Forecasts", "content_type_slug": ["grm_forecast", "forecast_monthly"] } ]
Response Object:
"data": [
{
"id": 8,
"short_name": "forecasts",
"name": "forecasts",
"display_name": "Forecasts",
"status": "active",
"slug": "forecasts",
"content_type_slug": [
"grm_forecast",
"forecast_monthly"
]
}
]
PUT Method
Content Type Group PUT Method
To update single object:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group/<:id>
Request Object:
# attributes / values description { "name": name of the content-type-group, [optional] "short_name": short name for the content-type-group, [optional] "display_name": display name for the content-type-group, [optional] "content_type_slug": content type slug for the content-type-group, [optional] } # Example { "name": "Updated Name" }
Response Object:
"data": [
{
"id": 8,
"short_name": "forecasts",
"name": "Updated Name",
"display_name": "Forecasts",
"status": "active",
"slug": "forecasts",
"content_type_slug": [
"grm_forecast",
"forecast_monthly"
]
}
]
To update bulk objects:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group
Request Object:
# attributes / values description [ { "id": id of the content-type-group, [required] "name": name of the content-type-group, [optional] "short_name": short name for the content-type-group, [optional] "display_name": display name for the content-type-group, [optional] "content_type_slug": content type slug for the content-type-group, [optional] } ] # Example [ { "id": 7, "name": "Updated Name 1" }, { "id": 8, "name": "Updated Name 2" } ]
Response Object:
"data": [
{
"id": 7,
"short_name": "analysis",
"name": "Updated Name 1",
"display_name": "Analysis",
"status": "active",
"slug": "analysis",
"content_type_slug": [
"explainer",
"advisory",
"insights"
]
},
{
"id": 8,
"short_name": "forecasts",
"name": "Updated Name 2",
"display_name": "Forecasts",
"status": "active",
"slug": "forecasts",
"content_type_slug": [
"grm_forecast",
"forecast_monthly"
]
}
]
DELETE Method
Content Type Group DELETE Method
To delete single object:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group/<:id>
Response Object:
"data": [
{
"id": 7,
"short_name": "analysis",
"name": "Updated Name 1",
"display_name": "Analysis",
"status": "active",
"slug": "analysis",
"content_type_slug": [
"explainer",
"advisory",
"insights"
]
}
]
To delete multiple objects:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/gid-prefix
Request Object:
# attributes / values description { "ids": [<:ids>] list of comma separated ids "delete_permanently": bool (true or false) } # Example { "ids": [7,8], "delete_permanently": true }
Response Object:
"data": [
{
"id": 7,
"short_name": "analysis",
"name": "Updated Name 1",
"display_name": "Analysis",
"status": "active",
"slug": "analysis",
"content_type_slug": [
"explainer",
"advisory",
"insights"
]
},
{
"id": 8,
"short_name": "forecasts",
"name": "Updated Name 2",
"display_name": "Forecasts",
"status": "active",
"slug": "forecasts",
"content_type_slug": [
"grm_forecast",
"forecast_monthly"
]
}
]
FILTER Method
Content Type Group FILTER Method
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/content-type-group/filter
Request Object:
{ "slug": array of slug [optional], "content_type_slug": array of content types [optional] } # Example { "slug": ["forecasts", "analysis"] }
Response Object:
"data": [
{
"id": 7,
"short_name": "analysis",
"name": "analysis",
"display_name": "Analysis",
"status": "active",
"slug": "analysis",
"content_type_slug": [
"explainer",
"advisory",
"insights"
]
},
{
"id": 8,
"short_name": "forecasts",
"name": "forecasts",
"display_name": "Forecasts",
"status": "active",
"slug": "forecasts",
"content_type_slug": [
"grm_forecast",
"forecast_monthly"
]
}
]
Global Gid Search
- class v2.resources.global_search.GlobalSearchResource
Global Search Resource Class
# note:: Allowed Methods: GET / POST
- on_get_all(req: Request, resp: Response)
Global Search GET Method to retrieve all
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/global-search/all?status=active
URL: https://stag.api.ranenetwork.com/master-list/v2/global-search/all?status=active,deleted
Response Object:
"data": [ { "gid": "2-1", "slug": "rane-subject+academic-public-sector-practitioner-advisory", "type": "product_and_service", "name": "Academic / Public Sector / Practitioner Advisory", "display_name": "Academic / Public Sector / Practitioner Advisory", "status": "active" }, { "gid": "3-1", "slug": "key-term+accounting", "type": "key_term", "name": "Accounting", "display_name": "Accounting", "status": "active" } ]
GET Method
- GlobalSearchResource.on_get(req: Request, resp: Response)
Global Search GET Method
Given a list of comma separated GID/Slugs, returns a list of dict containing the Entity Code Data.
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/global-search?gid=4-42,1-12
URL: https://stag.api.ranenetwork.com/master-list/v2/global-search?slug=international-organization+arab..
Response Object:
"data": [ { "gid": "2-1", "slug": "rane-subject+academic-public-sector-practitioner-advisory", "type": "product_and_service", "name": "Academic / Public Sector / Practitioner Advisory", "display_name": "Academic / Public Sector / Practitioner Advisory", "status": "active" }, { "gid": "3-1", "slug": "key-term+accounting", "type": "key_term", "name": "Accounting", "display_name": "Accounting", "status": "active" } ]
POST Method
- GlobalSearchResource.on_post(req: Request, resp: Response)
Global Search POST Method
Given a list of GID/Slugs, returns a list of dict containing the GID, Slug and name of the corresponding entity code.
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/global-search
Request Object:
{ "gid": [ "4-42", "1-12" ], "status": ["active], "slug": [ "key-term+accounting" ] }
Response Object:
"data": [ { "gid": "2-1", "slug": "rane-subject+academic-public-sector-practitioner-advisory", "type": "product_and_service", "name": "Academic / Public Sector / Practitioner Advisory", "display_name": "Academic / Public Sector / Practitioner Advisory", "status": "active" }, { "gid": "3-1", "slug": "key-term+accounting", "type": "key_term", "name": "Accounting", "display_name": "Accounting", "status": "active" } ]
RANESubject Resource
Class : v2.resources.rane_subject.RANESubjectResource
Note
Allowed Methods:
GET
POST
PUT
DELETE
RANE Subject API serves categories relevant to Global Composite Risk Index.
Note
The RANE Subject API implementation is similar to GCRI Category implementation which is now depreciated.
GET Method
RANE-Subject GET Method
To get single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject/<:id>
Optional Query Parameter:
alpha_sorting=True/1: If passed, sorts the data of the RANE subjects in alphabetical order based on their name.
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-b828be87-4bbe-4179-a7f1-068c03bf9adc",
"trace_id": "master_list-trace-id-115096ea-6ea3-4c58-97a9-e7898ee35c95",
"data": [
{
"id": 1,
"name": "Cyber + Information",
"slug": "rane-subject+cyber-information",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Cyber + Information",
"status": "active",
"gid": "1-1"
}
]
}
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject
Optional Query Parameter:
alpha_sorting=True/1: If passed, sorts the data of the RANE subjects in alphabetical order based on their name.
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-11d10a87-8949-4550-8e35-99d0d615c8c4",
"trace_id": "master_list-trace-id-5095091a-ac9a-4a0d-ac9b-1164b27a8f67",
"data": [
{
"id": 1,
"name": "Cyber + Information",
"slug": "rane-subject+cyber-information",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Cyber + Information",
"status": "active",
"gid": "1-1"
},
{
"id": 2,
"name": "Geopolitical",
"slug": "rane-subject+geopolitical",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Geopolitical",
"status": "active",
"gid": "1-2"
},
{
"id": 3,
"name": "Legal, Regulatory + Compliance",
"slug": "rane-subject+legal-regulatory-compliance",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Legal, Regulatory + Compliance",
"status": "active",
"gid": "1-3"
}
]
}
POST Method
RANE-Subject POST Method
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject
Request Object:
# attributes / values description [ { "name": name of the rane-subject, [required] "slug": slug for the rane-subject, [required] "description": description for the rane-subject, [required] "short_name": description for the rane-subject, [required] "display_name": description for the rane-subject, [required] "parent": foreign key int value of parent, [optional] } ] # Example [ { "name": "New RANE subject", "slug": "rane-subject+new-rane-subject", "description": "new RANE subject", "short_name": "new RANE subject", "display_name": "New RANE subject", } ]
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-c7d2bc18-391a-44ce-8139-7643dfcb2b7e",
"trace_id": "master_list-trace-id-2e2ae681-63a2-47be-bb15-3a76c28c80c1",
"data": [
{
"id": 28,
"name": "New RANE subject",
"slug": "rane-subject+new-rane-subject",
"parent_id": null,
"description": "new RANE subject",
"short_name": "new RANE subject",
"display_name": "New RANE subject",
"status": "active",
"gid": "1-28"
}
]
}
PUT Method
RANE-Subject PUT Method
To update single object:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject/<:id>
Request Object:
# attributes / values description { "name": name of the rane-subject, [required] "slug": slug for the rane-subject, [required] "description": description for the rane-subject, [optional] "parent": foreign key int value of parent, [optional] } # Example { "name": "Updated New RANE subject " }
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-47170d15-ebff-4ae5-b09a-d68769e01ad8",
"trace_id": "master_list-trace-id-efb4ce02-2ebb-4e91-a5a8-b76fb228365a",
"data": [
{
"id": 28,
"name": "Updated New RANE subject ",
"slug": "rane-subject+new-rane-subject",
"parent_id": null,
"description": "new RANE subject",
"short_name": "new RANE subject",
"display_name": "New RANE subject",
"status": "active",
"gid": "1-28"
}
]
}
To update bulk objects:
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject
Request Object:
# attributes / values description [ { "name": name of the rane-subject, [required] "slug": slug for the rane-subject, [required] "description": description for the rane-subject, [optional] "parent": foreign key int value of parent, [optional] } ] # Example [ { "id": 1, "name": "Update Cyber + Information" }, { "id": 2, "name": "Update Geopolitical" } ]
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-3f6b3acb-e4d7-4153-86c7-012b1ebf7dd7",
"trace_id": "master_list-trace-id-e7a7dcd1-6028-41e8-9c2c-efab832f84b3",
"data": [
{
"id": 1,
"name": "Update Cyber + Information",
"slug": "rane-subject+cyber-information",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Cyber + Information",
"status": "active",
"gid": "1-1"
},
{
"id": 2,
"name": "Update Geopolitical",
"slug": "rane-subject+geopolitical",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Geopolitical",
"status": "active",
"gid": "1-2"
}
]
}
Note
When <:id> on url is sent along with payload on bulk, the process will be similar to bulk process,
the url <:id> will also be added to list of ids received from payload.
DELETE Method
RANE-Subject DELETE Method
To delete single object:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject/<:id>
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-43883b4b-0ff3-4819-be79-7c753f5e3d39",
"trace_id": "master_list-trace-id-33010e00-3ee0-45c4-9b81-5deac7cb3406",
"data": [
{
"id": 1,
"name": "Update Cyber + Information",
"slug": "rane-subject+cyber-information",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Cyber + Information",
"status": "active",
"gid": "1-1"
}
]
}
To delete multiple objects:
Request
Method:
DELETEURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject
Request Object:
# attributes / values description { "ids": [<:ids>] list of comma separated ids "delete_permanently": bool (true or false) } # Example { "ids": [1,2], "delete_permanently": true }
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-dca379d4-72ad-48e5-8887-2fd7ecff8c68",
"trace_id": "master_list-trace-id-00031dca-f76a-4678-be3b-c08546567a82",
"data": [
{
"id": 1,
"name": "Update Cyber + Information",
"slug": "rane-subject+cyber-information",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Cyber + Information",
"status": "active",
"gid": "1-1"
},
{
"id": 2,
"name": "Update Geopolitical",
"slug": "rane-subject+geopolitical",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Geopolitical",
"status": "active",
"gid": "1-2"
}
]
}
Note
When <:id> on url is sent along with payload on bulk, the process will be similar to bulk process,
the url <:id> will also be added to list of ids received from payload.
FILTER Method
RANE-Subject filter GET Method
To filter single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject/filter/<:id>
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-dca379d4-72ad-48e5-8887-2fd7ecff8c68",
"trace_id": "master_list-trace-id-00031dca-f76a-4678-be3b-c08546567a82",
"data": [
{
"id": 1,
"name": "Cyber + Information",
"slug": "rane-subject+cyber-information",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Cyber + Information",
"status": "active",
"gid": "1-1",
"children": [
{
"id": 5,
"name": "Breaches",
"slug": "rane-subject+cyber-information+breaches",
"parent_id": 1,
"description": null,
"short_name": "",
"display_name": "Breaches",
"status": "active",
"gid": "1-5",
"children": []
},
{
"id": 6,
"name": "Cyber Compliance",
"slug": "rane-subject+cyber-information+cyber-compliance",
"parent_id": 1,
"description": null,
"short_name": "",
"display_name": "Cyber Compliance",
"status": "active",
"gid": "1-6",
"children": [
{
"id": 40,
"name": "Mandatory Compliance",
"slug": "rane-subject+cyber-information+cyber-compliance+mandatory-compliance",
"parent_id": 6,
"description": null,
"short_name": "",
"display_name": "Mandatory Compliance",
"status": "active",
"gid": "1-40",
"children": []
},
{
"id": 41,
"name": "Policies and Practices",
"slug": "rane-subject+cyber-information+cyber-compliance+policies-and-practices",
"parent_id": 6,
"description": null,
"short_name": "",
"display_name": "Policies and Practices",
"status": "active",
"gid": "1-41",
"children": []
}
]
},
{
"id": 7,
"name": "Cyber Crime",
"slug": "rane-subject+cyber-information+cyber-crime",
"parent_id": 1,
"description": null,
"short_name": "",
"display_name": "Cyber Crime",
"status": "active",
"gid": "1-7",
"children": [
{
"id": 250,
"name": "State-Sponsor ",
"slug": "rane-subject+cyber-information+cyber-crime+state-sponsor",
"parent_id": 7,
"description": null,
"short_name": "",
"display_name": "State-Sponsor ",
"status": "active",
"gid": "1-250",
"children": []
}
]
}
]
}
]
}
To filter all objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/rane-subject/filter
Response Object:
{
"user_id": "1",
"request_from": "user",
"request_id": "master_list-request-id-5b8d1e00-448f-4af8-b2ce-b221a446755d",
"trace_id": "master_list-trace-id-0c7db11f-0ac9-43b4-b743-998eec77ea9b",
"data": [
{
"id": 1,
"name": "Cyber + Information",
"slug": "rane-subject+cyber-information",
"parent_id": null,
"description": null,
"short_name": "",
"display_name": "Cyber + Information",
"status": "active",
"gid": "1-1",
"children": [
{
"id": 5,
"name": "Breaches",
"slug": "rane-subject+cyber-information+breaches",
"parent_id": 1,
"description": null,
"short_name": "",
"display_name": "Breaches",
"status": "active",
"gid": "1-5",
"children": []
},
{
"id": 6,
"name": "Cyber Compliance",
"slug": "rane-subject+cyber-information+cyber-compliance",
"parent_id": 1,
"description": null,
"short_name": "",
"display_name": "Cyber Compliance",
"status": "active",
"gid": "1-6",
"children": [
{
"id": 40,
"name": "Mandatory Compliance",
"slug": "rane-subject+cyber-information+cyber-compliance+mandatory-compliance",
"parent_id": 6,
"description": null,
"short_name": "",
"display_name": "Mandatory Compliance",
"status": "active",
"gid": "1-40",
"children": []
},
{
"id": 41,
"name": "Policies and Practices",
"slug": "rane-subject+cyber-information+cyber-compliance+policies-and-practices",
"parent_id": 6,
"description": null,
"short_name": "",
"display_name": "Policies and Practices",
"status": "active",
"gid": "1-41",
"children": []
}
]
},
{
"id": 7,
"name": "Cyber Crime",
"slug": "rane-subject+cyber-information+cyber-crime",
"parent_id": 1,
"description": null,
"short_name": "",
"display_name": "Cyber Crime",
"status": "active",
"gid": "1-7",
"children": [
{
"id": 250,
"name": "State-Sponsor ",
"slug": "rane-subject+cyber-information+cyber-crime+state-sponsor",
"parent_id": 7,
"description": null,
"short_name": "",
"display_name": "State-Sponsor ",
"status": "active",
"gid": "1-250",
"children": []
}
]
}
]
}
]
}
SourceGroup Resource
Class : v2.resources.source_group.SourceGroupResource
Note
Allowed Methods:
GET
POST
PUT
DELETE
Source Group API serves Source Group, can be used to group sources and then filter them in publishing engine
Note
Source Group API should support the sync of the Source Group fields and it’s relationship with the sources.
GET Method
SourceGroup GET Method
To get a single object:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/source-group/<:id>
Optional Query Parameters:
with-source: Includes the full source objects in the source field.with-source-slug: Includes the source slugs (list of strings) in the source field.with-inactive: Includes both active and inactive source groups and sources.
Note: If both with-source and with-source-slug are provided, with-source-slug takes precedence**.
Response Object:
{
"user_id": "0",
"request_from": "0",
"request_id": "master_list-request-id-f7bbb4c2-b566-408c-a310-5c564bf369fe",
"trace_id": "master_list-trace-id-ec37bff9-ad77-4bd8-bf52-c2a35df82afd",
"data": [
{
"id": 307,
"gid": "20-307",
"name": "test-BBC - English",
"display_name": "test-BBC",
"slug": "source-group+test-bbc-english",
"status": "active",
"source": [
"source+www-bbc-com-news-articles-c2e4m6m1r4eo"
]
}
]
}
Note: The above response is when with-source-slug is provided (and takes precedence over with-source). If only with-source is provided (and with-source-slug is not), the source field will contain full source objects:
"source": [
{
"id": 13,
"gid": "19-13",
"uri": "www.bbc.com/news/articles/c2e4m6m1r4eo",
"name": "BBC - English",
"slug": "source+www-bbc-com-news-articles-c2e4m6m1r4eo",
"status": "active",
"auto_created": false,
"display_name": "BBC"
}
]
To get multiple objects:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/source-group
Optional Query Parameters:
with-source: Includes the full source objects in the source field.with-source-slug: Includes the source slugs (list of strings) in the source field.with-inactive: Includes both active and inactive source groups and sources.
Note: If both with-source and with-source-slug are provided, with-source-slug takes precedence**.
Response Object:
{
"user_id": "0",
"request_from": "0",
"request_id": "master_list-request-id-<uuid>",
"trace_id": "master_list-trace-id-<uuid>",
"data": [
{
"id": 1,
"gid": "20-1",
"name": "Test Source Group One",
"display_name": "Test Source Group One",
"slug": "source-group+test-source-group-one",
"status": "active",
"source": []
},
{
"id": 4,
"gid": "20-4",
"name": "Test Source Group Four",
"display_name": "Test Source Group Four",
"slug": "source-group+test-source-group-four",
"status": "active",
"source": []
}
]
}
Note: The above response includes only active source groups by default. To include inactive source groups, use the with-inactive query parameter.
Error Responses:
If the requested source group ID does not exist or is deleted:
Response Object:
{
"request_from": "0",
"request_id": "master_list-request-id-db49281e-66f9-4ae4-b041-cdf43898ca9c",
"usage_context": {},
"trace_id": "master_list-trace-id-df5dead7-5bc6-41ed-addf-2223ba27cd8e",
"title": "ID not found",
"description": "<IDNotFoundError: 400 Bad Request>",
"errors": [
{
"code": null,
"description": "Traceback (most recent call last):\n File \"falcon/app.py\", line 365, in falcon.app.App.__call__\n rane_exception.falcon.IDNotFoundError: <IDNotFoundError: 400 Bad Request>\n"
}
]
}
Usage Examples:
Get a specific source group with source slugs included:
Request
Method:
GETURL: https://stag.api.ranenetwork.com/master-list/v2/source-group/307?with-source&with-source-slug&with-inactive
Response Object:
{ "user_id": "0", "request_from": "0", "request_id": "master_list-request-id-f7bbb4c2-b566-408c-a310-5c564bf369fe", "trace_id": "master_list-trace-id-ec37bff9-ad77-4bd8-bf52-c2a35df82afd", "data": [ { "id": 307, "gid": "20-307", "name": "test-BBC - English", "display_name": "test-BBC", "slug": "source-group+test-bbc-english", "status": "active", "source": [ "source+www-bbc-com-news-articles-c2e4m6m1r4eo" ] } ] }
Note: Since both
with-sourceandwith-source-slugare provided, andwith-source-slugtakes precedence, the source field contains source slugs.
Summary of Query Parameters:
with-source: Includes full source objects in the source field.with-source-slug: Includes source slugs (strings) in the source field.with-inactive: Includes inactive source groups and sources.
Response Fields:
id: Integer, unique identifier of the source group.
gid: String, global identifier combining type and ID.
name: String, name of the source group.
display_name: String, display name of the source group.
slug: String, URL-friendly identifier.
status: String, status of the source group (e.g., “active”, “inactive”, “deleted”).
source: List, depending on query parameters, contains source slugs or full source objects.
Example Source Object (when with-source):
{
"id": 13,
"gid": "19-13",
"uri": "www.bbc.com/news/articles/c2e4m6m1r4eo",
"name": "BBC - English",
"display_name": "BBC",
"slug": "source+www-bbc-com-news-articles-c2e4m6m1r4eo",
"status": "active",
"auto_created": false
}
Important Notes:
The default behavior is to return only active source groups and sources.
Deleted source groups and sources are not returned.
If both
with-sourceandwith-source-slugare provided,with-source-slugtakes precedence**.
POST Method
SourceGroup POST Method
Purpose: Create a new Source Group or update an existing one.
Request
Method:
POSTURL: https://stag.api.ranenetwork.com/master-list/v2/source-group
Add necessary headers
Required Fields in Request Body:
name: String, required. Name of the source group. Used to create thedisplay_nameandslug.
Optional Fields in Request Body:
display_name: String. If not provided, it will be set to the same value asname.status: String. Possible values areactive,inactive,deleted. Default isactive.source: List of source slugs. If provided, will create associations between the sources and the source group.
Behavior Notes:
If a Source Group with the same
namealready exists, this endpoint will update itsstatus,display_name, and source relationships.Only the
display_name,status, and source relationships can be changed through this endpoint.The
slugis auto-generated from thenamefield and cannot be changed once created.
Sample Request
Request Body:
{
"name": "test-BBC - United States",
"display_name": "test-BBC"
}
Response
Response Body:
{
"user_id": "0",
"request_from": "0",
"request_id": "master_list-request-id-aaaa7f0b-749a-4ad7-8f70-9064898374f6",
"trace_id": "master_list-trace-id-6518e357-200a-4476-a910-782b5e214fce",
"data": [
{
"name": "test-BBC - United States",
"display_name": "test-BBC",
"slug": "source-group+test-bbc-united-states",
"source": [],
"id": 305,
"gid": "20-305"
}
]
}
Error Responses
Missing Required Field ‘name’
Request
Add necessary headers
Request Body:
{ "display_name": "test-BBC" }
Response:
{ "user_id": "0", "request_from": "0", "request_id": "master_list-request-id-77ee8f8b-3915-4c7c-bd24-69a28fb0ff6c", "trace_id": "master_list-trace-id-7205aa40-eb31-414c-b4fa-71d5e26aa311", "data": [], "title": "Error while inserting/updating the Source Group", "errors": [ { "payload": { "display_name": "test-BBC", "slug": "source-group+", "source": [] }, "description": "Missing required field 'name'!" } ] }
Attempting to Change Immutable Fields (e.g., ‘slug’)
Request
Add necessary headers
Request Body:
{ "name": "test-BBC - United States", "display_name": "test-BBC 2", "status": "inactive", "slug": "source-group+test-bbc-united-statesc", "source": [] }
Response:
{ "user_id": "0", "request_from": "0", "request_id": "master_list-request-id-8ae3ea73-01de-4d9e-8566-987a1a86e0c1", "trace_id": "master_list-trace-id-3ff0ad64-16f9-4ff4-8ae8-04fd93f8249c", "data": [], "title": "Error while inserting/updating the Source Group", "errors": [ { "payload": { "name": "test-BBC - United States", "slug": "source-group+test-bbc-united-statesc", "display_name": "test-BBC 2", "status": "inactive", "source": [] }, "description": "Source Group slug 'test-bbc-united-statesc' does not match with auto-generated 'test-bbc-united-states', you cannot change the name and the slug once created" } ] }
Error While Inserting/Updating the Source Group
Request
Add necessary headers
Request Body:
{ "display_name": "test-BBC" }
Response:
{ "user_id": "0", "request_from": "0", "request_id": "master_list-request-id-15cdce94-8022-4ae0-b73b-593f448e22d0", "trace_id": "master_list-trace-id-bcdc5e6e-d2ca-450c-8cbb-abae48cf76bf", "data": [], "title": "Error while inserting/updating the Source Group", "errors": [ { "payload": { "display_name": "test-BBC", "slug": "source-group+", "source": [] }, "description": "(pymysql.err.OperationalError) (1364, \"Field 'name' doesn't have a default value\")\n[SQL: INSERT INTO ...]" } ] }
Important Notes
The
slugis auto-generated from thenamefield and cannot be changed once created.If
display_nameis not provided, it will be set to the same value asname.The associations between sources and the source group are created or updated based on the
sourcefield.Only the
display_name,status, and source relationships can be updated through this endpoint. Other fields are immutable.The
errorsfield in the response contains the list of errors encountered, withcodebeingnullfor now.When posting, if there is an error with an item, the error details are returned in the
errorsfield, along with thepayloadthat caused the error.
PUT Method
SourceGroup PUT Method
Purpose: Update an existing Source Group.
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/source-group/<:id> or https://stag.api.ranenetwork.com/master-list/v2/source-group
Add necessary headers
Updatable Fields in Request Body:
display_name: String. Updates the display name of the Source Group.status: String. Possible values areactive,inactive,deleted.
Immutable Fields:
name: Cannot be changed.slug: Cannot be changed.Any extra fields sent will be ignored.
Behavior Notes:
Only
display_nameandstatusfields can be updated through this endpoint.If extra fields or immutable fields are sent, the API will ignore them and only update the
display_nameandstatus.
Sample Requests and Responses
Updating a Single Source Group
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/source-group/<:id>
Add necessary headers
Request Body:
{ "display_name": "test-BBC - updated", "status": "inactive" }
Response:
{ "user_id": "0", "request_from": "0", "request_id": "master_list-request-id-bb39a6bb-5003-4153-92fa-75d07bed1c52", "trace_id": "master_list-trace-id-d02e286b-eb38-47c4-9e26-6a4d76c68694", "data": [ { "id": 333, "name": "test-BBC - United States", "display_name": "test-BBC - updated", "slug": "source-group+test-bbc-united-states", "status": "inactive", "gid": "20-333" } ] }
Updating Multiple Source Groups
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/source-group
Add necessary headers
Request Body:
[ { "id": 333, "display_name": "test-BBC - updated again", "status": "active" }, { "id": 334, "display_name": "test-BBC - updated" } ]
Response:
{ "user_id": "0", "request_from": "0", "request_id": "master_list-request-id-bb39a6bb-5003-4153-92fa-75d07bed1c52", "trace_id": "master_list-trace-id-d02e286b-eb38-47c4-9e26-6a4d76c68694", "data": [ { "id": 333, "name": "test-BBC - United States", "display_name": "test-BBC - updated again", "slug": "source-group+test-bbc-united-states", "status": "active", "gid": "20-333" }, { "id": 334, "name": "test-BBC - Nepal", "display_name": "test-BBC - updated", "slug": "source-group+test-bbc-nepal", "status": "active", "gid": "20-334" } ] }
Immutable Fields Ignored
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/source-group/<:id>
Add necessary headers
Request Body:
{ "name": "test-BBC - updated - immutable field change ignored", "extra_field": "extra-field-ignored" }
Response:
{ "user_id": "0", "request_from": "0", "request_id": "master_list-request-id-f8a5b153-12cb-4112-836b-3f4ded44d220", "trace_id": "master_list-trace-id-92f6696a-b5d7-40fe-b0d3-2c12d4e354c1", "data": [ { "id": 333, "name": "test-BBC - United States", "display_name": "test-BBC - updated", "slug": "source-group+test-bbc-united-states", "status": "active", "gid": "20-333" } ] }
Error Responses
Source Group ID Not Found
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/source-group/-1
Add necessary headers
Response:
{ "request_from": "0", "request_id": "master_list-request-id-47e33c35-1ffd-4ba7-b4bb-e0008f218eb6", "usage_context": {}, "trace_id": "master_list-trace-id-e295fd18-9e4a-4a4d-b810-7fde0565854c", "title": "Could not find ids: dict_keys([1]) to update", "description": "<IDNotFoundError: 400 Bad Request>", "errors": [ { "code": null, "description": "Traceback (most recent call last):\n File \"falcon/app.py\", line 365, in falcon.app.App.__call__\n rane_exception.falcon.IDNotFoundError: <IDNotFoundError: 400 Bad Request>\n" } ] }
Source Group ID Not Found in Multiple Update
Request
Method:
PUTURL: https://stag.api.ranenetwork.com/master-list/v2/source-group
Add necessary headers
Request Body:
[ { "id": 333, "display_name": "test-BBC - updated again", "status": "active" }, { "id": -1, "display_name": "test-BBC - updated" } ]
Response:
{ "request_from": "0", "request_id": "master_list-request-id-14419e37-9129-4b05-aaf5-de97634b9f5c", "usage_context": {}, "trace_id": "master_list-trace-id-8d448ca8-a682-480a-b9e4-2cbbd31cc1bc", "title": "Could not find ids: dict_keys([-1]) to update", "description": "<IDNotFoundError: 400 Bad Request>", "errors": [ { "code": null, "description": "Traceback (most recent call last):\n File \"falcon/app.py\", line 365, in falcon.app.App.__call__\n rane_exception.falcon.IDNotFoundError: <IDNotFoundError: 400 Bad Request>\n" } ] }
Important Notes
Only the
display_nameandstatusfields can be updated through this endpoint. Other fields are immutable.If extra fields or immutable fields are sent, the API will ignore them and only update the
display_nameandstatus.When updating multiple Source Groups, if any of the IDs are not found, the API will return an error.
The
errorsfield in the error response contains the list of errors encountered, withcodebeingnullfor now.
DELETE Method
SourceGroup DELETE Method
Purpose: Delete a single Source Group or multiple Source Groups.
Request
Method:
DELETEURL: * To delete a single Source Group:
https://stag.api.ranenetwork.com/master-list/v2/source-group/<:id>* To delete multiple Source Groups:https://stag.api.ranenetwork.com/master-list/v2/source-groupAdd necessary headers
Behavior Notes:
Deleting a Source Group by ID performs a soft delete, setting its status to
deleted.When deleting multiple Source Groups, you can specify
delete_permanentlyastrueorfalse: - Ifdelete_permanentlyistrue, the records will be permanently deleted from the database. - Note: This should not be used in production and is intended for internal testing and clean-up. - Ifdelete_permanentlyisfalseor omitted, it performs a soft delete, setting the status todeleted.
Sample Requests and Responses
Deleting a Single Source Group
Request
Method:
DELETEURL:
https://stag.api.ranenetwork.com/master-list/v2/source-group/<:id>Add necessary headers
Response:
{ "user_id": "0", "request_from": "test", "request_id": "master_list-request-id-92b21a1f-69e9-4b1e-a1cc-7cfcb8000cfb", "trace_id": "master_list-trace-id-a69b7218-5b90-4142-8737-951462997c83", "data": [ { "id": 333, "name": "test-BBC - United States", "display_name": "test-BBC - updated", "slug": "source-group+test-bbc-united-states", "status": "deleted", "gid": "20-333" } ] }
Bulk Deleting Multiple Source Groups
Request
Method:
DELETEURL:
https://stag.api.ranenetwork.com/master-list/v2/source-groupAdd necessary headers
Request Payload:
{ "ids": [333, 334, 335, 336], "delete_permanently": true }
Response:
{ "user_id": "0", "request_from": "test", "request_id": "master_list-request-id-b779148c-67d5-4823-a6b0-3438cf87cb84", "trace_id": "master_list-trace-id-38be0383-7d11-4281-b4f9-02a825ae417e", "data": [ { "id": 333, "name": "test-BBC - United States", "display_name": "test-BBC - updated", "slug": "source-group+test-bbc-united-states", "status": "deleted", "gid": "20-333" }, { "id": 334, "name": "test-BBC - Nepal", "display_name": "test-BBC - updated", "slug": "source-group+test-bbc-nepal", "status": "active", "gid": "20-334" }, { "id": 335, "name": "test-BBC - China", "display_name": "test-BBC", "slug": "source-group+test-bbc-china", "status": "active", "gid": "20-335" }, { "id": 336, "name": "test-BBC - United Kingdom", "display_name": "test-BBC", "slug": "source-group+test-bbc-united-kingdom", "status": "active", "gid": "20-336" } ] }
Note: The
delete_permanentlyflag set totruewill permanently delete the records.Bulk Deleting with Soft Delete
Request
Method:
DELETEURL:
https://stag.api.ranenetwork.com/master-list/v2/source-groupAdd necessary headers
Request Payload:
{ "ids": [337, 338, 339], "delete_permanently": false }
Response:
{ "user_id": "0", "request_from": "test", "request_id": "master_list-request-id-a9cae1a4-2221-4441-9b20-fc97394304cc", "trace_id": "master_list-trace-id-d63519e5-97f2-4d4a-960d-94b778305d15", "data": [ { "id": 337, "name": "test-BBC - United States", "display_name": "test-BBC - updated again", "slug": "source-group+test-bbc-united-states", "status": "deleted", "gid": "20-337" }, { "id": 338, "name": "test-BBC - Nepal", "display_name": "test-BBC - updated", "slug": "source-group+test-bbc-nepal", "status": "deleted", "gid": "20-338" }, { "id": 339, "name": "test-BBC - China", "display_name": "test-BBC", "slug": "source-group+test-bbc-china", "status": "deleted", "gid": "20-339" }, { "id": 340, "name": "test-BBC - United Kingdom", "display_name": "test-BBC", "slug": "source-group+test-bbc-united-kingdom", "status": "deleted", "gid": "20-340" } ] }
Error Responses
Source Group ID Not Found
Request
Method:
DELETEURL:
https://stag.api.ranenetwork.com/master-list/v2/source-group/-1Add necessary headers
Response:
{ "request_from": "test", "request_id": "master_list-request-id-5b6eb658-434e-4265-87be-22a6eae44f95", "usage_context": {}, "trace_id": "master_list-trace-id-611e9546-9528-4719-82bf-a1fb7c831675", "title": "Could not find ids:set() to soft delete", "description": "<IDNotFoundError: 400 Bad Request>", "errors": [ { "code": null, "description": "Traceback (most recent call last):\n File \"falcon/app.py\", line 365, in falcon.app.App.__call__\n rane_exception.falcon.IDNotFoundError: <IDNotFoundError: 400 Bad Request>\n" } ] }
Note: The error is related to the provided ID not being found for deletion.
Important Notes
When deleting a single Source Group by ID, it performs a soft delete (sets
statustodeleted).For bulk deletes: - If
delete_permanentlyis set totrue, the Source Groups are permanently deleted from the database. - Use with caution: This operation cannot be undone. - Intended for internal testing and clean-up purposes. - Ifdelete_permanentlyis set tofalseor omitted, it performs a soft delete (setsstatustodeleted).The response will include the last state of the Source Groups before deletion.
Deleting a Source Group does not remove associated sources; it only affects the Source Group’s status.