Update A Geofence.
- Declared API version
- 1.0.0
- Authentication
- bearer
- Parameters
- 1 · 1 required
- Request fields
- 3 · 0 required
- Responses
- 200 · 400 · 401 · 404
- Server
https://intouch.mapmyindia.com/iot/api- SHA-256
54637441ab0c8ea447e121ba
Compare every retained request and response declaration before moving application traffic between source generations.
No automatic upgrade is implied. This page compares retained contracts and generates an application migration checklist. It makes no provider call and cannot prove entitlement, semantic compatibility, or production readiness.
https://intouch.mapmyindia.com/iot/api54637441ab0c8ea447e121bahttps://intouch.mapmyindia.com/iot/api03d663d784a8ea9af1a3915cNo declared change.
No declared change.
No declared change.
No declared change.
No declared change.
No declared change.
No declared change.
No declared change.
No declared change.
No declared change.
Run both adapters against the same sanitized fixture corpus, then validate the selected generation with the exact entitled account and region.
Confirm the Mappls account is entitled to v2-0-0; source ordering is not availability proof.
Run both retained contract generations against sanitized fixtures and compare application parsing.
Update only declared parameters and request fields; do not infer undocumented aliases.
Exercise authentication rejection, validation, rate-limit, timeout, and unknown-outcome handling.
For state-changing operations, migrate behind an idempotent adapter and reconcile before retry.
Retain the source fingerprints, acceptance evidence, rollback trigger, and previous adapter until approval.
The download pins both exact source fingerprints, projects only target-declared fields, reports dropped fields, detects missing required input, and includes three dependency-free tests. It performs no provider call and contains no credential.
// Structural projection only: add semantic mappings after entitled validation.
const targetParameters=new Set(["path:id"]);
const targetBody=new Set(["buffer","geometry","name"]);
const requiredParameters=["path:id"];
const requiredBody=[];
const project=(source,allowed)=>Object.fromEntries(Object.entries(source??{}).filter(([key])=>allowed.has(key)));
export function adapt(source={}){
const parameters=project(source.parameters,targetParameters);
const body=project(source.body,targetBody);
const missing=[...requiredParameters.filter(key=>parameters[key]==null),...requiredBody.filter(key=>body[key]==null)];
return {target:{parameters,body},missing,dropped:{parameters:Object.keys(source.parameters??{}).filter(key=>!targetParameters.has(key)),body:Object.keys(source.body??{}).filter(key=>!targetBody.has(key))}};
}npm testnpm run inspectField names remain opaque. Implement semantic mappings only after entitled target validation.mappls_get_contract_generation {"slug":"intouch-post-geofence-id-83a7719be5"}mappls://catalog/contract-generations