Documentation/Developers
Back
  • Getting started
    • Frontends and app types
    • Environments and endpoints
  • OAuth clients
    • Client ID and secret
    • Redirect URIs and start URL
    • Secret rotation
  • Login with appsolut
    • Authorization code flow
    • Tokens and claims
    • Frontend role
    • Sign-out
    • Revocation and issued tokens
    • Token endpoint errors
  • Frontend keys
    • Issue and store a key
    • Send a key
    • Rotate and revoke
  • Members API
    • Eligibility from a backend
    • The signed-in member
    • Results, rate limits and errors
    • Is an applicant an eligible member?
    • The signed-in frontend user's membership
  • appsolut register API
    • Implement the API
    • Connect and test
    • Verify a member with their challenge code
    • List every member
    • The status of several members
    • The status of one member
    • The person data of several members
    • The person data of one member
    • The claims of several members
    • The claims of one member
    • Health check

The claims of several members

GET /members/claims

The status, person data and claims of each member code in keys. The Studio does not call this operation at present.

Authentication

  • appsolut_m2m (sent in the header x-api-key): The "API key" entered in the register's connection in the Studio, sent with every call. The Studio keeps it encrypted and never shows it again. Answer 401 or 403 to a wrong key.

Parameters

NameInRequiredTypeDescription
keysqueryYesstring[]The member codes to look up, the parameter repeated for each: ?keys=100001&keys=100002. Example: ["100001","100002"].
x-tenant-idheaderYesstringThe "Tenant ID" entered in the register's connection in the Studio, sent unchanged with every call. Your register can use it to tell apart the organisations it serves. Example: pannoniqa.
x-custom-scopeheaderYesstringThe "Scope" entered in the register's connection in the Studio, sent unchanged with every call. Your register can use it to choose the data set it answers from. Example: employees.

Responses

200

One element per member code found. A member the register holds without data may answer empty params and claims.

Content type: application/json

FieldTypeRequiredDescription
[].memberCodestringYesThe member code, the person's identifier in the organisation.
[].sourcestringYesThe name of your data source, such as "SAP HR".
[].statusobjectYes
[].status.statusCodestringYesThe member's status in the register. Filters in the membership definition and in communities can check it. Allowed values: active, inactive, pending.
[].paramsobjectYesThe person data the register holds. Every field is optional in the contract, but where the Studio compares facts it needs the first name, last name and birth date. The address is member data a frontend may show its signed-in member.
[].params.firstNamestringNoFirst name.
[].params.lastNamestringNoLast name.
[].params.memberCodestringNoThe member code as the register holds it.
[].params.birthDatestring (date)NoBirth date, YYYY-MM-DD.
[].params.zipstringNoPostal code.
[].params.citystringNoCity.
[].params.streetstringNoStreet and house number.
[].params.countrystringNoCountry code, such as AT.
[].claimsobjectYesFacts about the member that the membership definition and communities can filter on. All are optional and any may be null, such as for a claim the register does not know; what null means is the claim's own (for leavingDate, still employed). A register may send claims of its own beyond these.
[].claims.entitledboolean or nullNoWhether the member is entitled to community benefits.
[].claims.discountLevelinteger or nullNoDiscount level, in percent. At least 0. At most 100.
[].claims.companyNamestring or nullNoThe company the member works for.
[].claims.employeeGroupstring or nullNoThe member's employee group.
[].claims.employmentLevelinteger or nullNoEmployment level, in percent of full time. At least 0. At most 100.
[].claims.leavingDatestring (date) or nullNoThe date the member left, YYYY-MM-DD; a date-time is accepted too. Null while employed.
[].claims.isAnnualSalaryAbove50kboolean or nullNoWhether the annual salary is above 50,000.
[].claims.numberOfKidsinteger or nullNoNumber of children. At least 0.
[].claims.childAllowanceboolean or nullNoWhether the member receives child allowance.
[].claims.soleEarnerboolean or nullNoWhether the member is a sole earner.
[].claims.mealVouchernumber or nullNoAmount of the meal voucher. At least 0.

Example

[
  {
    "memberCode": "100001",
    "source": "SAP HR",
    "status": {
      "statusCode": "active"
    },
    "params": {
      "firstName": "Anna",
      "lastName": "Berger",
      "memberCode": "100001",
      "birthDate": "1979-02-02",
      "zip": "7100",
      "city": "Neusiedl am See",
      "street": "Musterweg 3",
      "country": "AT"
    },
    "claims": {
      "numberOfKids": 2,
      "employeeGroup": "Production",
      "isAnnualSalaryAbove50k": false,
      "discountLevel": 10,
      "employmentLevel": 100,
      "leavingDate": null,
      "companyName": "Pannoniqa AG"
    }
  },
  {
    "memberCode": "100002",
    "source": "SAP HR",
    "status": {
      "statusCode": "active"
    },
    "params": {
      "firstName": "Markus",
      "lastName": "Horvath",
      "memberCode": "100002",
      "birthDate": "1985-11-23",
      "zip": "7000",
      "city": "Eisenstadt",
      "street": "Beispielgasse 12",
      "country": "AT"
    },
    "claims": {
      "numberOfKids": 0,
      "employeeGroup": "Administration",
      "isAnnualSalaryAbove50k": true,
      "discountLevel": 10,
      "employmentLevel": 80,
      "leavingDate": null,
      "companyName": "Pannoniqa AG"
    }
  },
  {
    "memberCode": "100004",
    "source": "SAP HR",
    "status": {
      "statusCode": "inactive"
    },
    "params": {},
    "claims": {}
  }
]

400

The register could not process the request. The Studio treats it as the register being unavailable and does not read the body.

Content type: text/plain

Type: string

Example

Bad request

401

The API key is wrong. The Studio reports the credentials as rejected (it does the same for 403) and treats the register as unavailable.

Content type: text/plain

Type: string

Example

Unauthorized