# GS1 Element String Parser & Validator

> GS1 Element String Parser & Validator is a paid API for AI agents from detect.halowerk.com, paid per call via x402, $0.003/call, status unknown (last checked 2026-11-01).

Parses and validates GS1 element strings by reconstructing ordered application identifiers, verifying check digits, resolving explicit-century dates, and extracting exact decimal measures.

## Facts

- Endpoint: POST https://detect.halowerk.com/v1/F-TD2000-DOCUMENTS-06/gs1-element-string-predefined-variable-ai-decimal-date-projection?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-01
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/gs1-element-string-parser-validator-9a54b8cd
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_RPsbV5NvM-n5e7edM5qRK

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability gs1-element-string-parser-validator-9a54b8cd -d '<json body>'
```

Example prompt: Parse this GS1 element string '(01)09521234543213(17)251231(10)ABC123' using century 2000 and tell me if the check digit is valid, what the expiry date resolves to, and whether all the application identifiers are semantically valid.

## When to prefer this

Choose this endpoint when you need to rigorously parse and validate GS1 element strings — especially when century disambiguation for date AIs (e.g. expiry, production date) is critical, check digit correctness must be confirmed, or decimal AI values need exact extraction. Prefer this over generic barcode decoders when GS1 AI semantics and standards-compliance validation matter, such as in pharmaceutical traceability, retail receiving, or supply chain automation workflows.

## Known failure modes

- Element string malformed or unparseable — returns validation error
- Unsupported or unknown application identifier — semantic_valid set to false
- Check digit mismatch — check_digit_valid returns false
- Year century enum value not one of 1900, 2000, or 2100 — schema validation error
- Element string exceeds 2048 character limit — rejected at input validation
- Empty element string — rejected with minLength constraint error
- Claim object provided but contradicts parsed data — mismatch flagged in response

## How this service works

Reconstruct GS1 element strings into ordered application identifiers, check digits, explicit-century dates and exact decimal measures.

## Output

Returns a structured object containing an array of parsed GS1 application identifier elements, each with its AI code, raw value, check digit validity status, resolved explicit-century date (if applicable), decimal value (if applicable), and a semantic validity flag, plus an overall boolean indicating whether all local syntax and semantics are valid.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "artifact": {
   "type": "object",
   "required": [
    "gs1Elements"
   ],
   "properties": {
    "gs1Elements": {
     "type": "object",
     "required": [
      "data",
      "claim"
     ],
     "properties": {
      "data": {
       "type": "object",
       "required": [
        "element_string",
        "year_century"
       ],
       "properties": {
        "year_century": {
         "enum": [
          1900,
          2000,
          2100
         ]
        },
        "element_string": {
         "type": "string",
         "maxLength": 2048,
         "minLength": 1
        }
       },
       "additionalProperties": false
      },
      "claim": {
       "anyOf": [
        {
         "type": "null"
        },
        {
         "type": "object",
         "required": [
          "elements",
          "all_local_syntax_semantics_valid"
         ],
         "properties": {
          "elements": {
           "type": "array",
           "items": {
            "type": "object",
            "required": [
             "ai",
             "value",
             "check_digit_valid",
             "date",
             "decimal_value",
             "semantic_valid"
            ],
            "properties": {
             "ai": {
              "type": "string",
              "maxLength": 4,
              "minLength": 1
             },
             "date": {
              "anyOf": [
               {
                "type": "null"
               },
               {
                "type": "string",
                "maxLength": 10,
                "minLength": 1
               }
              ]
             },
             "value": {
              "type": "string",
              "maxLength": 20,
              "minLength": 1
             },
             "decimal_value": {
              "anyOf": [
               {
                "type": "null"
               },
               {
                "type": "string",
                "maxLength": 24,
                "minLength": 1
               }
              ]
             },
             "semantic_valid": {
              "type": "boolean"
             },
             "check_digit_valid": {
              "anyOf": [
               {
                "type": "null"
               },
               {
                "type": "boolean"
               }
              ]
             }
            },
            "additionalProperties": false
           },
           "maxItems": 64,
           
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/gs1-element-string-parser-validator-9a54b8cd/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from detect.halowerk.com](https://www.zero.xyz/host/detect.halowerk.com/llms.txt)
