# Error in cert-issuer "Failed validating 'pattern' in schema"

**URL:** https://community.blockcerts.org/t/error-in-cert-issuer-failed-validating-pattern-in-schema/185
**Category:** Support
**Created:** [June 27, 2017, 12:52pm UTC](https://community.blockcerts.org/t/error-in-cert-issuer-failed-validating-pattern-in-schema/185 "2017-06-27T12:52:03Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![vasanth](https://avatars.discourse-cdn.com/v4/letter/v/85e7bf/32.png) [@vasanth](https://community.blockcerts.org/u/vasanth)
#### Post date: [June 27, 2017, 12:52pm UTC](https://community.blockcerts.org/t/error-in-cert-issuer-failed-validating-pattern-in-schema/185/1 "2017-06-27T12:52:03Z")

</div>

bash-4.3# cert-issuer -c /etc/cert-issuer/conf.ini  
WARNING:root:Your app is configured to skip the wifi check when the USB is plugged in. Read the documentation to ensure this is what you want, since this is less secure  
INFO:root:Processing 0 certificates  
INFO - Processing 0 certificates  
WARNING:root:No certificates to process  
WARNING - No certificates to process  
bash-4.3# cert-issuer -c /etc/cert-issuer/conf.ini  
WARNING:root:Your app is configured to skip the wifi check when the USB is plugged in. Read the documentation to ensure this is what you want, since this is less secure  
INFO:root:Processing 2 certificates  
INFO - Processing 2 certificates  
INFO:root:Processing 2 certificates under work path=/etc/cert-issuer/work  
INFO - Processing 2 certificates under work path=/etc/cert-issuer/work  
INFO:root:Signing certificates…  
INFO - Signing certificates…  
INFO:root:Set cost constants to recommended\_tx\_fee=0.000600,min\_per\_output=0.000028,satoshi\_per\_byte=250  
INFO - Set cost constants to recommended\_tx\_fee=0.000600,min\_per\_output=0.000028,satoshi\_per\_byte=250  
INFO:root:Total cost will be 133500 satoshis  
INFO - Total cost will be 133500 satoshis  
INFO:root:Preparing certificate batch  
INFO - Preparing certificate batch  
ERROR:root:‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
Traceback (most recent call last):  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 89, in validate\_json  
jsonschema.validate(certificate\_json, schema\_json)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 541, in validate  
cls(schema, \*args, \*\*kwargs).validate(instance)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 130, in validate  
raise error  
jsonschema.exceptions.ValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
ERROR - ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
Traceback (most recent call last):  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 89, in validate\_json  
jsonschema.validate(certificate\_json, schema\_json)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 541, in validate  
cls(schema, \*args, \*\*kwargs).validate(instance)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 130, in validate  
raise error  
jsonschema.exceptions.ValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
Traceback (most recent call last):  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 89, in validate\_json  
jsonschema.validate(certificate\_json, schema\_json)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 541, in validate  
cls(schema, \*args, \*\*kwargs).validate(instance)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 130, in validate  
raise error  
jsonschema.exceptions.ValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
‘2017-06-27T17:59:00.423120+00:00’

During handling of the above exception, another exception occurred:

Traceback (most recent call last):  
File “/usr/bin/cert-issuer”, line 11, in   
load\_entry\_point(‘cert-issuer==2.0b16’, ‘console\_scripts’, ‘cert-issuer’)()  
File “/usr/lib/python3.5/site-packages/cert\_issuer/ **main**.py”, line 17, in cert\_issuer\_main  
issue\_certificates.main(parsed\_config)  
File “/usr/lib/python3.5/site-packages/cert\_issuer/issue\_certificates.py”, line 80, in main  
tx\_id = issuer.issue\_certificates()  
File “/usr/lib/python3.5/site-packages/cert\_issuer/issuer.py”, line 129, in issue\_certificates  
self.certificate\_batch\_handler.validate\_batch()  
File “/usr/lib/python3.5/site-packages/cert\_issuer/certificate\_handler.py”, line 38, in validate\_batch  
self.certificate\_handler.validate\_certificate(metadata)  
File “/usr/lib/python3.5/site-packages/cert\_issuer/certificate\_handler.py”, line 120, in validate\_certificate  
validate\_v2(certificate\_json)  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 55, in validate\_v2  
result = validate\_json(certificate\_json, schema\_v2)  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 93, in validate\_json  
raise BlockcertValidationError(ve)  
cert\_schema.BlockcertValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
bash-4.3# cert-issuer -c /etc/cert-issuer/conf.ini  
WARNING:root:Your app is configured to skip the wifi check when the USB is plugged in. Read the documentation to ensure this is what you want, since this is less secure  
INFO:root:Processing 2 certificates  
INFO - Processing 2 certificates  
INFO:root:Processing 2 certificates under work path=/etc/cert-issuer/work  
INFO - Processing 2 certificates under work path=/etc/cert-issuer/work  
INFO:root:Signing certificates…  
INFO - Signing certificates…  
INFO:root:Set cost constants to recommended\_tx\_fee=0.000600,min\_per\_output=0.000028,satoshi\_per\_byte=250  
INFO - Set cost constants to recommended\_tx\_fee=0.000600,min\_per\_output=0.000028,satoshi\_per\_byte=250  
INFO:root:Total cost will be 133500 satoshis  
INFO - Total cost will be 133500 satoshis  
INFO:root:Preparing certificate batch  
INFO - Preparing certificate batch  
ERROR:root:‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
Traceback (most recent call last):  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 89, in validate\_json  
jsonschema.validate(certificate\_json, schema\_json)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 541, in validate  
cls(schema, \*args, \*\*kwargs).validate(instance)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 130, in validate  
raise error  
jsonschema.exceptions.ValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
ERROR - ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
Traceback (most recent call last):  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 89, in validate\_json  
jsonschema.validate(certificate\_json, schema\_json)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 541, in validate  
cls(schema, \*args, \*\*kwargs).validate(instance)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 130, in validate  
raise error  
jsonschema.exceptions.ValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
'2017-06-27T17:59:00.423120+00:00’  
Traceback (most recent call last):  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 89, in validate\_json  
jsonschema.validate(certificate\_json, schema\_json)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 541, in validate  
cls(schema, \*args, \*\*kwargs).validate(instance)  
File “/usr/lib/python3.5/site-packages/jsonschema/validators.py”, line 130, in validate  
raise error  
jsonschema.exceptions.ValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
‘2017-06-27T17:59:00.423120+00:00’

During handling of the above exception, another exception occurred:

Traceback (most recent call last):  
File “/usr/bin/cert-issuer”, line 11, in   
load\_entry\_point(‘cert-issuer==2.0b16’, ‘console\_scripts’, ‘cert-issuer’)()  
File “/usr/lib/python3.5/site-packages/cert\_issuer/ **main**.py”, line 17, in cert\_issuer\_main  
issue\_certificates.main(parsed\_config)  
File “/usr/lib/python3.5/site-packages/cert\_issuer/issue\_certificates.py”, line 80, in main  
tx\_id = issuer.issue\_certificates()  
File “/usr/lib/python3.5/site-packages/cert\_issuer/issuer.py”, line 129, in issue\_certificates  
self.certificate\_batch\_handler.validate\_batch()  
File “/usr/lib/python3.5/site-packages/cert\_issuer/certificate\_handler.py”, line 38, in validate\_batch  
self.certificate\_handler.validate\_certificate(metadata)  
File “/usr/lib/python3.5/site-packages/cert\_issuer/certificate\_handler.py”, line 120, in validate\_certificate  
validate\_v2(certificate\_json)  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 55, in validate\_v2  
result = validate\_json(certificate\_json, schema\_v2)  
File “/usr/lib/python3.5/site-packages/cert\_schema/schema\_validator.py”, line 93, in validate\_json  
raise BlockcertValidationError(ve)  
cert\_schema.BlockcertValidationError: ‘2017-06-27T17:59:00.423120+00:00’ does not match ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’

Failed validating ‘pattern’ in schema[‘properties’][‘issuedOn’]:  
{‘description’: 'Open Badges must express timestamps as strings '  
'compatible with ISO 8601 guidelines, including the '  
'time and a time zone indicator. It is recommended to '  
'publish all timestamps in UTC. Previous versions of '  
'Open Badges allowed Unix timestamps as integers. Open '  
'Badges v2.0 requires string ISO 8601 values with time '  
'zone indicators. For example, '  
'2016-12-31T23:59:59+00:00 is a valid ISO 8601 '  
'timestamp. It contains the year, month, day, T '  
'separator, hour number 0-23, minute, optional seconds '  
‘and decimal microsecond, and a time zone indicator ‘  
’(+/- an offset from UTC or the Z designator for UTC).’,  
‘pattern’: ‘^\d{4}-[01]\d-[0-3]\d(T[0-2]\d:[0-5]\d(:[0-5]\d)?([\.,]\d{1,3})?(Z|[±][0-2]\d(:?[0-5]\d)?)?)?$’,  
‘type’: ‘string’}

On instance[‘issuedOn’]:  
‘2017-06-27T17:59:00.423120+00:00’

---

<div class="post-metadata">

### Author: ![kim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.blockcerts.org/kim/32/307_2.png) [@kim](https://community.blockcerts.org/u/kim)
#### Post date: [June 27, 2017, 8:22pm UTC](https://community.blockcerts.org/t/error-in-cert-issuer-failed-validating-pattern-in-schema/185/2 "2017-06-27T20:22:01Z")

</div>

I apologize; the cert-schema and cert-tools libraries were updated recently (end of last week), and my guess is that your cert-issuer is not using the latest cert-schema version. Can you pull the latest version of cert-issuer?

---

<div class="post-metadata">

### Author: ![vasanth](https://avatars.discourse-cdn.com/v4/letter/v/85e7bf/32.png) [@vasanth](https://community.blockcerts.org/u/vasanth)
#### Post date: [July 26, 2017, 10:35am UTC](https://community.blockcerts.org/t/error-in-cert-issuer-failed-validating-pattern-in-schema/185/3 "2017-07-26T10:35:29Z")

</div>

It works well with the latest version
