Skip to content

Commit

Permalink
IBR Files
Browse files Browse the repository at this point in the history
  • Loading branch information
tntra-dhananjay committed Dec 13, 2023
1 parent 074af64 commit 138593a
Show file tree
Hide file tree
Showing 20 changed files with 842 additions and 61 deletions.
66 changes: 51 additions & 15 deletions release/html/ibr_api_v1.0.0.html

Large diffs are not rendered by default.

42 changes: 28 additions & 14 deletions release/html/social_api_v1.0.0.html

Large diffs are not rendered by default.

129 changes: 115 additions & 14 deletions release/yaml/ibr_api_v1.0.0.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,31 @@ info:
- [Sex](https://standards.spdci.org/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/code-directory/cd.com.03-sex)
- [Vital event types](https://standards.spdci.org/standards/standards-for-interoperability-interfaces/common-standards-for-interoperability-interfaces/data/code-directory/cd.com.04-vital_event)
Each request is build up of three parts
Data Objects:
- Person (WIP)
- HouseHold (WIP)
Each request is build up of three parts
- signature
- header
- message
Information about each part is given below
**Signature:**
- The signature is used to verify the integrity of the message.
- The signature is a hash of the message and is encrypted using the private key of the sender.
- The receiver can verify the signature using the public key of the sender.
**Header:**
- The header contains information about various message header, refer to the header schema for more details.
**Message:**
- The message contains the actual payload of the message.
- Refere example section to get sample data and also read Gitbook for details data objects
- The receiver can decrypt the message using the private key of the "err.receiver_id.invalid"
version: 1.0.0
contact:
name: DCI Social Protection
Expand Down Expand Up @@ -132,7 +153,13 @@ paths:
/registry/search:
post:
summary: /registry/search
description: Search person(s) in registry using identifier or custome attributes
description: |-
The async search api will accept request and will send response to on-search endpoint. The registry system will implement /registry/search endpoint and the SP system shall implement /registry/on-search to receive data from registry system.
The search request message consist of reg_event_type, query_type, query, sort, pagination, consent, authorize, locale. The registry system will validate the request and will send response to on-search endpoint.
Information for each field is given below.
- reg_event_type: The event type for which search to be performed, this can be any of event type explained in RegistryEventType.yaml
- query_type: The query type on which registry to determene type of search process, this can be any of query type explained in QueryType.yaml
- query: The query will indicate payload of data which to be seached in registry, this can be any of explained in RegistryQueries.yaml
operationId: post_reg_search
tags:
- Async
Expand Down Expand Up @@ -185,7 +212,7 @@ paths:
/registry/on-search:
post:
summary: /registry/on-search
description: Search results through callback
description: The /registry/on-search end point tobe implemented by SP system to receive search results from registry system. The registry system will send data in format explained in SearchResponse.yaml. The reg_records will containe data that in explained in ibr/v1/Person.jsonld. Refer example json at
operationId: post_reg_on-search
tags:
- Async
Expand Down Expand Up @@ -652,7 +679,13 @@ paths:
/registry/sync/search:
post:
summary: /registry/sync/search
description: Search person(s) in registry using identifier or custome attributes
description: |-
The sync search api will accept request and will send response immediately
The search request message consist of reg_event_type, query_type, query, sort, pagination, consent, authorize, locale. The registry system will validate the request and will send response to on-search endpoint.
Information for each field is given below.
- reg_event_type: The event type for which search to be performed, this can be any of event type explained in RegistryEventType.yaml
- query_type: The query type on which registry to determene type of search process, this can be any of query type explained in QueryType.yaml
- query: The query will indicate payload of data which to be seached in registry, this can be any of explained in RegistryQueries.yaml
operationId: post_reg_sync_search
tags:
- Sync
Expand Down Expand Up @@ -903,13 +936,7 @@ components:
beneficiaries:
type: array
items:
type: object
description: |
1. Attributes of a person to create fetch records, create verifiable credentials or use in search criteria.
3. Allows Country/Registry specific implementation extensions using Attribute Name/Value pairs.
@context: "https://schema.spdci.org/extensions/ibr/v1/Person.jsonld" <br>
@type: "@context" <br>
$ref: '#/components/schemas/SearchResponse/properties/search_response/items/properties/data/properties/reg_records/items'
required:
- transaction_id
- receipt_information
Expand Down Expand Up @@ -1221,6 +1248,61 @@ components:
@context: https://schema.spdci.org/extensions/ibr/v1/Person.jsonld <br>
@type: "Person" <br>
@container: "@set" <br>
type: array
items:
type: object
description: |
1. Attributes of a person to create fetch records, create verifiable credentials or use in search criteria.
3. Allows Country/Registry specific implementation extensions using Attribute Name/Value pairs.
@context: "https://schema.spdci.org/extensions/ibr/v1/Person.jsonld" <br>
@type: "@context" <br>
example:
'@context':
'@vocab': 'https://schema.spdci.org/extensions/ibr/v1'
xsd: 'http://www.w3.org/2001/XMLSchema#'
schema: 'http://schema.org/'
rdfs: 'http://www.w3.org/2000/01/rdf-schema#'
owl: 'http://www.w3.org/2002/07/owl#'
'@id': Person
'@type': Person
identifier:
'@id': Identifier
'@type': Identifier
identifier_type: UIN
identifier_value: '847951632'
name:
'@type': Name
surname: Phumchai
given_name: Sudarat
second_name: ''
prefix: Dr.
suffix: PhD
household_status: ''
benefiting_entity: Person
sex: female
birth_date: '1995-09-21T11:20:00'
sub_region_code: ''
marital_status: M
poverty_score: ''
is_disabled: 2
household_identifier: ''
programme_name: ''
programme_identifier: ''
registration_date: '2022-09-21T11:20:00'
enrolment_date: '2022-10-21T11:20:00'
suspension_date: '2023-09-21T11:20:00'
graduation_date: '2022-09-21T11:20:00'
enrolment_status: '3'
benefit_type: '2'
benefit_date: ''
benefit_value: ''
payroll_date: ''
payroll_amount: ''
payment_credit_date: ''
payment_credit_amount: ''
payment_charges: ''
payment_status: '1'
required:
- reg_records
pagination:
Expand Down Expand Up @@ -1287,9 +1369,18 @@ components:
type: string
default: 1.0.0
reg_type:
$ref: '#/components/schemas/NotifyEventRequest/properties/notify_event/items/properties/data/properties/reg_type'
type: string
description: |
@context: https://schema.spdci.org/common/v1/RegistryType.jsonld <br>
@type: "RegistryType" <br>
**Notes:**
1. Registry type values defined as per implementation context.
2. Usually a list of **enum** values of all possible queryable functional registries
3. example: "ns:org:RegistryType:IBR"
example: 'ns:org:RegistryType:IBR'
reg_event_type:
$ref: '#/components/schemas/NotifyEventRequest/properties/notify_event/items/properties/data/properties/reg_event_type'
$ref: '#/components/schemas/SearchRequest/properties/search_request/items/properties/search_criteria/properties/reg_event_type'
frequency:
type: object
description: |
Expand All @@ -1315,7 +1406,17 @@ components:
filter:
$ref: '#/components/schemas/SearchRequest/properties/search_request/items/properties/search_criteria/properties/query'
notify_record_type:
$ref: '#/components/schemas/NotifyEventRequest/properties/notify_event/items/properties/data/properties/reg_record_type'
type: string
description: |
@context: "https://schema.spdci.org/extensions/ibr/v1/Person.jsonld" <br>
@type: "RegistryRecordType" <br>
**Notes:**
1. Registry record type values defined as per implementation context.
2. Usually a list of **enum** values of all possible queryable result sets
3. Referenced in search_request and notify events
4. example: "Person"
example: Person
authorize:
$ref: '#/components/schemas/SearchRequest/properties/search_request/items/properties/search_criteria/properties/authorize'
required:
Expand Down
Loading

0 comments on commit 138593a

Please sign in to comment.